操作系统Windows2003,编译环境VS2008,我有如下这段程序用来启动其他程序的STARTUPINFO si;
memset(&si, 0, sizeof(STARTUPINFO));
si.cb = sizeof(STARTUPINFO);
si.dwFlags = STARTF_USESHOWWINDOW;
si.wShowWindow = SW_SHOW;
PROCESS_INFORMATION pi;
CreateProcess(NULL,_T("e:\\abc.exe"),NULL,NULL,FALSE,0,NULL,NULL,&si,&pi);开始还以为没什么问题,连编也没提示任何错误和警告。可是运行的时候老提示
"0x7c80ba99" 指令引用的 "0x00480c80" 内存。该内存不能为 "written"。
以前写类似的代码从来没这样问题,这段代码换到Dev-C++也没什么问题,后来想来
可能是因为Unicode字符集的事,把项目字符集改成 多字节字符集 后就OK了。
小弟Unicode程序写的少,以为只是把字符串加个_T()就行了,看来不只这样我实在不想因为这个问题而把项目改成非Unicode的
所以想请教各位先知在Unicode下怎么让这个函数正常呢
如果能给指条Unicode的明路就更好了
先感谢了
memset(&si, 0, sizeof(STARTUPINFO));
si.cb = sizeof(STARTUPINFO);
si.dwFlags = STARTF_USESHOWWINDOW;
si.wShowWindow = SW_SHOW;
PROCESS_INFORMATION pi;
CreateProcess(NULL,_T("e:\\abc.exe"),NULL,NULL,FALSE,0,NULL,NULL,&si,&pi);开始还以为没什么问题,连编也没提示任何错误和警告。可是运行的时候老提示
"0x7c80ba99" 指令引用的 "0x00480c80" 内存。该内存不能为 "written"。
以前写类似的代码从来没这样问题,这段代码换到Dev-C++也没什么问题,后来想来
可能是因为Unicode字符集的事,把项目字符集改成 多字节字符集 后就OK了。
小弟Unicode程序写的少,以为只是把字符串加个_T()就行了,看来不只这样我实在不想因为这个问题而把项目改成非Unicode的
所以想请教各位先知在Unicode下怎么让这个函数正常呢
如果能给指条Unicode的明路就更好了
先感谢了
解决方案 »
- 获取按钮句柄问题
- WindowProc中做鼠标提示信息的问题
- SDK方式创建进度条控件问题!!!
- vc在线中的内容越来越多了,如果您能在这里学到东西,请帮忙顶一下!
- ATL不使用MFC,ATLControls::CListViewCtrl控件对应怎样实现其标题栏的贴图和自画
- 如何用PreTranslateMessage屏蔽dialog的回车,ESC
- vs.net的问题
- 请教socket通信问题,两个不同电脑,都可连接外网,都有固定IP和端口
- 怎样在 RICHEDIT 中的光标位置上添加文本?
- 动态划分
- 关于IHTMLSelectElement的问题,没多少分,但肯请赐教,谢谢。
- VC列表控件重建表头
memset(&si, 0, sizeof(STARTUPINFO));
si.cb = sizeof(STARTUPINFO);
si.dwFlags = STARTF_USESHOWWINDOW;
si.wShowWindow = SW_SHOW;
PROCESS_INFORMATION pi;
TCHAR cmd[MAX_PATH] = _T("e:\\abc.exe");
CreateProcess(NULL,cmd,NULL,NULL,FALSE,0,NULL,NULL,&si,&pi);
please check msdn:
http://msdn.microsoft.com/en-us/library/ms682425(VS.85).aspxThe Unicode version of this function, CreateProcessW, can modify the contents of this string. Therefore, this parameter cannot be a pointer to read-only memory (such as a const variable or a literal string). If this parameter is a constant string, the function may cause an access violation.