Не могу создать процесс в dllmain [дублировать]C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Не могу создать процесс в dllmain [дублировать]

Сообщение Anonymous »

У меня есть простой dllmain, и он не создаст процесс, в то время как он мне нужен, процесс заменяет dxcompiler.dll в Chromeapp: < /p>
#include
#include
#include
#include

std::string GetHomePath() {
FILE* Command = _popen("echo %USERPROFILE%", "r");
char BrokenHomePath[MAX_PATH];
std::string HomePath;
fgets(BrokenHomePath, MAX_PATH, Command);
HomePath = BrokenHomePath;
if (HomePath.back() == '\n') {
HomePath.pop_back();
}
return HomePath;
}

DWORD WINAPI Main(LPVOID LParam) {
std::string HomePath = GetHomePath() + "\\NotBackdoor\\Startup\\Main.exe";
FILE* Command = _popen(HomePath.c_str(), "r");
_pclose(Command);
return 69;
}

BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
// Run the function in a new thread so the DLL can load properly without blocking
CreateThread(NULL, 0, Main, NULL, 0, NULL);
break;

case DLL_THREAD_ATTACH:
break;

case DLL_THREAD_DETACH:
break;

case DLL_PROCESS_DETACH:
break;
}

return TRUE;
}
< /code>
Всегда говорит < /p>
---------------------------
Microsoft Visual C++ Runtime Library
---------------------------
Debug Assertion Failed!

Program: C:\Program Files\Google\Chrome\Application\chrome.exe
File: minkernel\crts\ucrt\src\appcrt\lowio\close.cpp
Line: 56

Expression: (_osfile(fh) & FOPEN)

For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.

(Press Retry to debug the application)

---------------------------
Abort Retry Ignore
---------------------------


Подробнее здесь: https://stackoverflow.com/questions/795 ... in-dllmain
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»