Creates a process using the specified execFile path and injects the DLL into the process at startup.
- Parameters:
-
| dllPath | Path to DLL file to inject into process |
| execFile | Path of executable file to start |
| commandLine | full command line to pass |
| passData | Ptr to data to pass to DLL, or null for none. |
| passDataLen | Length of data to pass, or 0 for none. |
- Returns:
- CATResult 0 on success
Definition at line 318 of file CATDLLInjector.cpp.
References CAT_ERR_EXE_NOT_PE_FORMAT, CAT_ERR_FILE_NOT_FOUND, CAT_ERR_PROCESS_CREATE, CAT_ERR_READING_TARGET_EXEC, CAT_ERR_UNPATCH_TIMEOUT, CAT_STAT_FILE_AT_EOF, CAT_SUCCESS, CATFAILED, CATRESULT, CATRESULTFILE, CATStreamFile::Close(), CATFileOffset::dOffset, CATFileOffsetSplit::highOffset, kAsmPatch, kDLLNameOffAddr, kDLLNameOffset, kGetProcAddress, kGetProcAddressOffset, kHostBufferOffset, kHostProcOffset, kLoadLibraryAddress, kLoadLibraryOffset, kPassDataLenOffset, kPassDataOffset, kPatchSizeOffset, kStartLocOffset, kStartLocReturn, kUnpatchFuncNameAddress, kUnpatchFuncOffset, CATFileOffsetSplit::lowOffset, CATStreamFile::Open(), patchSize, CATFileOffset::qOffset, CATStreamFile::Read(), CATStream::READ_ONLY, CATStreamFile::SeekAbsolute(), and startLoc.
Referenced by GASPilot::StartGame().