关于CreateProcess()函数的使用

初学,不知道该函数能否执行非C盘的某个应用程序?假设D:\Tencent\QQGame.exe
这样的 能否执行?可以的话请将具体代码实现并加以注释。谢谢图片说明

STARTUPINFO si;//程序的启动信息(清零)
PROCESS_INFORMATION pi;
memset(&si, 0, sizeof(STARTUPINFO));
si.dwFlags = STARTF_USESHOWWINDOW;
si.wShowWindow = SW_SHOW;
si.cb = sizeof(STARTUPINFO);//设定启动信息结构大小

BOOL ok = ::CreateProcess(
    L"D:\\Program Files (x86)\\Tencent\\WeChat\\WeChat.exe",//启动程序路径名称(可以为空,在下面一个参数命令行直接指定完整路径)
    NULL,//注意路径的\要带转移字符"\"
    NULL,//使用默认进程安全属性
    NULL,//使用默认线程安全属性
    FALSE,//句柄不继承
    NORMAL_PRIORITY_CLASS,//使用正常优先级
    NULL,//使用父进程的环境变量
    NULL,//指定工作目录
    &si,//子进程主窗口如何显示
    &pi);//用于存放新进程的返回信息
//这样在创建成功这后我们就可以从pinfo中找到它的:进程句柄,线程句柄,进程ID,线程ID
system("pause");

测试过能用的,我电脑上没有QQGAME,开启微信,可以