在关机时,想执行一个自定义的java程序完成一些功能,就做了一个钩子,
但WinExec(), ShellExecute(), CreateProcess()都试了,但报运行成功了,
但实际没有执行。 请教大家了。下了 hHook=SetWindowsHookEx(WH_CALLWNDPROC,
MyProc,
GetModuleHandle("Hook.dll"),
NULL);  个钩子。在MyProc()中实现了,
                      nCount++;
STARTUPINFO si;
ZeroMemory(&si, sizeof(si));  
PROCESS_INFORMATION  pi;
fl=fopen("d:\\keyfile.txt", "a+" );
fwrite("before4 \n          ",13 ,1, fl);
    flag = CreateProcess(NULL, "Cjava d:\\hook.class", NULL, NULL, false, 0, NULL, NULL, &si, &pi);
if (flag){
fwrite("success  !!         \n          ",20 ,1, fl);
WaitForSingleObject(pi.hProcess, INFINITE);
}
else
fwrite("fail!!         \n          ",20 ,1, fl);
fwrite("after4 \n          ",13 ,1, fl);
fclose(fl);                               CreateProcess已经成功了,但实际上并没有执行, 是什么问题啊!