通过 CreateProcess 启动控制台程序 telnet, telnet 一运行就立即退出了, 为什么 ? 你遇到过吗 ? 急
zxr65 2009-05-31 04:58:05 STARTUPINFO sInfo;
PROCESS_INFORMATION pInfo;
ZeroMemory(&sInfo, sizeof STARTUPINFO);
ZeroMemory(&pInfo, sizeof PROCESS_INFORMATION);
sInfo.cb = sizeof(STARTUPINFO);
sInfo.dwFlags = STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW;
sInfo.wShowWindow = SW_HIDE;
HANDLE hrFile, hwFile;
if(!CreatePipe(&hrFile, &hwFile,
&security, NULL))
{
return;
}
HANDLE hStdO = CreateFile("ttttt",
FILE_APPEND_DATA,
FILE_SHARE_WRITE | FILE_SHARE_READ,
&security,
OPEN_ALWAYS,
FILE_ATTRIBUTE_NORMAL,
NULL);
if (INVALID_HANDLE_VALUE == hStdO)
{
return;
}
sInfo.hStdInput = hrFile;
sInfo.hStdOutput = hStdO;
sInfo.hStdError = hStdO;
BOOL bRetVal = CreateProcess("C:\\WINDOWS\\system32\\telnet.exe", "127.0.0.1", NULL, NULL, TRUE,
CREATE_NEW_CONSOLE | CREATE_NO_WINDOW, NULL, NULL, &sInfo, &pInfo);
......
telnet 一启动起来就退出了, 你遇到过吗 ?