系统相关
首页 > 系统相关> > CreateProcess创建UI进程并隐藏

CreateProcess创建UI进程并隐藏

作者:互联网

一直对多进程非常感兴趣,

你会发现现在绝大多数的windows应用都是多进程,

包括QQ,钉钉,chrome浏览器,nginx等等。

在新公司,也接触了个多进程的应用,但咱只能用,没法看到源码哈

由于太菜,只能自己瞎琢磨,可能是用 CreateProcess创建的进程

于是开始玩这个windows api 函数

当然,delphi的资源太少了,还好一般的c++能看懂,也勉强能翻译成D

上代码吧!

//定义一个进程结构体,主要用于传参
type ProcessWindow  = record

    dwProcessId: DWORD ;
    hwndWindow: HWND ;  
end;
  TProcessWindow = ^ProcessWindow;

因为要用到EnumWindows 窗口枚举函数,

此函数要用一个回调函数去回调处理

所以定义回调函数

// 查找进程主窗口的回调函数
function EnumWindowCallBack(hWnd:HWND ;lParam: LPARAM ): Boolean;stdcall;
var
  pProcessWindow: TProcessWindow;
   dwProcessId: DWORD;
begin

    GetWindowThreadProcessId(hWnd, dwProcessId);
    pProcessWindow := TProcessWindow(lParam);

    // 判断是否是指定进程的主窗口
    if (pProcessWindow.dwProcessId = dw

标签:函数,dwProcessId,CreateProcess,UI,进程,pProcessWindow,回调,隐藏,TProcessWindow
来源: https://blog.csdn.net/y281252548/article/details/120461051