czjmaster 2017-10-22 15:44 采纳率: 75%
浏览 3178
已采纳

关于CreateProcess()函数的使用

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

  • 写回答

1条回答 默认 最新

  • csulizhang 2017-10-23 09:19
    关注
    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,开启微信,可以
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!