mirror of
https://github.com/themitosan/fpPS4-Temmie-s-Launcher.git
synced 2025-04-02 10:31:50 -04:00
Lang: Include missing label (fpPS4 Updater: Status), MemoryJS: Update plugin, CSS: Minor changes
This commit is contained in:
parent
41b49a1a78
commit
0a23e825e0
38 changed files with 3549 additions and 162 deletions
|
@ -137,12 +137,12 @@ img {
|
||||||
}
|
}
|
||||||
.DIV_GAME_OPTIONS {
|
.DIV_GAME_OPTIONS {
|
||||||
width: 268px;
|
width: 268px;
|
||||||
bottom: 60px;
|
bottom: 68px;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
height: calc(100% - 120px);
|
height: calc(100% - 128px);
|
||||||
}
|
}
|
||||||
.DIV_HACK_LIST {
|
.DIV_HACK_LIST {
|
||||||
text-align: left;
|
text-align: left;
|
||||||
|
@ -288,8 +288,9 @@ img {
|
||||||
border-radius: 6px 0px 0px 0px;
|
border-radius: 6px 0px 0px 0px;
|
||||||
}
|
}
|
||||||
.DIV_RUN_BTN {
|
.DIV_RUN_BTN {
|
||||||
bottom: 4px;
|
bottom: 8px;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
|
text-align: center;
|
||||||
width: calc(100% - 12px);
|
width: calc(100% - 12px);
|
||||||
}
|
}
|
||||||
.DIV_GAME_DETAILS {
|
.DIV_GAME_DETAILS {
|
||||||
|
@ -590,12 +591,15 @@ img {
|
||||||
background-image: linear-gradient(180deg, #05050ee8, #010114c7);
|
background-image: linear-gradient(180deg, #05050ee8, #010114c7);
|
||||||
}
|
}
|
||||||
.BTN_RUN {
|
.BTN_RUN {
|
||||||
left: 8px;
|
|
||||||
width: 100%;
|
|
||||||
bottom: 18px;
|
|
||||||
height: 50px;
|
height: 50px;
|
||||||
|
border: none;
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
margin-top: 2px;
|
border-radius: 6px;
|
||||||
|
width: calc(100% - 6px);
|
||||||
|
background-image: linear-gradient(180deg, #fff, #ccc);
|
||||||
|
}
|
||||||
|
.BTN_RUN:active {
|
||||||
|
background-image: linear-gradient(0deg, #fff, #ccc);
|
||||||
}
|
}
|
||||||
.BTN_STOP {
|
.BTN_STOP {
|
||||||
margin: 0px 4px 0px 4px;
|
margin: 0px 4px 0px 4px;
|
||||||
|
|
|
@ -55,7 +55,7 @@ temp_LANGUAGE = {
|
||||||
"emuStatusRunning": "Running",
|
"emuStatusRunning": "Running",
|
||||||
"logWindowTitle": "Running fpPS4",
|
"logWindowTitle": "Running fpPS4",
|
||||||
"killEmuStatus": "Main process closed - close fpPS4 log window to go back",
|
"killEmuStatus": "Main process closed - close fpPS4 log window to go back",
|
||||||
"logCleared": "INFO - Previous log was cleared!\n ",
|
"logCleared": "INFO - Previous log was cleared!",
|
||||||
"about": "fpPS4 Temmie\'s Launcher - Version: %VARIABLE_0%\nCreated by TemmieHeartz\n(https://twitter.com/themitosan)\n\nfpPS4 is created by red-prig\n(https://github.com/red-prig/fpPS4)\n\nPlugin memoryjs is created by Rob--\n(https://github.com/rob--/memoryjs)\n\nPlugin node-stream-zip is created by antelle\n(https://github.com/antelle/node-stream-zip)\n\nSVG icons were obtained from https://www.svgrepo.com/",
|
"about": "fpPS4 Temmie\'s Launcher - Version: %VARIABLE_0%\nCreated by TemmieHeartz\n(https://twitter.com/themitosan)\n\nfpPS4 is created by red-prig\n(https://github.com/red-prig/fpPS4)\n\nPlugin memoryjs is created by Rob--\n(https://github.com/rob--/memoryjs)\n\nPlugin node-stream-zip is created by antelle\n(https://github.com/antelle/node-stream-zip)\n\nSVG icons were obtained from https://www.svgrepo.com/",
|
||||||
"mainLog": 'fpPS4 Temmie\'s Launcher - Version: %VARIABLE_0%\nRunning on nw.js (node-webkit) version %VARIABLE_1% [%VARIABLE_2%]',
|
"mainLog": 'fpPS4 Temmie\'s Launcher - Version: %VARIABLE_0%\nRunning on nw.js (node-webkit) version %VARIABLE_1% [%VARIABLE_2%]',
|
||||||
"settingsErrorCreatePath": "ERROR - Unable to create path!\n(%VARIABLE_0%)\n%VARIABLE_1%",
|
"settingsErrorCreatePath": "ERROR - Unable to create path!\n(%VARIABLE_0%)\n%VARIABLE_1%",
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
******************************************************************************
|
******************************************************************************
|
||||||
*/
|
*/
|
||||||
|
|
||||||
var APP = {
|
const APP = {
|
||||||
|
|
||||||
// Import nw modules
|
// Import nw modules
|
||||||
fs: require('fs'),
|
fs: require('fs'),
|
||||||
|
|
10
App/node_modules/memoryjs/.gitignore
generated
vendored
Normal file
10
App/node_modules/memoryjs/.gitignore
generated
vendored
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
build
|
||||||
|
test.js
|
||||||
|
npm-debug.log
|
||||||
|
.vscode
|
||||||
|
.vs
|
||||||
|
node_modules
|
||||||
|
test/vcxproj/Debug
|
||||||
|
test/vcxproj/Release
|
||||||
|
test/*.exe
|
||||||
|
test/.vs
|
10
App/node_modules/memoryjs/.npmignore
generated
vendored
Normal file
10
App/node_modules/memoryjs/.npmignore
generated
vendored
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
build
|
||||||
|
test.js
|
||||||
|
npm-debug.log
|
||||||
|
.vscode
|
||||||
|
.vs
|
||||||
|
node_modules
|
||||||
|
test/vcxproj/Debug
|
||||||
|
test/vcxproj/Release
|
||||||
|
test/*.exe
|
||||||
|
test/.vs
|
117
App/node_modules/memoryjs/README.md
generated
vendored
117
App/node_modules/memoryjs/README.md
generated
vendored
|
@ -25,6 +25,7 @@
|
||||||
|
|
||||||
- List all open processes
|
- List all open processes
|
||||||
- List all modules associated with a process
|
- List all modules associated with a process
|
||||||
|
- Close process/file handles
|
||||||
- Find a specific module within a process
|
- Find a specific module within a process
|
||||||
- Read and write process memory (w/big-endian support)
|
- Read and write process memory (w/big-endian support)
|
||||||
- Read and write buffers (arbitrary structs)
|
- Read and write buffers (arbitrary structs)
|
||||||
|
@ -34,11 +35,11 @@
|
||||||
- Pattern scanning
|
- Pattern scanning
|
||||||
- Execute a function within a process
|
- Execute a function within a process
|
||||||
- Hardware breakpoints (find out what accesses/writes to this address, etc)
|
- Hardware breakpoints (find out what accesses/writes to this address, etc)
|
||||||
- Inject & Unload DLLs
|
- Inject & unload DLLs
|
||||||
|
- Read memory mapped files
|
||||||
|
|
||||||
TODO:
|
TODO:
|
||||||
- WriteFile support (for driver interactions)
|
- WriteFile support (for driver interactions)
|
||||||
- BigInt64 support for memory addresses
|
|
||||||
- Async/await support
|
- Async/await support
|
||||||
|
|
||||||
# Getting Started
|
# Getting Started
|
||||||
|
@ -102,7 +103,7 @@ memoryjs.getProcesses((error, processes) => {});
|
||||||
|
|
||||||
|
|
||||||
// close a process (release handle)
|
// close a process (release handle)
|
||||||
memoryjs.closeProcess(handle);
|
memoryjs.closeHandle(handle);
|
||||||
```
|
```
|
||||||
|
|
||||||
See the [Documentation](#user-content-process-object) section of this README to see what a process object looks like.
|
See the [Documentation](#user-content-process-object) section of this README to see what a process object looks like.
|
||||||
|
@ -135,7 +136,6 @@ See the [Documentation](#user-content-module-object) section of this README to s
|
||||||
- Write buffer to memory
|
- Write buffer to memory
|
||||||
- Fetch memory regions
|
- Fetch memory regions
|
||||||
|
|
||||||
Read from memory:
|
|
||||||
``` javascript
|
``` javascript
|
||||||
// sync: read data type from memory
|
// sync: read data type from memory
|
||||||
const value = memoryjs.readMemory(handle, address, dataType);
|
const value = memoryjs.readMemory(handle, address, dataType);
|
||||||
|
@ -168,6 +168,30 @@ memoryjs.getRegions(handle, (regions) => {});
|
||||||
|
|
||||||
See the [Documentation](#user-content-documentation) section of this README to see what values `dataType` can be.
|
See the [Documentation](#user-content-documentation) section of this README to see what values `dataType` can be.
|
||||||
|
|
||||||
|
## Memory Mapped Files
|
||||||
|
- Open a named file mapping object
|
||||||
|
- Map a view of a file into a specified process
|
||||||
|
- Close handle to the file mapping object
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
// sync: open a named file mapping object
|
||||||
|
const fileHandle = memoryjs.openFileMapping(fileName);
|
||||||
|
|
||||||
|
|
||||||
|
// sync: map entire file into a specified process
|
||||||
|
const baseAddress = memoryjs.mapViewOfFile(processHandle, fileName);
|
||||||
|
|
||||||
|
|
||||||
|
// sync: map portion of a file into a specified process
|
||||||
|
const baseAddress = memoryjs.mapViewOfFile(processHandle, fileName, offset, viewSize, pageProtection);
|
||||||
|
|
||||||
|
|
||||||
|
// sync: close handle to a file mapping object
|
||||||
|
const success = memoryjs.closeHandle(fileHandle);
|
||||||
|
```
|
||||||
|
|
||||||
|
See the [Documentation](#user-content-documentation) section of this README to see details on the parameters and return values for these functions.
|
||||||
|
|
||||||
## Protection
|
## Protection
|
||||||
- Change/set the protection on a region of memory
|
- Change/set the protection on a region of memory
|
||||||
|
|
||||||
|
@ -229,7 +253,7 @@ Click [here](#user-content-function-execution-1) for details about how to format
|
||||||
// sync: inject a DLL
|
// sync: inject a DLL
|
||||||
const success = memoryjs.injectDll(handle, dllPath);
|
const success = memoryjs.injectDll(handle, dllPath);
|
||||||
|
|
||||||
// async: inject a dLL
|
// async: inject a DLL
|
||||||
memoryjs.injectDll(handle, dllPath, (error, success) => {});
|
memoryjs.injectDll(handle, dllPath, (error, success) => {});
|
||||||
|
|
||||||
|
|
||||||
|
@ -257,10 +281,10 @@ memoryjs.unloadDll(handle, moduleName, (error, success) => {});
|
||||||
|
|
||||||
``` javascript
|
``` javascript
|
||||||
// sync: attach debugger
|
// sync: attach debugger
|
||||||
const success = memoryjs.attatchDebugger(processId, exitOnDetatch);
|
const success = memoryjs.attachDebugger(processId, exitOnDetach);
|
||||||
|
|
||||||
// sync: detach debugger
|
// sync: detach debugger
|
||||||
const success = memoryjs.detatchDebugger(processId);
|
const success = memoryjs.detachDebugger(processId);
|
||||||
|
|
||||||
// sync: wait for debug event
|
// sync: wait for debug event
|
||||||
const success = memoryjs.awaitDebugEvent(hardwareRegister, millisTimeout);
|
const success = memoryjs.awaitDebugEvent(hardwareRegister, millisTimeout);
|
||||||
|
@ -338,8 +362,9 @@ When using the write or read functions, the data type (dataType) parameter shoul
|
||||||
|
|
||||||
|
|
||||||
Notes:
|
Notes:
|
||||||
|
- all functions that accept an address also accept the address as a BigInt
|
||||||
- pointer will be 4 bytes in a 32 bit build, and 8 bytes in a 64 bit build.
|
- pointer will be 4 bytes in a 32 bit build, and 8 bytes in a 64 bit build.
|
||||||
- to read in bid-endian mode, append `_BE` to the data type. For example: `memoryjs.DOUBLE_BE`.
|
- to read in big-endian mode, append `_BE` to the data type. For example: `memoryjs.DOUBLE_BE`.
|
||||||
- when writing 64 bit integers (`INT64`, `UINT64`, `INT64_BE`, `UINT64_BE`) you will need to supply a [BigInt](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt). When reading a 64 bit integer, you will receive a BigInt.
|
- when writing 64 bit integers (`INT64`, `UINT64`, `INT64_BE`, `UINT64_BE`) you will need to supply a [BigInt](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt). When reading a 64 bit integer, you will receive a BigInt.
|
||||||
|
|
||||||
These data types are to used to denote the type of data being read or written.
|
These data types are to used to denote the type of data being read or written.
|
||||||
|
@ -354,13 +379,13 @@ memoryjs.writeMemory(handle, address, value + 1n, memoryjs.INT64);
|
||||||
Vector3 is a data structure of three floats:
|
Vector3 is a data structure of three floats:
|
||||||
```javascript
|
```javascript
|
||||||
const vector3 = { x: 0.0, y: 0.0, z: 0.0 };
|
const vector3 = { x: 0.0, y: 0.0, z: 0.0 };
|
||||||
memoryjs.writeMemory(address, vector3);
|
memoryjs.writeMemory(handle, address, vector3, memoryjs.VEC3);
|
||||||
```
|
```
|
||||||
|
|
||||||
Vector4 is a data structure of four floats:
|
Vector4 is a data structure of four floats:
|
||||||
```javascript
|
```javascript
|
||||||
const vector4 = { w: 0.0, x: 0.0, y: 0.0, z: 0.0 };
|
const vector4 = { w: 0.0, x: 0.0, y: 0.0, z: 0.0 };
|
||||||
memoryjs.writeMemory(address, vector4);
|
memoryjs.writeMemory(handle, address, vector4, memoryjs.VEC4);
|
||||||
```
|
```
|
||||||
|
|
||||||
## Generic Structures
|
## Generic Structures
|
||||||
|
@ -426,7 +451,7 @@ infinite loop, it will stop reading if it has not found a null-terminator after
|
||||||
One way to bypass this limitation in the future would be to allow a parameter to let users set the maximum
|
One way to bypass this limitation in the future would be to allow a parameter to let users set the maximum
|
||||||
character count.
|
character count.
|
||||||
|
|
||||||
### Signature Type:
|
### Signature Type
|
||||||
|
|
||||||
When pattern scanning, flags need to be raised for the signature types. The signature type parameter needs to be one of the following:
|
When pattern scanning, flags need to be raised for the signature types. The signature type parameter needs to be one of the following:
|
||||||
|
|
||||||
|
@ -438,6 +463,64 @@ When pattern scanning, flags need to be raised for the signature types. The sign
|
||||||
|
|
||||||
To raise multiple flags, use the bitwise OR operator: `memoryjs.READ | memoryjs.SUBTRACT`.
|
To raise multiple flags, use the bitwise OR operator: `memoryjs.READ | memoryjs.SUBTRACT`.
|
||||||
|
|
||||||
|
## Memory Mapped Files
|
||||||
|
|
||||||
|
The library exposes functions to map obtain a handle to and read a memory mapped file.
|
||||||
|
|
||||||
|
**openFileMapping(fileName)**
|
||||||
|
- *fileName*: name of the file mapping object to be opened
|
||||||
|
- returns: handle to the file mapping object
|
||||||
|
|
||||||
|
Refer to [MSDN's OpenFileMappingA](https://learn.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-openfilemappinga) documentation for more information.
|
||||||
|
|
||||||
|
**mapViewOfFile(processHandle, fileName)**
|
||||||
|
- *processHandle*: the target process to map the file to
|
||||||
|
- *fileHandle*: handle of the file mapping object, obtained by `memoryjs.openFileMapping`
|
||||||
|
- Description: maps the entire file to target process' memory. Page protection defaults to `constants.PAGE_READONLY`.
|
||||||
|
- Returns: the base address of the mapped file
|
||||||
|
|
||||||
|
**mapViewOfFile(processHandle, fileName, offset, viewSize, pageProtection)**
|
||||||
|
- *processHandle*: the target process to map the file to
|
||||||
|
- *fileHandle*: handle of the file mapping object, obtained by `memoryjs.openFileMapping`
|
||||||
|
- *offset* (`number` or `bigint`): the offset from the beginning of the file (has to be multiple of 64KB)
|
||||||
|
- *viewSize* (`number` or `bigint`): the number of bytes to map (if `0`, the entire file will be read, regardless of offset)
|
||||||
|
- *pageProtection*: desired page protection
|
||||||
|
- Description: maps a view of the file to the target process' memory
|
||||||
|
- Returns: the base address of the mapped file
|
||||||
|
|
||||||
|
Refer to [MSDN's MapViewOfFile2](https://learn.microsoft.com/en-us/windows/win32/api/memoryapi/nf-memoryapi-mapviewoffile2) documentation for more information.
|
||||||
|
|
||||||
|
See [Protection Type](#user-content-protection-type) for page protection types.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
We have a process that creates a file mapping:
|
||||||
|
```c++
|
||||||
|
HANDLE fileHandle = CreateFileA("C:\\foo.txt", GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
|
||||||
|
HANDLE fileMappingHandle = CreateFileMappingA(fileHandle, NULL, PAGE_READONLY, 0, 0, "MappedFooFile");
|
||||||
|
```
|
||||||
|
|
||||||
|
We can map the file to a specified target process and read the file with `memoryjs`:
|
||||||
|
```javascript
|
||||||
|
const processObject = memoryjs.openProcess("example.exe");
|
||||||
|
const fileHandle = memoryjs.openFileMapping("MappedFooFile");
|
||||||
|
|
||||||
|
// read entire file
|
||||||
|
const baseAddress = memoryjs.mapViewOfFile(processObject.handle, fileHandle.handle);
|
||||||
|
const data = memoryjs.readMemory(processObject.handle, baseAddress, memoryjs.STR);
|
||||||
|
|
||||||
|
// read 10 bytes after 64KB
|
||||||
|
const baseAddress = memoryjs.mapViewOfFile(processObject.handle, fileHandle.handle, 65536, 10, constants.PAGE_READONLY);
|
||||||
|
const buffer = memoryjs.readBuffer(processObject.handle, baseAddress, 10);
|
||||||
|
const data = buffer.toString();
|
||||||
|
|
||||||
|
const success = memoryjs.closeHandle(fileHandle);
|
||||||
|
```
|
||||||
|
|
||||||
|
If you want to read a memory mapped file without having a target process to map the file to, you can map it to the current Node process with global variable `process.pid`:
|
||||||
|
```javascript
|
||||||
|
const processObject = memoryjs.openProcess(process.pid);
|
||||||
|
```
|
||||||
|
|
||||||
## Function Execution
|
## Function Execution
|
||||||
|
|
||||||
Remote function execution works by building an array of arguments and dynamically generating shellcode that is injected into the target process and executed, for this reason crashes may occur.
|
Remote function execution works by building an array of arguments and dynamically generating shellcode that is injected into the target process and executed, for this reason crashes may occur.
|
||||||
|
@ -519,9 +602,9 @@ To summarise:
|
||||||
- `setHardwareBreakpoint` returns a boolean stating whether the operation as successful
|
- `setHardwareBreakpoint` returns a boolean stating whether the operation as successful
|
||||||
|
|
||||||
For more reading about debugging and hardware breakpoints, checkout the following links:
|
For more reading about debugging and hardware breakpoints, checkout the following links:
|
||||||
- [DebugActiveProcess](https://msdn.microsoft.com/en-us/library/windows/desktop/ms679295(v=vs.85).aspx) - attatching the debugger
|
- [DebugActiveProcess](https://msdn.microsoft.com/en-us/library/windows/desktop/ms679295(v=vs.85).aspx) - attaching the debugger
|
||||||
- [DebugSetProcessKillOnExit](https://docs.microsoft.com/en-us/windows/desktop/api/winbase/nf-winbase-debugsetprocesskillonexit) - kill the process when detatching
|
- [DebugSetProcessKillOnExit](https://docs.microsoft.com/en-us/windows/desktop/api/winbase/nf-winbase-debugsetprocesskillonexit) - kill the process when detaching
|
||||||
- [DebugActiveProcessStop](https://msdn.microsoft.com/en-us/library/windows/desktop/ms679296(v=vs.85).aspx) - detatching the debugger
|
- [DebugActiveProcessStop](https://msdn.microsoft.com/en-us/library/windows/desktop/ms679296(v=vs.85).aspx) - detaching the debugger
|
||||||
- [WaitForDebugEvent](https://msdn.microsoft.com/en-us/library/windows/desktop/ms681423(v=vs.85).aspx) - waiting for the breakpoint to be triggered
|
- [WaitForDebugEvent](https://msdn.microsoft.com/en-us/library/windows/desktop/ms681423(v=vs.85).aspx) - waiting for the breakpoint to be triggered
|
||||||
- [ContinueDebugEvent](https://msdn.microsoft.com/en-us/library/windows/desktop/ms679285(v=vs.85).aspx) - handling the event
|
- [ContinueDebugEvent](https://msdn.microsoft.com/en-us/library/windows/desktop/ms679285(v=vs.85).aspx) - handling the event
|
||||||
|
|
||||||
|
@ -531,8 +614,8 @@ The Debugger wrapper contains these functions you should use:
|
||||||
|
|
||||||
``` javascript
|
``` javascript
|
||||||
class Debugger {
|
class Debugger {
|
||||||
attatch(processId, killOnDetatch = false);
|
attach(processId, killOnDetach = false);
|
||||||
detatch(processId);
|
detach(processId);
|
||||||
setHardwareBreakpoint(processId, address, trigger, dataType);
|
setHardwareBreakpoint(processId, address, trigger, dataType);
|
||||||
removeHardwareBreakpoint(processId, register);
|
removeHardwareBreakpoint(processId, register);
|
||||||
}
|
}
|
||||||
|
@ -569,7 +652,7 @@ hardwareDebugger.on(register, (event) => {
|
||||||
|
|
||||||
### When Manually Debugging:
|
### When Manually Debugging:
|
||||||
|
|
||||||
1. Attatch the debugger
|
1. Attach the debugger
|
||||||
``` javascript
|
``` javascript
|
||||||
const hardwareDebugger = memoryjs.Debugger;
|
const hardwareDebugger = memoryjs.Debugger;
|
||||||
hardwareDebugger.attach(processId);
|
hardwareDebugger.attach(processId);
|
||||||
|
|
BIN
App/node_modules/memoryjs/build/Release/memoryjs.node
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/memoryjs.node
generated
vendored
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/memoryjs.pdb
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/memoryjs.pdb
generated
vendored
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/debugger.obj
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/debugger.obj
generated
vendored
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/functions.obj
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/functions.obj
generated
vendored
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memory.obj
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memory.obj
generated
vendored
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.obj
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.obj
generated
vendored
Binary file not shown.
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.tlog/clang-cl.command.1.tlog
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.tlog/clang-cl.command.1.tlog
generated
vendored
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.tlog/clang-cl.read.1.tlog
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.tlog/clang-cl.read.1.tlog
generated
vendored
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.tlog/lld-link.command.1.tlog
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.tlog/lld-link.command.1.tlog
generated
vendored
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.tlog/lld-link.read.1.tlog
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.tlog/lld-link.read.1.tlog
generated
vendored
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.tlog/lld-link.write.1.tlog
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.tlog/lld-link.write.1.tlog
generated
vendored
Binary file not shown.
|
@ -1,2 +1,2 @@
|
||||||
#TargetFrameworkVersion=v4.0:PlatformToolSet=v141:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native64Bit:WindowsTargetPlatformVersion=10.0.17763.0
|
#TargetFrameworkVersion=v4.0:PlatformToolSet=v141:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native64Bit:WindowsTargetPlatformVersion=10.0.17763.0
|
||||||
Release|x64|C:\Users\TemmieHeartz\Desktop\teste\node_modules\memoryjs\build\|
|
Release|x64|C:\Users\TemmieHeartz\Desktop\memoryjs\build\|
|
||||||
|
|
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.tlog/memoryjs.write.1u.tlog
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/memoryjs.tlog/memoryjs.write.1u.tlog
generated
vendored
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/module.obj
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/module.obj
generated
vendored
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/pattern.obj
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/pattern.obj
generated
vendored
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/process.obj
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/process.obj
generated
vendored
Binary file not shown.
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/win_delay_load_hook.obj
generated
vendored
BIN
App/node_modules/memoryjs/build/Release/obj/memoryjs/win_delay_load_hook.obj
generated
vendored
Binary file not shown.
10
App/node_modules/memoryjs/build/binding.sln
generated
vendored
10
App/node_modules/memoryjs/build/binding.sln
generated
vendored
|
@ -1,6 +1,6 @@
|
||||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
# Visual Studio 2015
|
# Visual Studio 2015
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "memoryjs", "memoryjs.vcxproj", "{4CE2F0D5-2C15-0CB7-9DCE-6BDE0CB7A351}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "memoryjs", "memoryjs.vcxproj", "{FA64D7D0-E6BD-17F1-3308-0B2F6267B059}"
|
||||||
EndProject
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
@ -8,10 +8,10 @@ Global
|
||||||
Debug|x64 = Debug|x64
|
Debug|x64 = Debug|x64
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
{4CE2F0D5-2C15-0CB7-9DCE-6BDE0CB7A351}.Release|x64.ActiveCfg = Release|x64
|
{FA64D7D0-E6BD-17F1-3308-0B2F6267B059}.Release|x64.ActiveCfg = Release|x64
|
||||||
{4CE2F0D5-2C15-0CB7-9DCE-6BDE0CB7A351}.Release|x64.Build.0 = Release|x64
|
{FA64D7D0-E6BD-17F1-3308-0B2F6267B059}.Release|x64.Build.0 = Release|x64
|
||||||
{4CE2F0D5-2C15-0CB7-9DCE-6BDE0CB7A351}.Debug|x64.ActiveCfg = Debug|x64
|
{FA64D7D0-E6BD-17F1-3308-0B2F6267B059}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{4CE2F0D5-2C15-0CB7-9DCE-6BDE0CB7A351}.Debug|x64.Build.0 = Debug|x64
|
{FA64D7D0-E6BD-17F1-3308-0B2F6267B059}.Debug|x64.Build.0 = Debug|x64
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
|
319
App/node_modules/memoryjs/build/config.gypi
generated
vendored
319
App/node_modules/memoryjs/build/config.gypi
generated
vendored
|
@ -11,7 +11,6 @@
|
||||||
},
|
},
|
||||||
"variables": {
|
"variables": {
|
||||||
"asan": 0,
|
"asan": 0,
|
||||||
"build_v8_with_gn": "false",
|
|
||||||
"coverage": "false",
|
"coverage": "false",
|
||||||
"dcheck_always_on": 0,
|
"dcheck_always_on": 0,
|
||||||
"debug_nghttp2": "false",
|
"debug_nghttp2": "false",
|
||||||
|
@ -22,20 +21,317 @@
|
||||||
"error_on_warn": "false",
|
"error_on_warn": "false",
|
||||||
"force_dynamic_crt": 0,
|
"force_dynamic_crt": 0,
|
||||||
"host_arch": "x64",
|
"host_arch": "x64",
|
||||||
"icu_data_in": "..\\..\\deps\\icu-tmp\\icudt67l.dat",
|
"icu_data_in": "..\\..\\deps\\icu-tmp\\icudt71l.dat",
|
||||||
"icu_endianness": "l",
|
"icu_endianness": "l",
|
||||||
"icu_gyp_path": "tools/icu/icu-generic.gyp",
|
"icu_gyp_path": "tools/icu/icu-generic.gyp",
|
||||||
"icu_path": "deps/icu-small",
|
"icu_path": "deps/icu-small",
|
||||||
"icu_small": "false",
|
"icu_small": "false",
|
||||||
"icu_ver_major": "67",
|
"icu_ver_major": "71",
|
||||||
"is_debug": 0,
|
"is_debug": 0,
|
||||||
"napi_build_version": "7",
|
"libdir": "lib",
|
||||||
"nasm_version": "2.14",
|
"llvm_version": "0.0",
|
||||||
|
"napi_build_version": "8",
|
||||||
|
"nasm_version": "2.15",
|
||||||
"node_byteorder": "little",
|
"node_byteorder": "little",
|
||||||
"node_debug_lib": "false",
|
"node_debug_lib": "false",
|
||||||
"node_enable_d8": "false",
|
"node_enable_d8": "false",
|
||||||
|
"node_fipsinstall": "false",
|
||||||
|
"node_install_corepack": "true",
|
||||||
"node_install_npm": "true",
|
"node_install_npm": "true",
|
||||||
"node_module_version": 83,
|
"node_library_files": [
|
||||||
|
"lib/_http_agent.js",
|
||||||
|
"lib/_http_client.js",
|
||||||
|
"lib/_http_common.js",
|
||||||
|
"lib/_http_incoming.js",
|
||||||
|
"lib/_http_outgoing.js",
|
||||||
|
"lib/_http_server.js",
|
||||||
|
"lib/_stream_duplex.js",
|
||||||
|
"lib/_stream_passthrough.js",
|
||||||
|
"lib/_stream_readable.js",
|
||||||
|
"lib/_stream_transform.js",
|
||||||
|
"lib/_stream_wrap.js",
|
||||||
|
"lib/_stream_writable.js",
|
||||||
|
"lib/_tls_common.js",
|
||||||
|
"lib/_tls_wrap.js",
|
||||||
|
"lib/assert.js",
|
||||||
|
"lib/assert/strict.js",
|
||||||
|
"lib/async_hooks.js",
|
||||||
|
"lib/buffer.js",
|
||||||
|
"lib/child_process.js",
|
||||||
|
"lib/cluster.js",
|
||||||
|
"lib/console.js",
|
||||||
|
"lib/constants.js",
|
||||||
|
"lib/crypto.js",
|
||||||
|
"lib/dgram.js",
|
||||||
|
"lib/diagnostics_channel.js",
|
||||||
|
"lib/dns.js",
|
||||||
|
"lib/dns/promises.js",
|
||||||
|
"lib/domain.js",
|
||||||
|
"lib/events.js",
|
||||||
|
"lib/fs.js",
|
||||||
|
"lib/fs/promises.js",
|
||||||
|
"lib/http.js",
|
||||||
|
"lib/http2.js",
|
||||||
|
"lib/https.js",
|
||||||
|
"lib/inspector.js",
|
||||||
|
"lib/internal/abort_controller.js",
|
||||||
|
"lib/internal/assert.js",
|
||||||
|
"lib/internal/assert/assertion_error.js",
|
||||||
|
"lib/internal/assert/calltracker.js",
|
||||||
|
"lib/internal/assert/snapshot.js",
|
||||||
|
"lib/internal/async_hooks.js",
|
||||||
|
"lib/internal/blob.js",
|
||||||
|
"lib/internal/blocklist.js",
|
||||||
|
"lib/internal/bootstrap/browser.js",
|
||||||
|
"lib/internal/bootstrap/loaders.js",
|
||||||
|
"lib/internal/bootstrap/node.js",
|
||||||
|
"lib/internal/bootstrap/switches/does_not_own_process_state.js",
|
||||||
|
"lib/internal/bootstrap/switches/does_own_process_state.js",
|
||||||
|
"lib/internal/bootstrap/switches/is_main_thread.js",
|
||||||
|
"lib/internal/bootstrap/switches/is_not_main_thread.js",
|
||||||
|
"lib/internal/buffer.js",
|
||||||
|
"lib/internal/child_process.js",
|
||||||
|
"lib/internal/child_process/serialization.js",
|
||||||
|
"lib/internal/cli_table.js",
|
||||||
|
"lib/internal/cluster/child.js",
|
||||||
|
"lib/internal/cluster/primary.js",
|
||||||
|
"lib/internal/cluster/round_robin_handle.js",
|
||||||
|
"lib/internal/cluster/shared_handle.js",
|
||||||
|
"lib/internal/cluster/utils.js",
|
||||||
|
"lib/internal/cluster/worker.js",
|
||||||
|
"lib/internal/console/constructor.js",
|
||||||
|
"lib/internal/console/global.js",
|
||||||
|
"lib/internal/constants.js",
|
||||||
|
"lib/internal/crypto/aes.js",
|
||||||
|
"lib/internal/crypto/certificate.js",
|
||||||
|
"lib/internal/crypto/cfrg.js",
|
||||||
|
"lib/internal/crypto/cipher.js",
|
||||||
|
"lib/internal/crypto/diffiehellman.js",
|
||||||
|
"lib/internal/crypto/ec.js",
|
||||||
|
"lib/internal/crypto/hash.js",
|
||||||
|
"lib/internal/crypto/hashnames.js",
|
||||||
|
"lib/internal/crypto/hkdf.js",
|
||||||
|
"lib/internal/crypto/keygen.js",
|
||||||
|
"lib/internal/crypto/keys.js",
|
||||||
|
"lib/internal/crypto/mac.js",
|
||||||
|
"lib/internal/crypto/pbkdf2.js",
|
||||||
|
"lib/internal/crypto/random.js",
|
||||||
|
"lib/internal/crypto/rsa.js",
|
||||||
|
"lib/internal/crypto/scrypt.js",
|
||||||
|
"lib/internal/crypto/sig.js",
|
||||||
|
"lib/internal/crypto/util.js",
|
||||||
|
"lib/internal/crypto/webcrypto.js",
|
||||||
|
"lib/internal/crypto/x509.js",
|
||||||
|
"lib/internal/debugger/inspect.js",
|
||||||
|
"lib/internal/debugger/inspect_client.js",
|
||||||
|
"lib/internal/debugger/inspect_repl.js",
|
||||||
|
"lib/internal/dgram.js",
|
||||||
|
"lib/internal/dns/callback_resolver.js",
|
||||||
|
"lib/internal/dns/promises.js",
|
||||||
|
"lib/internal/dns/utils.js",
|
||||||
|
"lib/internal/dtrace.js",
|
||||||
|
"lib/internal/encoding.js",
|
||||||
|
"lib/internal/error_serdes.js",
|
||||||
|
"lib/internal/errors.js",
|
||||||
|
"lib/internal/event_target.js",
|
||||||
|
"lib/internal/fixed_queue.js",
|
||||||
|
"lib/internal/freelist.js",
|
||||||
|
"lib/internal/freeze_intrinsics.js",
|
||||||
|
"lib/internal/fs/cp/cp-sync.js",
|
||||||
|
"lib/internal/fs/cp/cp.js",
|
||||||
|
"lib/internal/fs/dir.js",
|
||||||
|
"lib/internal/fs/promises.js",
|
||||||
|
"lib/internal/fs/read_file_context.js",
|
||||||
|
"lib/internal/fs/rimraf.js",
|
||||||
|
"lib/internal/fs/streams.js",
|
||||||
|
"lib/internal/fs/sync_write_stream.js",
|
||||||
|
"lib/internal/fs/utils.js",
|
||||||
|
"lib/internal/fs/watchers.js",
|
||||||
|
"lib/internal/heap_utils.js",
|
||||||
|
"lib/internal/histogram.js",
|
||||||
|
"lib/internal/http.js",
|
||||||
|
"lib/internal/http2/compat.js",
|
||||||
|
"lib/internal/http2/core.js",
|
||||||
|
"lib/internal/http2/util.js",
|
||||||
|
"lib/internal/idna.js",
|
||||||
|
"lib/internal/inspector_async_hook.js",
|
||||||
|
"lib/internal/js_stream_socket.js",
|
||||||
|
"lib/internal/legacy/processbinding.js",
|
||||||
|
"lib/internal/linkedlist.js",
|
||||||
|
"lib/internal/main/check_syntax.js",
|
||||||
|
"lib/internal/main/environment.js",
|
||||||
|
"lib/internal/main/eval_stdin.js",
|
||||||
|
"lib/internal/main/eval_string.js",
|
||||||
|
"lib/internal/main/inspect.js",
|
||||||
|
"lib/internal/main/mksnapshot.js",
|
||||||
|
"lib/internal/main/print_help.js",
|
||||||
|
"lib/internal/main/prof_process.js",
|
||||||
|
"lib/internal/main/repl.js",
|
||||||
|
"lib/internal/main/run_main_module.js",
|
||||||
|
"lib/internal/main/test_runner.js",
|
||||||
|
"lib/internal/main/watch_mode.js",
|
||||||
|
"lib/internal/main/worker_thread.js",
|
||||||
|
"lib/internal/modules/cjs/helpers.js",
|
||||||
|
"lib/internal/modules/cjs/loader.js",
|
||||||
|
"lib/internal/modules/esm/assert.js",
|
||||||
|
"lib/internal/modules/esm/create_dynamic_module.js",
|
||||||
|
"lib/internal/modules/esm/fetch_module.js",
|
||||||
|
"lib/internal/modules/esm/formats.js",
|
||||||
|
"lib/internal/modules/esm/get_format.js",
|
||||||
|
"lib/internal/modules/esm/handle_process_exit.js",
|
||||||
|
"lib/internal/modules/esm/initialize_import_meta.js",
|
||||||
|
"lib/internal/modules/esm/load.js",
|
||||||
|
"lib/internal/modules/esm/loader.js",
|
||||||
|
"lib/internal/modules/esm/module_job.js",
|
||||||
|
"lib/internal/modules/esm/module_map.js",
|
||||||
|
"lib/internal/modules/esm/package_config.js",
|
||||||
|
"lib/internal/modules/esm/resolve.js",
|
||||||
|
"lib/internal/modules/esm/translators.js",
|
||||||
|
"lib/internal/modules/package_json_reader.js",
|
||||||
|
"lib/internal/modules/run_main.js",
|
||||||
|
"lib/internal/net.js",
|
||||||
|
"lib/internal/options.js",
|
||||||
|
"lib/internal/per_context/domexception.js",
|
||||||
|
"lib/internal/per_context/messageport.js",
|
||||||
|
"lib/internal/per_context/primordials.js",
|
||||||
|
"lib/internal/perf/event_loop_delay.js",
|
||||||
|
"lib/internal/perf/event_loop_utilization.js",
|
||||||
|
"lib/internal/perf/nodetiming.js",
|
||||||
|
"lib/internal/perf/observe.js",
|
||||||
|
"lib/internal/perf/performance.js",
|
||||||
|
"lib/internal/perf/performance_entry.js",
|
||||||
|
"lib/internal/perf/resource_timing.js",
|
||||||
|
"lib/internal/perf/timerify.js",
|
||||||
|
"lib/internal/perf/usertiming.js",
|
||||||
|
"lib/internal/perf/utils.js",
|
||||||
|
"lib/internal/policy/manifest.js",
|
||||||
|
"lib/internal/policy/sri.js",
|
||||||
|
"lib/internal/priority_queue.js",
|
||||||
|
"lib/internal/process/esm_loader.js",
|
||||||
|
"lib/internal/process/execution.js",
|
||||||
|
"lib/internal/process/per_thread.js",
|
||||||
|
"lib/internal/process/policy.js",
|
||||||
|
"lib/internal/process/pre_execution.js",
|
||||||
|
"lib/internal/process/promises.js",
|
||||||
|
"lib/internal/process/report.js",
|
||||||
|
"lib/internal/process/signal.js",
|
||||||
|
"lib/internal/process/task_queues.js",
|
||||||
|
"lib/internal/process/warning.js",
|
||||||
|
"lib/internal/process/worker_thread_only.js",
|
||||||
|
"lib/internal/promise_hooks.js",
|
||||||
|
"lib/internal/querystring.js",
|
||||||
|
"lib/internal/readline/callbacks.js",
|
||||||
|
"lib/internal/readline/emitKeypressEvents.js",
|
||||||
|
"lib/internal/readline/interface.js",
|
||||||
|
"lib/internal/readline/promises.js",
|
||||||
|
"lib/internal/readline/utils.js",
|
||||||
|
"lib/internal/repl.js",
|
||||||
|
"lib/internal/repl/await.js",
|
||||||
|
"lib/internal/repl/history.js",
|
||||||
|
"lib/internal/repl/utils.js",
|
||||||
|
"lib/internal/socket_list.js",
|
||||||
|
"lib/internal/socketaddress.js",
|
||||||
|
"lib/internal/source_map/prepare_stack_trace.js",
|
||||||
|
"lib/internal/source_map/source_map.js",
|
||||||
|
"lib/internal/source_map/source_map_cache.js",
|
||||||
|
"lib/internal/stream_base_commons.js",
|
||||||
|
"lib/internal/streams/add-abort-signal.js",
|
||||||
|
"lib/internal/streams/buffer_list.js",
|
||||||
|
"lib/internal/streams/compose.js",
|
||||||
|
"lib/internal/streams/destroy.js",
|
||||||
|
"lib/internal/streams/duplex.js",
|
||||||
|
"lib/internal/streams/duplexify.js",
|
||||||
|
"lib/internal/streams/end-of-stream.js",
|
||||||
|
"lib/internal/streams/from.js",
|
||||||
|
"lib/internal/streams/lazy_transform.js",
|
||||||
|
"lib/internal/streams/legacy.js",
|
||||||
|
"lib/internal/streams/operators.js",
|
||||||
|
"lib/internal/streams/passthrough.js",
|
||||||
|
"lib/internal/streams/pipeline.js",
|
||||||
|
"lib/internal/streams/readable.js",
|
||||||
|
"lib/internal/streams/state.js",
|
||||||
|
"lib/internal/streams/transform.js",
|
||||||
|
"lib/internal/streams/utils.js",
|
||||||
|
"lib/internal/streams/writable.js",
|
||||||
|
"lib/internal/structured_clone.js",
|
||||||
|
"lib/internal/test/binding.js",
|
||||||
|
"lib/internal/test/transfer.js",
|
||||||
|
"lib/internal/test_runner/harness.js",
|
||||||
|
"lib/internal/test_runner/runner.js",
|
||||||
|
"lib/internal/test_runner/tap_stream.js",
|
||||||
|
"lib/internal/test_runner/test.js",
|
||||||
|
"lib/internal/test_runner/utils.js",
|
||||||
|
"lib/internal/timers.js",
|
||||||
|
"lib/internal/tls/secure-context.js",
|
||||||
|
"lib/internal/tls/secure-pair.js",
|
||||||
|
"lib/internal/trace_events_async_hooks.js",
|
||||||
|
"lib/internal/tty.js",
|
||||||
|
"lib/internal/url.js",
|
||||||
|
"lib/internal/util.js",
|
||||||
|
"lib/internal/util/colors.js",
|
||||||
|
"lib/internal/util/comparisons.js",
|
||||||
|
"lib/internal/util/debuglog.js",
|
||||||
|
"lib/internal/util/inspect.js",
|
||||||
|
"lib/internal/util/inspector.js",
|
||||||
|
"lib/internal/util/iterable_weak_map.js",
|
||||||
|
"lib/internal/util/parse_args/parse_args.js",
|
||||||
|
"lib/internal/util/parse_args/utils.js",
|
||||||
|
"lib/internal/util/types.js",
|
||||||
|
"lib/internal/v8/startup_snapshot.js",
|
||||||
|
"lib/internal/v8_prof_polyfill.js",
|
||||||
|
"lib/internal/v8_prof_processor.js",
|
||||||
|
"lib/internal/validators.js",
|
||||||
|
"lib/internal/vm/module.js",
|
||||||
|
"lib/internal/wasm_web_api.js",
|
||||||
|
"lib/internal/watch_mode/files_watcher.js",
|
||||||
|
"lib/internal/watchdog.js",
|
||||||
|
"lib/internal/webstreams/adapters.js",
|
||||||
|
"lib/internal/webstreams/compression.js",
|
||||||
|
"lib/internal/webstreams/encoding.js",
|
||||||
|
"lib/internal/webstreams/queuingstrategies.js",
|
||||||
|
"lib/internal/webstreams/readablestream.js",
|
||||||
|
"lib/internal/webstreams/transfer.js",
|
||||||
|
"lib/internal/webstreams/transformstream.js",
|
||||||
|
"lib/internal/webstreams/util.js",
|
||||||
|
"lib/internal/webstreams/writablestream.js",
|
||||||
|
"lib/internal/worker.js",
|
||||||
|
"lib/internal/worker/io.js",
|
||||||
|
"lib/internal/worker/js_transferable.js",
|
||||||
|
"lib/module.js",
|
||||||
|
"lib/net.js",
|
||||||
|
"lib/os.js",
|
||||||
|
"lib/path.js",
|
||||||
|
"lib/path/posix.js",
|
||||||
|
"lib/path/win32.js",
|
||||||
|
"lib/perf_hooks.js",
|
||||||
|
"lib/process.js",
|
||||||
|
"lib/punycode.js",
|
||||||
|
"lib/querystring.js",
|
||||||
|
"lib/readline.js",
|
||||||
|
"lib/readline/promises.js",
|
||||||
|
"lib/repl.js",
|
||||||
|
"lib/stream.js",
|
||||||
|
"lib/stream/consumers.js",
|
||||||
|
"lib/stream/promises.js",
|
||||||
|
"lib/stream/web.js",
|
||||||
|
"lib/string_decoder.js",
|
||||||
|
"lib/sys.js",
|
||||||
|
"lib/test.js",
|
||||||
|
"lib/timers.js",
|
||||||
|
"lib/timers/promises.js",
|
||||||
|
"lib/tls.js",
|
||||||
|
"lib/trace_events.js",
|
||||||
|
"lib/tty.js",
|
||||||
|
"lib/url.js",
|
||||||
|
"lib/util.js",
|
||||||
|
"lib/util/types.js",
|
||||||
|
"lib/v8.js",
|
||||||
|
"lib/vm.js",
|
||||||
|
"lib/wasi.js",
|
||||||
|
"lib/worker_threads.js",
|
||||||
|
"lib/zlib.js"
|
||||||
|
],
|
||||||
|
"node_module_version": 108,
|
||||||
"node_no_browser_globals": "false",
|
"node_no_browser_globals": "false",
|
||||||
"node_prefix": "/usr/local",
|
"node_prefix": "/usr/local",
|
||||||
"node_release_urlbase": "https://nodejs.org/download/release/",
|
"node_release_urlbase": "https://nodejs.org/download/release/",
|
||||||
|
@ -45,6 +341,8 @@
|
||||||
"node_shared_http_parser": "false",
|
"node_shared_http_parser": "false",
|
||||||
"node_shared_libuv": "false",
|
"node_shared_libuv": "false",
|
||||||
"node_shared_nghttp2": "false",
|
"node_shared_nghttp2": "false",
|
||||||
|
"node_shared_nghttp3": "false",
|
||||||
|
"node_shared_ngtcp2": "false",
|
||||||
"node_shared_openssl": "false",
|
"node_shared_openssl": "false",
|
||||||
"node_shared_zlib": "false",
|
"node_shared_zlib": "false",
|
||||||
"node_tag": "",
|
"node_tag": "",
|
||||||
|
@ -58,18 +356,23 @@
|
||||||
"node_use_v8_platform": "true",
|
"node_use_v8_platform": "true",
|
||||||
"node_with_ltcg": "true",
|
"node_with_ltcg": "true",
|
||||||
"node_without_node_options": "false",
|
"node_without_node_options": "false",
|
||||||
"openssl_fips": "",
|
|
||||||
"openssl_is_fips": "false",
|
"openssl_is_fips": "false",
|
||||||
|
"openssl_quic": "true",
|
||||||
"ossfuzz": "false",
|
"ossfuzz": "false",
|
||||||
"shlib_suffix": "so.83",
|
"shlib_suffix": "so.108",
|
||||||
"target_arch": "x64",
|
"target_arch": "x64",
|
||||||
"v8_enable_31bit_smis_on_64bit_arch": 0,
|
"v8_enable_31bit_smis_on_64bit_arch": 0,
|
||||||
"v8_enable_gdbjit": 0,
|
"v8_enable_gdbjit": 0,
|
||||||
|
"v8_enable_hugepage": 0,
|
||||||
"v8_enable_i18n_support": 1,
|
"v8_enable_i18n_support": 1,
|
||||||
"v8_enable_inspector": 1,
|
"v8_enable_inspector": 1,
|
||||||
|
"v8_enable_javascript_promise_hooks": 1,
|
||||||
"v8_enable_lite_mode": 0,
|
"v8_enable_lite_mode": 0,
|
||||||
"v8_enable_object_print": 1,
|
"v8_enable_object_print": 1,
|
||||||
"v8_enable_pointer_compression": 0,
|
"v8_enable_pointer_compression": 0,
|
||||||
|
"v8_enable_shared_ro_heap": 1,
|
||||||
|
"v8_enable_short_builtin_calls": 1,
|
||||||
|
"v8_enable_webassembly": 1,
|
||||||
"v8_no_strict_aliasing": 1,
|
"v8_no_strict_aliasing": 1,
|
||||||
"v8_optimized_debug": 1,
|
"v8_optimized_debug": 1,
|
||||||
"v8_promise_internal_field_count": 1,
|
"v8_promise_internal_field_count": 1,
|
||||||
|
|
18
App/node_modules/memoryjs/build/memoryjs.vcxproj
generated
vendored
18
App/node_modules/memoryjs/build/memoryjs.vcxproj
generated
vendored
|
@ -19,7 +19,7 @@
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<PropertyGroup Label="Globals">
|
<PropertyGroup Label="Globals">
|
||||||
<ProjectGuid>{4CE2F0D5-2C15-0CB7-9DCE-6BDE0CB7A351}</ProjectGuid>
|
<ProjectGuid>{FA64D7D0-E6BD-17F1-3308-0B2F6267B059}</ProjectGuid>
|
||||||
<Keyword>Win32Proj</Keyword>
|
<Keyword>Win32Proj</Keyword>
|
||||||
<RootNamespace>memoryjs</RootNamespace>
|
<RootNamespace>memoryjs</RootNamespace>
|
||||||
<IgnoreWarnCompileDuplicatedFilename>true</IgnoreWarnCompileDuplicatedFilename>
|
<IgnoreWarnCompileDuplicatedFilename>true</IgnoreWarnCompileDuplicatedFilename>
|
||||||
|
@ -60,7 +60,7 @@
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\teste\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\memoryjs\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<AdditionalOptions>/Zc:__cplusplus -std:c++17 /bigobj /d2FastFail /Zc:dllexportInlines- /Zc:sizedDealloc- /Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions>
|
<AdditionalOptions>/Zc:__cplusplus -std:c++17 /bigobj /d2FastFail /Zc:dllexportInlines- /Zc:sizedDealloc- /Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions>
|
||||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||||
<CompileAsWinRT>false</CompileAsWinRT>
|
<CompileAsWinRT>false</CompileAsWinRT>
|
||||||
|
@ -90,13 +90,13 @@
|
||||||
<TargetMachine>MachineX64</TargetMachine>
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
</Link>
|
</Link>
|
||||||
<ResourceCompile>
|
<ResourceCompile>
|
||||||
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\teste\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\memoryjs\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions>NODE_GYP_MODULE_NAME=memoryjs;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;V8_DEPRECATION_WARNINGS;V8_REVERSE_JSARGS;_GLIBCXX_USE_CXX11_ABI=1;_LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS;V8_COMPRESS_POINTERS;V8_COMPRESS_POINTERS_IN_ISOLATE_CAGE;V8_VIRTUAL_MEMORY_CAGE;V8_31BIT_SMIS_ON_64BIT_ARCH;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=1;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;OPENSSL_NO_ASM;NAPI_DISABLE_CPP_EXCEPTIONS;BUILDING_NODE_EXTENSION;DEBUG;_DEBUG;V8_ENABLE_CHECKS;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>NODE_GYP_MODULE_NAME=memoryjs;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;V8_DEPRECATION_WARNINGS;V8_REVERSE_JSARGS;_GLIBCXX_USE_CXX11_ABI=1;_LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS;V8_COMPRESS_POINTERS;V8_COMPRESS_POINTERS_IN_ISOLATE_CAGE;V8_VIRTUAL_MEMORY_CAGE;V8_31BIT_SMIS_ON_64BIT_ARCH;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=1;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;OPENSSL_NO_ASM;NAPI_DISABLE_CPP_EXCEPTIONS;BUILDING_NODE_EXTENSION;DEBUG;_DEBUG;V8_ENABLE_CHECKS;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ResourceCompile>
|
</ResourceCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\teste\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\memoryjs\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<AdditionalOptions>/Zc:__cplusplus -std:c++17 /bigobj /d2FastFail /Zc:dllexportInlines- /Zc:sizedDealloc- /Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions>
|
<AdditionalOptions>/Zc:__cplusplus -std:c++17 /bigobj /d2FastFail /Zc:dllexportInlines- /Zc:sizedDealloc- /Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions>
|
||||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||||
<CompileAsWinRT>false</CompileAsWinRT>
|
<CompileAsWinRT>false</CompileAsWinRT>
|
||||||
|
@ -126,13 +126,13 @@
|
||||||
<TargetMachine>MachineX64</TargetMachine>
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
</Link>
|
</Link>
|
||||||
<ResourceCompile>
|
<ResourceCompile>
|
||||||
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\teste\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\memoryjs\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions>NODE_GYP_MODULE_NAME=memoryjs;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;V8_DEPRECATION_WARNINGS;V8_REVERSE_JSARGS;_GLIBCXX_USE_CXX11_ABI=1;_LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS;V8_COMPRESS_POINTERS;V8_COMPRESS_POINTERS_IN_ISOLATE_CAGE;V8_VIRTUAL_MEMORY_CAGE;V8_31BIT_SMIS_ON_64BIT_ARCH;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=1;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;OPENSSL_NO_ASM;NAPI_DISABLE_CPP_EXCEPTIONS;BUILDING_NODE_EXTENSION;DEBUG;_DEBUG;V8_ENABLE_CHECKS;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>NODE_GYP_MODULE_NAME=memoryjs;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;V8_DEPRECATION_WARNINGS;V8_REVERSE_JSARGS;_GLIBCXX_USE_CXX11_ABI=1;_LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS;V8_COMPRESS_POINTERS;V8_COMPRESS_POINTERS_IN_ISOLATE_CAGE;V8_VIRTUAL_MEMORY_CAGE;V8_31BIT_SMIS_ON_64BIT_ARCH;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=1;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;OPENSSL_NO_ASM;NAPI_DISABLE_CPP_EXCEPTIONS;BUILDING_NODE_EXTENSION;DEBUG;_DEBUG;V8_ENABLE_CHECKS;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ResourceCompile>
|
</ResourceCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\teste\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\memoryjs\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<AdditionalOptions>/Zc:__cplusplus -std:c++17 /bigobj /d2FastFail /Zc:dllexportInlines- /Zc:sizedDealloc- /Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions>
|
<AdditionalOptions>/Zc:__cplusplus -std:c++17 /bigobj /d2FastFail /Zc:dllexportInlines- /Zc:sizedDealloc- /Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions>
|
||||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||||
<CompileAsWinRT>false</CompileAsWinRT>
|
<CompileAsWinRT>false</CompileAsWinRT>
|
||||||
|
@ -166,13 +166,13 @@
|
||||||
<TargetMachine>MachineX64</TargetMachine>
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
</Link>
|
</Link>
|
||||||
<ResourceCompile>
|
<ResourceCompile>
|
||||||
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\teste\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\memoryjs\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions>NODE_GYP_MODULE_NAME=memoryjs;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;V8_DEPRECATION_WARNINGS;V8_REVERSE_JSARGS;_GLIBCXX_USE_CXX11_ABI=1;_LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS;V8_COMPRESS_POINTERS;V8_COMPRESS_POINTERS_IN_ISOLATE_CAGE;V8_VIRTUAL_MEMORY_CAGE;V8_31BIT_SMIS_ON_64BIT_ARCH;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=1;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;OPENSSL_NO_ASM;NAPI_DISABLE_CPP_EXCEPTIONS;BUILDING_NODE_EXTENSION;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>NODE_GYP_MODULE_NAME=memoryjs;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;V8_DEPRECATION_WARNINGS;V8_REVERSE_JSARGS;_GLIBCXX_USE_CXX11_ABI=1;_LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS;V8_COMPRESS_POINTERS;V8_COMPRESS_POINTERS_IN_ISOLATE_CAGE;V8_VIRTUAL_MEMORY_CAGE;V8_31BIT_SMIS_ON_64BIT_ARCH;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=1;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;OPENSSL_NO_ASM;NAPI_DISABLE_CPP_EXCEPTIONS;BUILDING_NODE_EXTENSION;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ResourceCompile>
|
</ResourceCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\teste\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\memoryjs\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<AdditionalOptions>/Zc:__cplusplus -std:c++17 /bigobj /d2FastFail /Zc:dllexportInlines- /Zc:sizedDealloc- /Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions>
|
<AdditionalOptions>/Zc:__cplusplus -std:c++17 /bigobj /d2FastFail /Zc:dllexportInlines- /Zc:sizedDealloc- /Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions>
|
||||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||||
<CompileAsWinRT>false</CompileAsWinRT>
|
<CompileAsWinRT>false</CompileAsWinRT>
|
||||||
|
@ -206,7 +206,7 @@
|
||||||
<TargetMachine>MachineX64</TargetMachine>
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
</Link>
|
</Link>
|
||||||
<ResourceCompile>
|
<ResourceCompile>
|
||||||
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\teste\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>C:\Users\TemmieHeartz\.nw-gyp\0.70.1\include\node;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\src;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\uv\include;C:\Users\TemmieHeartz\.nw-gyp\0.70.1\deps\v8\include;C:\Users\TemmieHeartz\Desktop\memoryjs\node_modules\node-addon-api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions>NODE_GYP_MODULE_NAME=memoryjs;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;V8_DEPRECATION_WARNINGS;V8_REVERSE_JSARGS;_GLIBCXX_USE_CXX11_ABI=1;_LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS;V8_COMPRESS_POINTERS;V8_COMPRESS_POINTERS_IN_ISOLATE_CAGE;V8_VIRTUAL_MEMORY_CAGE;V8_31BIT_SMIS_ON_64BIT_ARCH;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=1;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;OPENSSL_NO_ASM;NAPI_DISABLE_CPP_EXCEPTIONS;BUILDING_NODE_EXTENSION;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>NODE_GYP_MODULE_NAME=memoryjs;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;V8_DEPRECATION_WARNINGS;V8_REVERSE_JSARGS;_GLIBCXX_USE_CXX11_ABI=1;_LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS;V8_COMPRESS_POINTERS;V8_COMPRESS_POINTERS_IN_ISOLATE_CAGE;V8_VIRTUAL_MEMORY_CAGE;V8_31BIT_SMIS_ON_64BIT_ARCH;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=1;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;OPENSSL_NO_ASM;NAPI_DISABLE_CPP_EXCEPTIONS;BUILDING_NODE_EXTENSION;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ResourceCompile>
|
</ResourceCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|
40
App/node_modules/memoryjs/index.js
generated
vendored
40
App/node_modules/memoryjs/index.js
generated
vendored
|
@ -4,6 +4,13 @@ const Debugger = require('./src/debugger');
|
||||||
const constants = require('./src/consts');
|
const constants = require('./src/consts');
|
||||||
const { STRUCTRON_TYPE_STRING } = require('./src/utils');
|
const { STRUCTRON_TYPE_STRING } = require('./src/utils');
|
||||||
|
|
||||||
|
/* TODO:
|
||||||
|
* - remove callbacks from all functions and implement promise support using Napi
|
||||||
|
* - validate argument types in JS space instead of C++
|
||||||
|
* - refactor read/write memory functions to use buffers instead?
|
||||||
|
* - remove `closeProcess` in favour of `closeHandle`
|
||||||
|
*/
|
||||||
|
|
||||||
function openProcess(processIdentifier, callback) {
|
function openProcess(processIdentifier, callback) {
|
||||||
if (arguments.length === 1) {
|
if (arguments.length === 1) {
|
||||||
return memoryjs.openProcess(processIdentifier);
|
return memoryjs.openProcess(processIdentifier);
|
||||||
|
@ -13,7 +20,7 @@ function openProcess(processIdentifier, callback) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function closeProcess(handle) {
|
function closeProcess(handle) {
|
||||||
return memoryjs.closeProcess(handle);
|
return memoryjs.closeHandle(handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
function getProcesses(callback) {
|
function getProcesses(callback) {
|
||||||
|
@ -292,6 +299,33 @@ function unloadDll(handle, module, callback) {
|
||||||
return memoryjs.unloadDll(handle, module, callback);
|
return memoryjs.unloadDll(handle, module, callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function openFileMapping(fileName) {
|
||||||
|
if (arguments.length !== 1 || typeof fileName !== 'string') {
|
||||||
|
throw new Error('invalid arguments!');
|
||||||
|
}
|
||||||
|
|
||||||
|
return memoryjs.openFileMapping(fileName);
|
||||||
|
}
|
||||||
|
|
||||||
|
function mapViewOfFile(processHandle, fileHandle, offset, viewSize, pageProtection) {
|
||||||
|
const validArgs = [
|
||||||
|
['number', 'number'],
|
||||||
|
['number', 'number', 'number', 'number', 'number'],
|
||||||
|
['number', 'number', 'bigint', 'bigint', 'number']
|
||||||
|
];
|
||||||
|
const receivedArgs = Array.from(arguments).map(arg => typeof arg);
|
||||||
|
|
||||||
|
if (!validArgs.some(args => args.join(",") == receivedArgs.join(","))) {
|
||||||
|
throw new Error('invalid arguments!');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (arguments.length == 2) {
|
||||||
|
return memoryjs.mapViewOfFile(processHandle, fileHandle, 0, 0, constants.PAGE_READONLY);
|
||||||
|
}
|
||||||
|
|
||||||
|
return memoryjs.mapViewOfFile(processHandle, fileHandle, offset, viewSize, pageProtection);
|
||||||
|
}
|
||||||
|
|
||||||
const library = {
|
const library = {
|
||||||
openProcess,
|
openProcess,
|
||||||
closeProcess,
|
closeProcess,
|
||||||
|
@ -310,8 +344,10 @@ const library = {
|
||||||
virtualQueryEx,
|
virtualQueryEx,
|
||||||
injectDll,
|
injectDll,
|
||||||
unloadDll,
|
unloadDll,
|
||||||
|
openFileMapping,
|
||||||
|
mapViewOfFile,
|
||||||
attachDebugger: memoryjs.attachDebugger,
|
attachDebugger: memoryjs.attachDebugger,
|
||||||
detatchDebugger: memoryjs.detatchDebugger,
|
detachDebugger: memoryjs.detachDebugger,
|
||||||
awaitDebugEvent: memoryjs.awaitDebugEvent,
|
awaitDebugEvent: memoryjs.awaitDebugEvent,
|
||||||
handleDebugEvent: memoryjs.handleDebugEvent,
|
handleDebugEvent: memoryjs.handleDebugEvent,
|
||||||
setHardwareBreakpoint: memoryjs.setHardwareBreakpoint,
|
setHardwareBreakpoint: memoryjs.setHardwareBreakpoint,
|
||||||
|
|
165
App/node_modules/memoryjs/lib/memoryjs.cc
generated
vendored
165
App/node_modules/memoryjs/lib/memoryjs.cc
generated
vendored
|
@ -12,6 +12,7 @@
|
||||||
#include "debugger.h"
|
#include "debugger.h"
|
||||||
|
|
||||||
#pragma comment(lib, "psapi.lib")
|
#pragma comment(lib, "psapi.lib")
|
||||||
|
#pragma comment(lib, "onecore.lib")
|
||||||
|
|
||||||
|
|
||||||
process Process;
|
process Process;
|
||||||
|
@ -104,21 +105,10 @@ Napi::Value openProcess(const Napi::CallbackInfo& args) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Napi::Value closeProcess(const Napi::CallbackInfo& args) {
|
Napi::Value closeHandle(const Napi::CallbackInfo& args) {
|
||||||
Napi::Env env = args.Env();
|
Napi::Env env = args.Env();
|
||||||
|
BOOL success = CloseHandle((HANDLE)args[0].As<Napi::Number>().Int64Value());
|
||||||
if (args.Length() != 1) {
|
return Napi::Boolean::New(env, success);
|
||||||
Napi::Error::New(env, "requires 1 argument").ThrowAsJavaScriptException();
|
|
||||||
return env.Null();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!args[0].IsNumber()) {
|
|
||||||
Napi::Error::New(env, "first argument must be a number").ThrowAsJavaScriptException();
|
|
||||||
return env.Null();
|
|
||||||
}
|
|
||||||
|
|
||||||
Process.closeProcess((HANDLE)args[0].As<Napi::Number>().Int64Value());
|
|
||||||
return env.Null();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Napi::Value getProcesses(const Napi::CallbackInfo& args) {
|
Napi::Value getProcesses(const Napi::CallbackInfo& args) {
|
||||||
|
@ -326,7 +316,14 @@ Napi::Value readMemory(const Napi::CallbackInfo& args) {
|
||||||
Napi::Value retVal = env.Null();
|
Napi::Value retVal = env.Null();
|
||||||
|
|
||||||
HANDLE handle = (HANDLE)args[0].As<Napi::Number>().Int64Value();
|
HANDLE handle = (HANDLE)args[0].As<Napi::Number>().Int64Value();
|
||||||
DWORD64 address = args[1].As<Napi::Number>().Int64Value();
|
|
||||||
|
DWORD64 address;
|
||||||
|
if (args[1].As<Napi::BigInt>().IsBigInt()) {
|
||||||
|
bool lossless;
|
||||||
|
address = args[1].As<Napi::BigInt>().Uint64Value(&lossless);
|
||||||
|
} else {
|
||||||
|
address = args[1].As<Napi::Number>().Int64Value();
|
||||||
|
}
|
||||||
|
|
||||||
if (!strcmp(dataType, "int8") || !strcmp(dataType, "byte") || !strcmp(dataType, "char")) {
|
if (!strcmp(dataType, "int8") || !strcmp(dataType, "byte") || !strcmp(dataType, "char")) {
|
||||||
|
|
||||||
|
@ -468,7 +465,15 @@ Napi::Value readBuffer(const Napi::CallbackInfo& args) {
|
||||||
}
|
}
|
||||||
|
|
||||||
HANDLE handle = (HANDLE)args[0].As<Napi::Number>().Int64Value();
|
HANDLE handle = (HANDLE)args[0].As<Napi::Number>().Int64Value();
|
||||||
DWORD64 address = args[1].As<Napi::Number>().Int64Value();
|
|
||||||
|
DWORD64 address;
|
||||||
|
if (args[1].As<Napi::BigInt>().IsBigInt()) {
|
||||||
|
bool lossless;
|
||||||
|
address = args[1].As<Napi::BigInt>().Uint64Value(&lossless);
|
||||||
|
} else {
|
||||||
|
address = args[1].As<Napi::Number>().Int64Value();
|
||||||
|
}
|
||||||
|
|
||||||
SIZE_T size = args[2].As<Napi::Number>().Int64Value();
|
SIZE_T size = args[2].As<Napi::Number>().Int64Value();
|
||||||
|
|
||||||
// To fix the memory leak problem that was happening here, we need to release the
|
// To fix the memory leak problem that was happening here, we need to release the
|
||||||
|
@ -511,7 +516,14 @@ Napi::Value writeMemory(const Napi::CallbackInfo& args) {
|
||||||
const char* dataType = dataTypeArg.c_str();
|
const char* dataType = dataTypeArg.c_str();
|
||||||
|
|
||||||
HANDLE handle = (HANDLE)args[0].As<Napi::Number>().Int64Value();
|
HANDLE handle = (HANDLE)args[0].As<Napi::Number>().Int64Value();
|
||||||
DWORD64 address = args[1].As<Napi::Number>().Int64Value();
|
|
||||||
|
DWORD64 address;
|
||||||
|
if (args[1].As<Napi::BigInt>().IsBigInt()) {
|
||||||
|
bool lossless;
|
||||||
|
address = args[1].As<Napi::BigInt>().Uint64Value(&lossless);
|
||||||
|
} else {
|
||||||
|
address = args[1].As<Napi::Number>().Int64Value();
|
||||||
|
}
|
||||||
|
|
||||||
if (!strcmp(dataType, "int8") || !strcmp(dataType, "byte") || !strcmp(dataType, "char")) {
|
if (!strcmp(dataType, "int8") || !strcmp(dataType, "byte") || !strcmp(dataType, "char")) {
|
||||||
|
|
||||||
|
@ -539,15 +551,21 @@ Napi::Value writeMemory(const Napi::CallbackInfo& args) {
|
||||||
|
|
||||||
} else if (!strcmp(dataType, "int64")) {
|
} else if (!strcmp(dataType, "int64")) {
|
||||||
|
|
||||||
Napi::BigInt bigInt = args[2].As<Napi::BigInt>();
|
if (args[2].As<Napi::BigInt>().IsBigInt()) {
|
||||||
bool lossless;
|
bool lossless;
|
||||||
Memory.writeMemory<int64_t>(handle, address, bigInt.Int64Value(&lossless));
|
Memory.writeMemory<int64_t>(handle, address, args[2].As<Napi::BigInt>().Int64Value(&lossless));
|
||||||
|
} else {
|
||||||
|
Memory.writeMemory<int64_t>(handle, address, args[2].As<Napi::Number>().Int64Value());
|
||||||
|
}
|
||||||
|
|
||||||
} else if (!strcmp(dataType, "uint64")) {
|
} else if (!strcmp(dataType, "uint64")) {
|
||||||
|
|
||||||
Napi::BigInt bigInt = args[2].As<Napi::BigInt>();
|
if (args[2].As<Napi::BigInt>().IsBigInt()) {
|
||||||
bool lossless;
|
bool lossless;
|
||||||
Memory.writeMemory<uint64_t>(handle, address, bigInt.Uint64Value(&lossless));
|
Memory.writeMemory<int64_t>(handle, address, args[2].As<Napi::BigInt>().Uint64Value(&lossless));
|
||||||
|
} else {
|
||||||
|
Memory.writeMemory<int64_t>(handle, address, args[2].As<Napi::Number>().Int64Value());
|
||||||
|
}
|
||||||
|
|
||||||
} else if (!strcmp(dataType, "float")) {
|
} else if (!strcmp(dataType, "float")) {
|
||||||
|
|
||||||
|
@ -559,36 +577,36 @@ Napi::Value writeMemory(const Napi::CallbackInfo& args) {
|
||||||
|
|
||||||
} else if (!strcmp(dataType, "ptr") || !strcmp(dataType, "pointer")) {
|
} else if (!strcmp(dataType, "ptr") || !strcmp(dataType, "pointer")) {
|
||||||
|
|
||||||
Napi::BigInt bigInt = args[2].As<Napi::BigInt>();
|
Napi::BigInt valueBigInt = args[2].As<Napi::BigInt>();
|
||||||
|
|
||||||
if (sizeof(intptr_t) == 8 && !bigInt.IsBigInt()) {
|
if (sizeof(intptr_t) == 8 && !valueBigInt.IsBigInt()) {
|
||||||
std::string error = "Writing memoryjs.PTR or memoryjs.POINTER on 64 bit target build requires you to supply a BigInt.";
|
std::string error = "Writing memoryjs.PTR or memoryjs.POINTER on 64 bit target build requires you to supply a BigInt.";
|
||||||
error += " Rebuild the library with `npm run build32` to target 32 bit applications.";
|
error += " Rebuild the library with `npm run build32` to target 32 bit applications.";
|
||||||
Napi::Error::New(env, error).ThrowAsJavaScriptException();
|
Napi::Error::New(env, error).ThrowAsJavaScriptException();
|
||||||
return env.Null();
|
return env.Null();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (bigInt.IsBigInt()) {
|
if (valueBigInt.IsBigInt()) {
|
||||||
bool lossless;
|
bool lossless;
|
||||||
Memory.writeMemory<intptr_t>(handle, address, bigInt.Int64Value(&lossless));
|
Memory.writeMemory<intptr_t>(handle, address, valueBigInt.Int64Value(&lossless));
|
||||||
} else {
|
} else {
|
||||||
Memory.writeMemory<intptr_t>(handle, address, args[2].As<Napi::Number>().Int32Value());
|
Memory.writeMemory<intptr_t>(handle, address, args[2].As<Napi::Number>().Int32Value());
|
||||||
}
|
}
|
||||||
|
|
||||||
} else if (!strcmp(dataType, "uptr") || !strcmp(dataType, "upointer")) {
|
} else if (!strcmp(dataType, "uptr") || !strcmp(dataType, "upointer")) {
|
||||||
|
|
||||||
Napi::BigInt bigInt = args[2].As<Napi::BigInt>();
|
Napi::BigInt valueBigInt = args[2].As<Napi::BigInt>();
|
||||||
|
|
||||||
if (sizeof(uintptr_t) == 8 && !bigInt.IsBigInt()) {
|
if (sizeof(uintptr_t) == 8 && !valueBigInt.IsBigInt()) {
|
||||||
std::string error = "Writing memoryjs.PTR or memoryjs.POINTER on 64 bit target build requires you to supply a BigInt.";
|
std::string error = "Writing memoryjs.PTR or memoryjs.POINTER on 64 bit target build requires you to supply a BigInt.";
|
||||||
error += " Rebuild the library with `npm run build32` to target 32 bit applications.";
|
error += " Rebuild the library with `npm run build32` to target 32 bit applications.";
|
||||||
Napi::Error::New(env, error).ThrowAsJavaScriptException();
|
Napi::Error::New(env, error).ThrowAsJavaScriptException();
|
||||||
return env.Null();
|
return env.Null();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (bigInt.IsBigInt()) {
|
if (valueBigInt.IsBigInt()) {
|
||||||
bool lossless;
|
bool lossless;
|
||||||
Memory.writeMemory<uintptr_t>(handle, address, bigInt.Uint64Value(&lossless));
|
Memory.writeMemory<uintptr_t>(handle, address, valueBigInt.Uint64Value(&lossless));
|
||||||
} else {
|
} else {
|
||||||
Memory.writeMemory<uintptr_t>(handle, address, args[2].As<Napi::Number>().Uint32Value());
|
Memory.writeMemory<uintptr_t>(handle, address, args[2].As<Napi::Number>().Uint32Value());
|
||||||
}
|
}
|
||||||
|
@ -650,7 +668,15 @@ Napi::Value writeBuffer(const Napi::CallbackInfo& args) {
|
||||||
}
|
}
|
||||||
|
|
||||||
HANDLE handle = (HANDLE)args[0].As<Napi::Number>().Int64Value();
|
HANDLE handle = (HANDLE)args[0].As<Napi::Number>().Int64Value();
|
||||||
DWORD64 address = args[1].As<Napi::Number>().Int64Value();
|
|
||||||
|
DWORD64 address;
|
||||||
|
if (args[1].As<Napi::BigInt>().IsBigInt()) {
|
||||||
|
bool lossless;
|
||||||
|
address = args[1].As<Napi::BigInt>().Uint64Value(&lossless);
|
||||||
|
} else {
|
||||||
|
address = args[1].As<Napi::Number>().Int64Value();
|
||||||
|
}
|
||||||
|
|
||||||
SIZE_T length = args[2].As<Napi::Buffer<char>>().Length();
|
SIZE_T length = args[2].As<Napi::Buffer<char>>().Length();
|
||||||
char* data = args[2].As<Napi::Buffer<char>>().Data();
|
char* data = args[2].As<Napi::Buffer<char>>().Data();
|
||||||
Memory.writeMemory<char*>(handle, address, data, length);
|
Memory.writeMemory<char*>(handle, address, data, length);
|
||||||
|
@ -813,7 +839,15 @@ Napi::Value findPatternByAddress(const Napi::CallbackInfo& args) {
|
||||||
}
|
}
|
||||||
|
|
||||||
HANDLE handle = (HANDLE)args[0].As<Napi::Number>().Int64Value();
|
HANDLE handle = (HANDLE)args[0].As<Napi::Number>().Int64Value();
|
||||||
DWORD64 baseAddress = args[1].As<Napi::Number>().Int64Value();
|
|
||||||
|
DWORD64 baseAddress;
|
||||||
|
if (args[1].As<Napi::BigInt>().IsBigInt()) {
|
||||||
|
bool lossless;
|
||||||
|
baseAddress = args[1].As<Napi::BigInt>().Uint64Value(&lossless);
|
||||||
|
} else {
|
||||||
|
baseAddress = args[1].As<Napi::Number>().Int64Value();
|
||||||
|
}
|
||||||
|
|
||||||
std::string pattern(args[2].As<Napi::String>().Utf8Value());
|
std::string pattern(args[2].As<Napi::String>().Utf8Value());
|
||||||
short flags = args[3].As<Napi::Number>().Uint32Value();
|
short flags = args[3].As<Napi::Number>().Uint32Value();
|
||||||
uint32_t patternOffset = args[4].As<Napi::Number>().Uint32Value();
|
uint32_t patternOffset = args[4].As<Napi::Number>().Uint32Value();
|
||||||
|
@ -902,7 +936,14 @@ Napi::Value callFunction(const Napi::CallbackInfo& args) {
|
||||||
|
|
||||||
HANDLE handle = (HANDLE)args[0].As<Napi::Number>().Int64Value();
|
HANDLE handle = (HANDLE)args[0].As<Napi::Number>().Int64Value();
|
||||||
functions::Type returnType = (functions::Type) args[2].As<Napi::Number>().Uint32Value();
|
functions::Type returnType = (functions::Type) args[2].As<Napi::Number>().Uint32Value();
|
||||||
DWORD64 address = args[3].As<Napi::Number>().Int64Value();
|
|
||||||
|
DWORD64 address;
|
||||||
|
if (args[3].As<Napi::BigInt>().IsBigInt()) {
|
||||||
|
bool lossless;
|
||||||
|
address = args[3].As<Napi::BigInt>().Uint64Value(&lossless);
|
||||||
|
} else {
|
||||||
|
address = args[3].As<Napi::Number>().Int64Value();
|
||||||
|
}
|
||||||
|
|
||||||
char* errorMessage = "";
|
char* errorMessage = "";
|
||||||
Call data = functions::call<int>(handle, parsedArgs, returnType, address, &errorMessage);
|
Call data = functions::call<int>(handle, parsedArgs, returnType, address, &errorMessage);
|
||||||
|
@ -1208,7 +1249,7 @@ Napi::Value attachDebugger(const Napi::CallbackInfo& args) {
|
||||||
return Napi::Boolean::New(env, success);
|
return Napi::Boolean::New(env, success);
|
||||||
}
|
}
|
||||||
|
|
||||||
Napi::Value detatchDebugger(const Napi::CallbackInfo& args) {
|
Napi::Value detachDebugger(const Napi::CallbackInfo& args) {
|
||||||
Napi::Env env = args.Env();
|
Napi::Env env = args.Env();
|
||||||
|
|
||||||
DWORD processId = args[0].As<Napi::Number>().Uint32Value();
|
DWORD processId = args[0].As<Napi::Number>().Uint32Value();
|
||||||
|
@ -1455,6 +1496,55 @@ Napi::Value unloadDll(const Napi::CallbackInfo& args) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Napi::Value openFileMapping(const Napi::CallbackInfo& args) {
|
||||||
|
Napi::Env env = args.Env();
|
||||||
|
|
||||||
|
std::string fileName(args[0].As<Napi::String>().Utf8Value());
|
||||||
|
|
||||||
|
HANDLE fileHandle = OpenFileMappingA(FILE_MAP_ALL_ACCESS, FALSE, fileName.c_str());
|
||||||
|
|
||||||
|
if (fileHandle == NULL) {
|
||||||
|
Napi::Error::New(env, Napi::String::New(env, "Error opening handle to file!")).ThrowAsJavaScriptException();
|
||||||
|
return env.Null();
|
||||||
|
}
|
||||||
|
|
||||||
|
return Napi::Value::From(env, (uintptr_t) fileHandle);
|
||||||
|
}
|
||||||
|
|
||||||
|
Napi::Value mapViewOfFile(const Napi::CallbackInfo& args) {
|
||||||
|
Napi::Env env = args.Env();
|
||||||
|
|
||||||
|
HANDLE processHandle = (HANDLE)args[0].As<Napi::Number>().Int64Value();
|
||||||
|
HANDLE fileHandle = (HANDLE)args[1].As<Napi::Number>().Int64Value();
|
||||||
|
|
||||||
|
uint64_t offset;
|
||||||
|
if (args[2].As<Napi::BigInt>().IsBigInt()) {
|
||||||
|
bool lossless;
|
||||||
|
offset = args[2].As<Napi::BigInt>().Uint64Value(&lossless);
|
||||||
|
} else {
|
||||||
|
offset = args[2].As<Napi::Number>().Int64Value();
|
||||||
|
}
|
||||||
|
|
||||||
|
size_t viewSize;
|
||||||
|
if (args[3].As<Napi::BigInt>().IsBigInt()) {
|
||||||
|
bool lossless;
|
||||||
|
viewSize = args[3].As<Napi::BigInt>().Uint64Value(&lossless);
|
||||||
|
} else {
|
||||||
|
viewSize = args[3].As<Napi::Number>().Int64Value();
|
||||||
|
}
|
||||||
|
|
||||||
|
ULONG pageProtection = args[4].As<Napi::Number>().Int64Value();
|
||||||
|
|
||||||
|
LPVOID baseAddress = MapViewOfFile2(fileHandle, processHandle, offset, NULL, viewSize, 0, pageProtection);
|
||||||
|
|
||||||
|
if (baseAddress == NULL) {
|
||||||
|
Napi::Error::New(env, Napi::String::New(env, "Error mapping file to process!")).ThrowAsJavaScriptException();
|
||||||
|
return env.Null();
|
||||||
|
}
|
||||||
|
|
||||||
|
return Napi::Value::From(env, (uintptr_t) baseAddress);
|
||||||
|
}
|
||||||
|
|
||||||
// https://stackoverflow.com/a/17387176
|
// https://stackoverflow.com/a/17387176
|
||||||
std::string GetLastErrorToString() {
|
std::string GetLastErrorToString() {
|
||||||
DWORD errorMessageID = ::GetLastError();
|
DWORD errorMessageID = ::GetLastError();
|
||||||
|
@ -1485,7 +1575,6 @@ std::string GetLastErrorToString() {
|
||||||
|
|
||||||
Napi::Object init(Napi::Env env, Napi::Object exports) {
|
Napi::Object init(Napi::Env env, Napi::Object exports) {
|
||||||
exports.Set(Napi::String::New(env, "openProcess"), Napi::Function::New(env, openProcess));
|
exports.Set(Napi::String::New(env, "openProcess"), Napi::Function::New(env, openProcess));
|
||||||
exports.Set(Napi::String::New(env, "closeProcess"), Napi::Function::New(env, closeProcess));
|
|
||||||
exports.Set(Napi::String::New(env, "getProcesses"), Napi::Function::New(env, getProcesses));
|
exports.Set(Napi::String::New(env, "getProcesses"), Napi::Function::New(env, getProcesses));
|
||||||
exports.Set(Napi::String::New(env, "getModules"), Napi::Function::New(env, getModules));
|
exports.Set(Napi::String::New(env, "getModules"), Napi::Function::New(env, getModules));
|
||||||
exports.Set(Napi::String::New(env, "findModule"), Napi::Function::New(env, findModule));
|
exports.Set(Napi::String::New(env, "findModule"), Napi::Function::New(env, findModule));
|
||||||
|
@ -1502,13 +1591,15 @@ Napi::Object init(Napi::Env env, Napi::Object exports) {
|
||||||
exports.Set(Napi::String::New(env, "getRegions"), Napi::Function::New(env, getRegions));
|
exports.Set(Napi::String::New(env, "getRegions"), Napi::Function::New(env, getRegions));
|
||||||
exports.Set(Napi::String::New(env, "virtualQueryEx"), Napi::Function::New(env, virtualQueryEx));
|
exports.Set(Napi::String::New(env, "virtualQueryEx"), Napi::Function::New(env, virtualQueryEx));
|
||||||
exports.Set(Napi::String::New(env, "attachDebugger"), Napi::Function::New(env, attachDebugger));
|
exports.Set(Napi::String::New(env, "attachDebugger"), Napi::Function::New(env, attachDebugger));
|
||||||
exports.Set(Napi::String::New(env, "detatchDebugger"), Napi::Function::New(env, detatchDebugger));
|
exports.Set(Napi::String::New(env, "detachDebugger"), Napi::Function::New(env, detachDebugger));
|
||||||
exports.Set(Napi::String::New(env, "awaitDebugEvent"), Napi::Function::New(env, awaitDebugEvent));
|
exports.Set(Napi::String::New(env, "awaitDebugEvent"), Napi::Function::New(env, awaitDebugEvent));
|
||||||
exports.Set(Napi::String::New(env, "handleDebugEvent"), Napi::Function::New(env, handleDebugEvent));
|
exports.Set(Napi::String::New(env, "handleDebugEvent"), Napi::Function::New(env, handleDebugEvent));
|
||||||
exports.Set(Napi::String::New(env, "setHardwareBreakpoint"), Napi::Function::New(env, setHardwareBreakpoint));
|
exports.Set(Napi::String::New(env, "setHardwareBreakpoint"), Napi::Function::New(env, setHardwareBreakpoint));
|
||||||
exports.Set(Napi::String::New(env, "removeHardwareBreakpoint"), Napi::Function::New(env, removeHardwareBreakpoint));
|
exports.Set(Napi::String::New(env, "removeHardwareBreakpoint"), Napi::Function::New(env, removeHardwareBreakpoint));
|
||||||
exports.Set(Napi::String::New(env, "injectDll"), Napi::Function::New(env, injectDll));
|
exports.Set(Napi::String::New(env, "injectDll"), Napi::Function::New(env, injectDll));
|
||||||
exports.Set(Napi::String::New(env, "unloadDll"), Napi::Function::New(env, unloadDll));
|
exports.Set(Napi::String::New(env, "unloadDll"), Napi::Function::New(env, unloadDll));
|
||||||
|
exports.Set(Napi::String::New(env, "openFileMapping"), Napi::Function::New(env, openFileMapping));
|
||||||
|
exports.Set(Napi::String::New(env, "mapViewOfFile"), Napi::Function::New(env, mapViewOfFile));
|
||||||
return exports;
|
return exports;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
4
App/node_modules/memoryjs/lib/process.cc
generated
vendored
4
App/node_modules/memoryjs/lib/process.cc
generated
vendored
|
@ -64,10 +64,6 @@ process::Pair process::openProcess(DWORD processId, char** errorMessage) {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
void process::closeProcess(HANDLE hProcess){
|
|
||||||
CloseHandle(hProcess);
|
|
||||||
}
|
|
||||||
|
|
||||||
std::vector<PROCESSENTRY32> process::getProcesses(char** errorMessage) {
|
std::vector<PROCESSENTRY32> process::getProcesses(char** errorMessage) {
|
||||||
// Take a snapshot of all processes.
|
// Take a snapshot of all processes.
|
||||||
HANDLE hProcessSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL);
|
HANDLE hProcessSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL);
|
||||||
|
|
2877
App/node_modules/memoryjs/package-lock.json
generated
vendored
Normal file
2877
App/node_modules/memoryjs/package-lock.json
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
84
App/node_modules/memoryjs/package.json
generated
vendored
84
App/node_modules/memoryjs/package.json
generated
vendored
|
@ -1,44 +1,23 @@
|
||||||
{
|
{
|
||||||
"_from": "memoryjs",
|
"name": "memoryjs",
|
||||||
"_id": "memoryjs@3.5.1",
|
"version": "3.5.1",
|
||||||
"_inBundle": false,
|
|
||||||
"_integrity": "sha512-xSdgCVwjtpGr6GvC0h2gYnhno/8/cFFGa3PiDE4D3MlutWEtBO8LEYSB4sk5kfxZ2t6alHT+H76QJfWBoZWnlQ==",
|
|
||||||
"_location": "/memoryjs",
|
|
||||||
"_phantomChildren": {},
|
|
||||||
"_requested": {
|
|
||||||
"type": "tag",
|
|
||||||
"registry": true,
|
|
||||||
"raw": "memoryjs",
|
|
||||||
"name": "memoryjs",
|
|
||||||
"escapedName": "memoryjs",
|
|
||||||
"rawSpec": "",
|
|
||||||
"saveSpec": null,
|
|
||||||
"fetchSpec": "latest"
|
|
||||||
},
|
|
||||||
"_requiredBy": [
|
|
||||||
"#USER",
|
|
||||||
"/"
|
|
||||||
],
|
|
||||||
"_resolved": "https://registry.npmjs.org/memoryjs/-/memoryjs-3.5.1.tgz",
|
|
||||||
"_shasum": "9156412cf18ad4ee0f6e57aa9753cc593884ff89",
|
|
||||||
"_spec": "memoryjs",
|
|
||||||
"_where": "C:\\Users\\TemmieHeartz\\Desktop\\teste",
|
|
||||||
"author": {
|
|
||||||
"name": "Rob--"
|
|
||||||
},
|
|
||||||
"bugs": {
|
|
||||||
"url": "https://github.com/Rob--/memoryjs/issues"
|
|
||||||
},
|
|
||||||
"bundleDependencies": false,
|
|
||||||
"dependencies": {
|
|
||||||
"eslint": "^8.5.0",
|
|
||||||
"eslint-config-airbnb-base": "^12.1.0",
|
|
||||||
"node-addon-api": "^3.2.1"
|
|
||||||
},
|
|
||||||
"deprecated": false,
|
|
||||||
"description": "Node add-on for memory reading and writing!",
|
"description": "Node add-on for memory reading and writing!",
|
||||||
"gypfile": true,
|
"main": "index.js",
|
||||||
"homepage": "https://github.com/Rob--/memoryjs#readme",
|
"scripts": {
|
||||||
|
"test": "echo \"Error: no test specified\" && exit 1",
|
||||||
|
"install": "npm run build",
|
||||||
|
"build": "node ./scripts/install.js",
|
||||||
|
"build32": "node-gyp clean configure build --arch=ia32",
|
||||||
|
"build64": "node-gyp clean configure build --arch=x64",
|
||||||
|
"buildtest": "cd test && MSBuild.exe project.sln //p:Configuration=Release",
|
||||||
|
"debug": "node ./scripts/debug.js",
|
||||||
|
"debug32": "node-gyp configure rebuild --debug --arch=xia32",
|
||||||
|
"debug64": "node-gyp configure rebuild --debug --arch=x64"
|
||||||
|
},
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "git+https://github.com/Rob--/memoryjs.git"
|
||||||
|
},
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"memory",
|
"memory",
|
||||||
"reading",
|
"reading",
|
||||||
|
@ -46,23 +25,16 @@
|
||||||
"management",
|
"management",
|
||||||
"addon"
|
"addon"
|
||||||
],
|
],
|
||||||
|
"author": "Rob--",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"main": "index.js",
|
"gypfile": true,
|
||||||
"name": "memoryjs",
|
"bugs": {
|
||||||
"repository": {
|
"url": "https://github.com/Rob--/memoryjs/issues"
|
||||||
"type": "git",
|
|
||||||
"url": "git+https://github.com/Rob--/memoryjs.git"
|
|
||||||
},
|
},
|
||||||
"scripts": {
|
"homepage": "https://github.com/Rob--/memoryjs#readme",
|
||||||
"build": "node ./scripts/install.js",
|
"dependencies": {
|
||||||
"build32": "node-gyp clean configure build --arch=ia32",
|
"eslint": "^8.5.0",
|
||||||
"build64": "node-gyp clean configure build --arch=x64",
|
"eslint-config-airbnb-base": "^12.1.0",
|
||||||
"buildtest": "cd test && MSBuild.exe project.sln //p:Configuration=Release",
|
"node-addon-api": "^3.2.1"
|
||||||
"debug": "node ./scripts/debug.js",
|
}
|
||||||
"debug32": "node-gyp configure rebuild --debug --arch=xia32",
|
|
||||||
"debug64": "node-gyp configure rebuild --debug --arch=x64",
|
|
||||||
"install": "npm run build",
|
|
||||||
"test": "echo \"Error: no test specified\" && exit 1"
|
|
||||||
},
|
|
||||||
"version": "3.5.1"
|
|
||||||
}
|
}
|
||||||
|
|
8
App/node_modules/memoryjs/src/debugger.js
generated
vendored
8
App/node_modules/memoryjs/src/debugger.js
generated
vendored
|
@ -63,8 +63,8 @@ class Debugger extends EventEmitter {
|
||||||
this.intervals = [];
|
this.intervals = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
attach(processId, killOnDetatch = false) {
|
attach(processId, killOnDetach = false) {
|
||||||
const success = this.memoryjs.attachDebugger(processId, killOnDetatch);
|
const success = this.memoryjs.attachDebugger(processId, killOnDetach);
|
||||||
|
|
||||||
if (success) {
|
if (success) {
|
||||||
this.attached = true;
|
this.attached = true;
|
||||||
|
@ -73,9 +73,9 @@ class Debugger extends EventEmitter {
|
||||||
return success;
|
return success;
|
||||||
}
|
}
|
||||||
|
|
||||||
detatch(processId) {
|
detach(processId) {
|
||||||
this.intervals.map(({ id }) => clearInterval(id));
|
this.intervals.map(({ id }) => clearInterval(id));
|
||||||
return this.memoryjs.detatchDebugger(processId);
|
return this.memoryjs.detachDebugger(processId);
|
||||||
}
|
}
|
||||||
|
|
||||||
removeHardwareBreakpoint(processId, register) {
|
removeHardwareBreakpoint(processId, register) {
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
"emuStatusRunning": "fonctionnement",
|
"emuStatusRunning": "fonctionnement",
|
||||||
"logWindowTitle": "Exécution de fpPS4",
|
"logWindowTitle": "Exécution de fpPS4",
|
||||||
"killEmuStatus": "Le processus principal a été fermé - fermez la fenêtre des logs pour continuer",
|
"killEmuStatus": "Le processus principal a été fermé - fermez la fenêtre des logs pour continuer",
|
||||||
"logCleared": "INFO - La liste des journaux a été effacée!\n ",
|
"logCleared": "INFO - La liste des journaux a été effacée!",
|
||||||
"about": "fpPS4 Lanceur de Temmie - Version: %VARIABLE_0%\nCréé par TemmieHeartz\n(https://twitter.com/themitosan)\n\nfpPS4 a été créé/développé par red-prig\n(https://github.com/red -prig/fpPS4)\n\nLe plugin memoryjs a été créé/développé par Rob--\n(https://github.com/rob--/memoryjs)\n\nLe plugin node-stream-zip a été créé/développé par antelle \n(https://github.com/antelle/node-stream-zip)\n\nLes icônes SVG ont été obtenues à partir de https://www.svgrepo.com/",
|
"about": "fpPS4 Lanceur de Temmie - Version: %VARIABLE_0%\nCréé par TemmieHeartz\n(https://twitter.com/themitosan)\n\nfpPS4 a été créé/développé par red-prig\n(https://github.com/red -prig/fpPS4)\n\nLe plugin memoryjs a été créé/développé par Rob--\n(https://github.com/rob--/memoryjs)\n\nLe plugin node-stream-zip a été créé/développé par antelle \n(https://github.com/antelle/node-stream-zip)\n\nLes icônes SVG ont été obtenues à partir de https://www.svgrepo.com/",
|
||||||
"mainLog": "Lanceur de fpPS4 Temmie - Version: %VARIABLE_0%\nUtilisation de nw.js (node-webkit) version %VARIABLE_1% [%VARIABLE_2%]",
|
"mainLog": "Lanceur de fpPS4 Temmie - Version: %VARIABLE_0%\nUtilisation de nw.js (node-webkit) version %VARIABLE_1% [%VARIABLE_2%]",
|
||||||
"settingsErrorCreatePath": "ERREUR - Impossible de créer le dossier!\n(%VARIABLE_0%)\n%VARIABLE_1%",
|
"settingsErrorCreatePath": "ERREUR - Impossible de créer le dossier!\n(%VARIABLE_0%)\n%VARIABLE_1%",
|
||||||
|
@ -109,7 +109,8 @@
|
||||||
"LABEL_SETTINGS_EXPERIMENTAL_FPPS4_INTERNAL_LOG": "<label class=\"LABEL_settingsExperimental\">EXPERIMENTAL</label> Afficher la sortie de l'émulateur (<code>stdout</code> et <code>stderr</code>) dans le journal interne (Appuyez sur F12 --> Console)",
|
"LABEL_SETTINGS_EXPERIMENTAL_FPPS4_INTERNAL_LOG": "<label class=\"LABEL_settingsExperimental\">EXPERIMENTAL</label> Afficher la sortie de l'émulateur (<code>stdout</code> et <code>stderr</code>) dans le journal interne (Appuyez sur F12 --> Console)",
|
||||||
"DIV_SETTINGS_FPPS4_UPDATER": "Mises à jour fpPS4",
|
"DIV_SETTINGS_FPPS4_UPDATER": "Mises à jour fpPS4",
|
||||||
"LABEL_SETTINGS_ENABLE_LAUNCHER_FPPS4_UPDATES": "Activer le programme de mise à jour fpPS4",
|
"LABEL_SETTINGS_ENABLE_LAUNCHER_FPPS4_UPDATES": "Activer le programme de mise à jour fpPS4",
|
||||||
"LABEL_SETTINGS_FPPS4_UPDATE_BRANCH": "Recevez les mises à jour de la branche"
|
"LABEL_SETTINGS_FPPS4_UPDATE_BRANCH": "Recevez les mises à jour de la branche",
|
||||||
|
"LABEL_FPPS4_UPDATER_STATUS_LANG": ""
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
"emuStatusRunning": "In esecuzione",
|
"emuStatusRunning": "In esecuzione",
|
||||||
"logWindowTitle": "Eseguendo fpPS4",
|
"logWindowTitle": "Eseguendo fpPS4",
|
||||||
"killEmuStatus": "Il processo principale è stato chiuso: chiudi la finestra del log per continuare",
|
"killEmuStatus": "Il processo principale è stato chiuso: chiudi la finestra del log per continuare",
|
||||||
"logCleared": "INFO - L'elenco dei log è stato cancellato!\n",
|
"logCleared": "INFO - L'elenco dei log è stato cancellato!",
|
||||||
"about": "fpPS4 Temmie's Launcher - Versione: %VARIABLE_0%\nCreato da TemmieHeartz\n(https://twitter.com/themitosan)\n\nfpPS4 è stato creato/sviluppato da red-prig\n(https://github.com/red-prig/fpPS4)\n\nIl plug-in memoryjs è stato creato/sviluppato da Rob--\n(https://github.com/rob--/memoryjs)\n\nIl plug-in node-stream-zip è stato creato/sviluppato da antelle \n(https://github.com/antelle/node-stream-zip)\n\nLe icone SVG sono state ottenute da https://www.svgrepo.com/",
|
"about": "fpPS4 Temmie's Launcher - Versione: %VARIABLE_0%\nCreato da TemmieHeartz\n(https://twitter.com/themitosan)\n\nfpPS4 è stato creato/sviluppato da red-prig\n(https://github.com/red-prig/fpPS4)\n\nIl plug-in memoryjs è stato creato/sviluppato da Rob--\n(https://github.com/rob--/memoryjs)\n\nIl plug-in node-stream-zip è stato creato/sviluppato da antelle \n(https://github.com/antelle/node-stream-zip)\n\nLe icone SVG sono state ottenute da https://www.svgrepo.com/",
|
||||||
"mainLog": "fpPS4 Temmie's Launcher - Versione: %VARIABLE_0%\nUsando nw.js (node-webkit) versione %VARIABLE_1% [%VARIABLE_2%]",
|
"mainLog": "fpPS4 Temmie's Launcher - Versione: %VARIABLE_0%\nUsando nw.js (node-webkit) versione %VARIABLE_1% [%VARIABLE_2%]",
|
||||||
"settingsErrorCreatePath": "ERRORE - Impossibile creare la cartella!\n(%VARIABLE_0%)\n%VARIABLE_1%",
|
"settingsErrorCreatePath": "ERRORE - Impossibile creare la cartella!\n(%VARIABLE_0%)\n%VARIABLE_1%",
|
||||||
|
@ -109,7 +109,8 @@
|
||||||
"LABEL_SETTINGS_EXPERIMENTAL_FPPS4_INTERNAL_LOG": "<label class=\"LABEL_settingsExperimental\">SPERIMENTALE</label> Visualizza l'output dell'emulatore (<code>stdout</code> e <code>stderr</code>) nel log interno (premi F12 --> Console)",
|
"LABEL_SETTINGS_EXPERIMENTAL_FPPS4_INTERNAL_LOG": "<label class=\"LABEL_settingsExperimental\">SPERIMENTALE</label> Visualizza l'output dell'emulatore (<code>stdout</code> e <code>stderr</code>) nel log interno (premi F12 --> Console)",
|
||||||
"DIV_SETTINGS_FPPS4_UPDATER": "Aggiornamenti fpPS4",
|
"DIV_SETTINGS_FPPS4_UPDATER": "Aggiornamenti fpPS4",
|
||||||
"LABEL_SETTINGS_ENABLE_LAUNCHER_FPPS4_UPDATES": "Abilita aggiornamento fpPS4",
|
"LABEL_SETTINGS_ENABLE_LAUNCHER_FPPS4_UPDATES": "Abilita aggiornamento fpPS4",
|
||||||
"LABEL_SETTINGS_FPPS4_UPDATE_BRANCH": "Ricevi gli aggiornamenti dal branch"
|
"LABEL_SETTINGS_FPPS4_UPDATE_BRANCH": "Ricevi gli aggiornamenti dal branch",
|
||||||
|
"LABEL_FPPS4_UPDATER_STATUS_LANG": ""
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
"emuStatusRunning": "Em execução",
|
"emuStatusRunning": "Em execução",
|
||||||
"logWindowTitle": "Executando fpPS4",
|
"logWindowTitle": "Executando fpPS4",
|
||||||
"killEmuStatus": "Processo principal foi fechado - feche a janela do log para continuar",
|
"killEmuStatus": "Processo principal foi fechado - feche a janela do log para continuar",
|
||||||
"logCleared": "INFO - A lista de log foi limpa!\n ",
|
"logCleared": "INFO - A lista de log foi limpa!",
|
||||||
"about": "fpPS4 Temmie's Launcher - Versão: %VARIABLE_0%\nCriado por TemmieHeartz\n(https://twitter.com/themitosan)\n\nfpPS4 foi criado / desenvolvido por red-prig\n(https://github.com/red-prig/fpPS4)\n\nPlugin memoryjs foi criado / desenvolvido por Rob--\n(https://github.com/rob--/memoryjs)\n\nPlugin node-stream-zip foi criado / desenvolvido por antelle\n(https://github.com/antelle/node-stream-zip)\n\nÍcones SVG foram obtidos através do site https://www.svgrepo.com/",
|
"about": "fpPS4 Temmie's Launcher - Versão: %VARIABLE_0%\nCriado por TemmieHeartz\n(https://twitter.com/themitosan)\n\nfpPS4 foi criado / desenvolvido por red-prig\n(https://github.com/red-prig/fpPS4)\n\nPlugin memoryjs foi criado / desenvolvido por Rob--\n(https://github.com/rob--/memoryjs)\n\nPlugin node-stream-zip foi criado / desenvolvido por antelle\n(https://github.com/antelle/node-stream-zip)\n\nÍcones SVG foram obtidos através do site https://www.svgrepo.com/",
|
||||||
"mainLog": "fpPS4 Temmie's Launcher - Versão: %VARIABLE_0%\nUsando nw.js (node-webkit) versão %VARIABLE_1% [%VARIABLE_2%]",
|
"mainLog": "fpPS4 Temmie's Launcher - Versão: %VARIABLE_0%\nUsando nw.js (node-webkit) versão %VARIABLE_1% [%VARIABLE_2%]",
|
||||||
"settingsErrorCreatePath": "ERRO - Não foi possível criar a pasta!\n(%VARIABLE_0%)\n%VARIABLE_1%",
|
"settingsErrorCreatePath": "ERRO - Não foi possível criar a pasta!\n(%VARIABLE_0%)\n%VARIABLE_1%",
|
||||||
|
@ -109,7 +109,8 @@
|
||||||
"LABEL_SETTINGS_EXPERIMENTAL_FPPS4_INTERNAL_LOG": "<label class=\"LABEL_settingsExperimental\">EXPERIMENTAL</label> Exibir output do emulador (<code>stdout</code> e <code>stderr</code>) no log interno (Aperte F12 --> Console)",
|
"LABEL_SETTINGS_EXPERIMENTAL_FPPS4_INTERNAL_LOG": "<label class=\"LABEL_settingsExperimental\">EXPERIMENTAL</label> Exibir output do emulador (<code>stdout</code> e <code>stderr</code>) no log interno (Aperte F12 --> Console)",
|
||||||
"DIV_SETTINGS_FPPS4_UPDATER": "Atualizações do fpPS4",
|
"DIV_SETTINGS_FPPS4_UPDATER": "Atualizações do fpPS4",
|
||||||
"LABEL_SETTINGS_ENABLE_LAUNCHER_FPPS4_UPDATES": "Habilitar atualizador do fpPS4",
|
"LABEL_SETTINGS_ENABLE_LAUNCHER_FPPS4_UPDATES": "Habilitar atualizador do fpPS4",
|
||||||
"LABEL_SETTINGS_FPPS4_UPDATE_BRANCH": "Obter atualizações da branch"
|
"LABEL_SETTINGS_FPPS4_UPDATE_BRANCH": "Obter atualizações da branch",
|
||||||
|
"LABEL_FPPS4_UPDATER_STATUS_LANG": "Status"
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
"emuStatusRunning": "Выполняется",
|
"emuStatusRunning": "Выполняется",
|
||||||
"logWindowTitle": "Запуск fpPS4",
|
"logWindowTitle": "Запуск fpPS4",
|
||||||
"killEmuStatus": "Основной процесс был закрыт - закройте окно лога для продолжения работы",
|
"killEmuStatus": "Основной процесс был закрыт - закройте окно лога для продолжения работы",
|
||||||
"logCleared": "ИНФО - Список логов был очищен!\n ",
|
"logCleared": "ИНФО - Список логов был очищен!",
|
||||||
"about": "",
|
"about": "",
|
||||||
"mainLog": "fpPS4 Temmie's Launcher - Версия: %VARIABLE_0%\nИспользование nw.js (node-webkit) версия %VARIABLE_1% [%VARIABLE_2%]",
|
"mainLog": "fpPS4 Temmie's Launcher - Версия: %VARIABLE_0%\nИспользование nw.js (node-webkit) версия %VARIABLE_1% [%VARIABLE_2%]",
|
||||||
"settingsErrorCreatePath": "ОШИБКА - Папка не может быть создана!\n(%VARIABLE_0%)\n%VARIABLE_1%",
|
"settingsErrorCreatePath": "ОШИБКА - Папка не может быть создана!\n(%VARIABLE_0%)\n%VARIABLE_1%",
|
||||||
|
@ -109,7 +109,8 @@
|
||||||
"LABEL_SETTINGS_EXPERIMENTAL_FPPS4_INTERNAL_LOG": "",
|
"LABEL_SETTINGS_EXPERIMENTAL_FPPS4_INTERNAL_LOG": "",
|
||||||
"DIV_SETTINGS_FPPS4_UPDATER": "",
|
"DIV_SETTINGS_FPPS4_UPDATER": "",
|
||||||
"LABEL_SETTINGS_ENABLE_LAUNCHER_FPPS4_UPDATES": "",
|
"LABEL_SETTINGS_ENABLE_LAUNCHER_FPPS4_UPDATES": "",
|
||||||
"LABEL_SETTINGS_FPPS4_UPDATE_BRANCH": ""
|
"LABEL_SETTINGS_FPPS4_UPDATE_BRANCH": "",
|
||||||
|
"LABEL_FPPS4_UPDATER_STATUS_LANG": ""
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
"emuStatusRunning": "模拟器运行中",
|
"emuStatusRunning": "模拟器运行中",
|
||||||
"logWindowTitle": "Running fpPS4",
|
"logWindowTitle": "Running fpPS4",
|
||||||
"killEmuStatus": "主进程被关闭 - 关闭日志窗口以继续",
|
"killEmuStatus": "主进程被关闭 - 关闭日志窗口以继续",
|
||||||
"logCleared": "INFO - 日志已被清除!\n ",
|
"logCleared": "INFO - 日志已被清除!",
|
||||||
"about": "fpPS4 Temmie's Launcher - 版本:%VARIABLE_0%\n由 TemmieHeartz 创建\n(https://twitter.com/themitosan)\n\nfpPS4 由 red-prig 创建\n(https://github.com/red-prig/fpPS4)\n\n插件 memoryjs 由 Rob-- 创建\n(https://github.com/rob--/memoryjs)\n\n插件 node-stream-zip 由 antelle 创建\n(https://github.com/antelle/node-stream-zip)\n\nSVG 图标来自 https://www.svgrepo.com/",
|
"about": "fpPS4 Temmie's Launcher - 版本:%VARIABLE_0%\n由 TemmieHeartz 创建\n(https://twitter.com/themitosan)\n\nfpPS4 由 red-prig 创建\n(https://github.com/red-prig/fpPS4)\n\n插件 memoryjs 由 Rob-- 创建\n(https://github.com/rob--/memoryjs)\n\n插件 node-stream-zip 由 antelle 创建\n(https://github.com/antelle/node-stream-zip)\n\nSVG 图标来自 https://www.svgrepo.com/",
|
||||||
"mainLog": "fpPS4 Temmie's Launcher - 版本: %VARIABLE_0%\n运行中的 nw.js (node-webkit) 版本: %VARIABLE_1% [%VARIABLE_2%]",
|
"mainLog": "fpPS4 Temmie's Launcher - 版本: %VARIABLE_0%\n运行中的 nw.js (node-webkit) 版本: %VARIABLE_1% [%VARIABLE_2%]",
|
||||||
"settingsErrorCreatePath": "ERROR - 无法创建文件夹!\n(%VARIABLE_0%)\n%VARIABLE_1%",
|
"settingsErrorCreatePath": "ERROR - 无法创建文件夹!\n(%VARIABLE_0%)\n%VARIABLE_1%",
|
||||||
|
@ -109,7 +109,8 @@
|
||||||
"LABEL_SETTINGS_EXPERIMENTAL_FPPS4_INTERNAL_LOG": "<label class=\"LABEL_settingsExperimental\">实验性功能</label> 在内部控制台显示 fpPS4 进程日志 (<code>stdout</code> 和 <code>stderr</code>) (按 F12 --> Console)",
|
"LABEL_SETTINGS_EXPERIMENTAL_FPPS4_INTERNAL_LOG": "<label class=\"LABEL_settingsExperimental\">实验性功能</label> 在内部控制台显示 fpPS4 进程日志 (<code>stdout</code> 和 <code>stderr</code>) (按 F12 --> Console)",
|
||||||
"DIV_SETTINGS_FPPS4_UPDATER": "fpPS4 更新程序",
|
"DIV_SETTINGS_FPPS4_UPDATER": "fpPS4 更新程序",
|
||||||
"LABEL_SETTINGS_ENABLE_LAUNCHER_FPPS4_UPDATES": "启用 fpPS4 更新程序",
|
"LABEL_SETTINGS_ENABLE_LAUNCHER_FPPS4_UPDATES": "启用 fpPS4 更新程序",
|
||||||
"LABEL_SETTINGS_FPPS4_UPDATE_BRANCH": "检测更新的分支"
|
"LABEL_SETTINGS_FPPS4_UPDATE_BRANCH": "检测更新的分支",
|
||||||
|
"LABEL_FPPS4_UPDATER_STATUS_LANG": ""
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue