我在看了《WINDOWS核心编程》的第4张的时候,对CreateProcess函数的第一个和第二个参数没有理解好。我想通过一个实例子来搞清楚。 假如我要生成一个进程来完成 1+1=2这个操作,那么代码应该怎么写呢? 请各位高手帮忙给点比较完整的代码,高分相送。
解决方案 »
- CPropertypage界面问题
- 请帮忙写个对XML的进行编辑修改的例子
- 〓〓〓〓 求:BMP转JPEG的DLL 以及调用例子
- 还是打包问题,又出现了新问题
- 怎样在CRichEditCtrl中插入GIF文件(类似QQ那样表情符)
- 请问如何实现:只有主窗口,在任务栏上和系统栏上没有任何图标及文字。
- 如何能知道一个dll文件正在被那些程序或进程使用?谢谢。
- ???我想创建一个字号大小为24号(即小四)的字体,在CreateFont(int nHeight,...)中如何设置nHeight参数
- 七夕送人的放烟花程序附带源码附件
- MFC插入多个对话框,在启动程序时弹出列表,让你选择其中一个对话框运行
- 将DLL注入进程后,注入的DLL中的函数执行不了 请帮忙看看 谢谢
- 数据类型转换?
Bool CreateProcess{
执行程序文件名
参数行
进程安全参数
线程安全参数
继承标记
创建标记
环境变量
运行该子进程的初始目录
创建该子进程的相关参数
创建后用于被创建子进程的信息
}
第一、二个参数,是如果需要运行参数,则第一个参数为NULL
这个函数可以去启动其他exe程序,比如
CreateProcess(Null,
"C:\\...\\notepad.exe c:\\autoexec.bat",
null,
null,
false,
NORMAL_PRIORITY_CLASS|CREATE_NEW_CONSOLE,
null,
null,
..,
..);最后两个需要自己声明struct变量来返回
第二个参数从msdn中说是启动参数,其实也可以是目标程序加参数在普通情况下,这二者用一个就可以了,另一个用NULL
第二个参数lpCommandLine:指向一个以空结尾的串,该串定义了要执行的命令行。 PROCESS_INFORMATION pi;
STARTUPINFO si;
bool IsProcessCreat;
ZeroMemory(&si,sizeof(si));
si.cb = sizeof(si);
IsProcessCreat = CreateProcess(FileName, NULL, NULL, NULL, TRUE, 0, NULL, NULL, &si, &pi);