edisonfeng 发表于 2013-1-1 22:27:43

进程间的相互调用与参数传递【Delphi版】

<div id="cnblogs_post_body">一、主要场景
      a)主程序启动另外一个程序,并传递参数
      b)主进程向一个已经运行中的程序传递参数
二、代码
    1)调用程序:
<div class="cnblogs_code">varHWND: DWORD;ApplicationHWND:DWORD;beginHWND:=FindWindow('TFrmMain', '参数接收窗口');ApplicationHWND:=GetWindow(HWND,GW_OWNER);if HWND <> 0 thenbegin   memo1.Lines.Add('参数接收程序已运行,向参数接收窗口投递消息。。。');   SendMessage(HWND,WM_TEST,0,0);   SetForegroundWindow(HWND);   SetActiveWindow(HWND);   ShowWindow(ApplicationHWND,   SW_RESTORE);    // ShowWindow(HWND, SW_SHOWNORMAL); --此种方式会造成被调用的窗口无法最小化。。。endelsebegin   memo1.Lines.Add('参数接收程序未运行,启动程序的同时传递参数。。。');   ShellExecute(Handle, 'Open', '..\ParamReceiver\ParamReceiver.exe', '参数1 参数2', nil, SW_SHOWNORMAL);end;end;
页: [1]
查看完整版本: 进程间的相互调用与参数传递【Delphi版】