读书人

Createporcess出错找不到指定文件

发布时间: 2012-03-31 13:13:26 作者: rapoo

Createporcess出错,找不到指定文件,崩溃ing
C的代码很简单,对照着网上的例子查了很多遍,跟别人的一样,就是不知道为什么运行不了?开发环境是Visual Studio 2010
#include <windows.h>


int main(int argc,char **argv)
{
char cmd[122],dic[120],unicmd[200];
STARTUPINFO info;
int nRes;
PROCESS_INFORMATION pinfo;
strcpy(cmd,"notepad.exe");
strcpy(dic,"C:\\WINDOWS\\");
memset(&info,0,sizeof(info));
info.cb = sizeof(info);
info.wShowWindow = TRUE;
info.lpReserved =NULL;
info.lpDesktop = NULL;
info.cbReserved2 = NULL;
info.lpReserved2 =NULL;
info.dwFlags = 0;
info.wShowWindow=SW_SHOW;
info.dwFlags=STARTF_USESHOWWINDOW;
memset( &pinfo, 0,sizeof(pinfo));

nRes=CreateProcess(dic,cmd,NULL,NULL,FALSE,NORMAL_PRIORITY_CLASS, NULL,NULL,&info,&pinfo);
if(!nRes)
{
printf("create err=%d\n",GetLastError());

}
getchar();

}

其中dic和cmd试过各种组合
dic="C:\\WINDOWS\\notepad.exe",cmd=NULL
dic=NULL,cmd="C:\\WINDOWS\\notepad.exe"
……
各种组合都不行,请教。

[解决办法]
不要用Unicode
[解决办法]
如果不行直接联系我

探讨
1.strcpy(cmd,"C:\\WINDOWS\\notepad.exe");
2.修改如下:
nRes=CreateProcess(NULL,cmd,NULL,NULL,FALSE,NORMAL_PRIORITY_CLASS, NULL,NULL,&info,&pinfo);

这样就可以

[解决办法]
用 CreateProcessA()试试

读书人网 >C语言

热点推荐