• CreateProcess注意的几个地方


    1.CreateProcess失败,GetLastError返回998,应该是最后两个参数没有初始化导致的。

    2.要使外部程序隐藏窗口运行,需要将STARTUPINFO的dwFlags指定为STARTF_USESHOWWINDOW,并且将wShowWindow指定为SW_HIDE.

    3.第2条创建的进程确实是隐藏运行的,但是程序启动时会导致屏幕闪烁,为了避免屏幕闪烁我们应该创建一个桌面并指定给该进程的STARTUPINFO.

    HDESK hDesk = CreateDesktop(_T("MyDesk"), NULL, NULL, 0, GENERIC_ALL, NULL);
    ASSERT(hDesk);
                
    STARTUPINFO si = {sizeof(si)};
    si.lpDesktop = _T("MyDesk");
    si.dwFlags = STARTF_USESHOWWINDOW;
    si.wShowWindow = SW_HIDE;
                
    PROCESS_INFORMATION pi = {0};
    CreateProcess(g_strExePath + _T("DeleteFiles.exe"),
                  NULL, 
                  NULL, 
                  NULL, 
                  FALSE, 
                  CREATE_DEFAULT_ERROR_MODE | NORMAL_PRIORITY_CLASS, 
                  NULL, 
                  NULL, 
                  &si, 
                  &pi);
    CloseHandle(pi.hThread);
    CloseHandle(pi.hProcess);
  • 相关阅读:
    表格批量导入
    js——全选框 checkbox
    Sui 弹框固定
    【转】理解cookie和session机制
    【转】Session ID/session token 及和cookie区别
    下载表格
    金额转换
    货币 数字按格式转换
    超大文本相加
    csv文件的格式
  • 原文地址:https://www.cnblogs.com/mforestlaw/p/3566541.html
Copyright © 2020-2023  润新知