我有一个用C ++编写的dll,我注入了java.exe
我想生成/分配一个我可以观看的控制台。
在我知道将dll注入win32应用程序时,我已经使用过此代码。但是为什么不能在java.exe加载或注入java.exe时工作?
这是std in / out的控制台产生/重定向。
void InitDebugConsole() {
int hCrtIn, hCrtOut;
FILE *conIn, *conOut;
AllocConsole();
hCrtIn = _open_osfhandle ((int) GetStdHandle(STD_INPUT_HANDLE), _O_TEXT);
hCrtOut = _open_osfhandle ((int) GetStdHandle(STD_OUTPUT_HANDLE), _O_TEXT);
conIn = _fdopen( hCrtIn, "r" );
conOut = _fdopen( hCrtOut, "w" );
*stdin = *conIn;
*stdout = *conOut;
}
几乎我的问题是java.exe以某种方式阻止了控制台的分配。