在WinXP中如何隐藏进程窗口(从任务栏)来创建进程?与CreateProcess功能? [英] How could i Create a process with hiding the process window (from the task bar) in winXP? with CreateProcess function?

查看:120
本文介绍了在WinXP中如何隐藏进程窗口(从任务栏)来创建进程?与CreateProcess功能?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

 /* CreateProcess initialization */
 STARTUPINFO si;
 PROCESS_INFORMATION pi;

 memset(&si, 0, sizeof(si));
 memset(&pi, 0, sizeof(pi));
 si.cb = sizeof(si);

 long ret;
 // si.wShowWindow = SW_HIDE;
 // hide process window.... // run in background..

 si.dwFlags = STARTF_USESHOWWINDOW;
 si.wShowWindow = SW_HIDE;

 if (!CreateProcess(0, exe,
        0, 0, 1, NORMAL_PRIORITY_CLASS, 0, 0, &si, &pi)) {
    return;
 }
 //int prez = WaitForSingleObject(pi.hProcess, INFINITE);

 //CloseHandle(pi.hProcess);


推荐答案

您可以尝试设置dwFlags 成员rel = noreferrer> STARTUPINFO 结构到 STARTF_USESHOWWINDOW wShowWindow SW_HIDE 的成员。

You can attempt to set the dwFlags member of your STARTUPINFO structure to STARTF_USESHOWWINDOW and the wShowWindow member to SW_HIDE.

这将使 CreateProcess()传递0作为nCmdShow 参数.aspx rel = noreferrer> WinMain 。但是,并非所有Windows应用程序的行为都很好,并在初始调用 ShowWindow()时使用此值。

This will make CreateProcess() pass 0 as the nCmdShow parameter of WinMain. However, not all Windows application are well behaved and use this value to the initial call to ShowWindow().

这篇关于在WinXP中如何隐藏进程窗口(从任务栏)来创建进程?与CreateProcess功能?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆