启动另一个程序,并控制他 ( 积分: 27 )

  • 主题发起人 主题发起人 小飞龙
  • 开始时间 开始时间

小飞龙

Unregistered / Unconfirmed
GUEST, unregistred user!
我需要启动一个程序,隐藏方式.<br>&nbsp;&nbsp;WinExec('C:/PreInstaller.exe',SW_HIDE);<br>&nbsp;&nbsp;//ShellExecute(0,'open','C:/PreInstaller.exe',nil,nil,SW_HIDE);<br>function&nbsp;WinExecExW(FileName:&nbsp;pchar;&nbsp;visiable:&nbsp;integer):&nbsp;DWORD;<br>var<br>&nbsp;&nbsp;StartupInfo:&nbsp;TStartupInfo;<br>&nbsp;&nbsp;ProcessInfo:&nbsp;TProcessInformation;<br>begin<br>&nbsp;&nbsp;FillChar(StartupInfo,&nbsp;SizeOf(StartupInfo),&nbsp;#0);<br>&nbsp;&nbsp;StartupInfo.cb&nbsp;:=&nbsp;SizeOf(StartupInfo);<br>&nbsp;&nbsp;StartupInfo.dwFlags&nbsp;:=&nbsp;STARTF_USESHOWWINDOW;<br>&nbsp;&nbsp;StartupInfo.wShowWindow&nbsp;:=&nbsp;SW_HIDE;<br>&nbsp;&nbsp;//StartupInfo.dwX:=100;<br>&nbsp;&nbsp;//StartupInfo.dwY:=10;<br>&nbsp;&nbsp;if&nbsp;not&nbsp;CreateProcess(FileName,&nbsp;nil,&nbsp;nil,&nbsp;nil,&nbsp;false,&nbsp;NORMAL_PRIORITY_CLASS,&nbsp;nil,&nbsp;nil,<br>&nbsp;&nbsp;&nbsp;&nbsp;StartupInfo,&nbsp;ProcessInfo)&nbsp;then<br>&nbsp;&nbsp;&nbsp;&nbsp;result&nbsp;:=&nbsp;0<br>&nbsp;&nbsp;else<br>&nbsp;&nbsp;begin<br>&nbsp;&nbsp;&nbsp;&nbsp;WaitForSingleObject(processinfo.hProcess,&nbsp;INFINITE);<br>&nbsp;&nbsp;&nbsp;&nbsp;GetExitCodeProcess(ProcessInfo.hProcess,&nbsp;Result);<br>&nbsp;&nbsp;&nbsp;&nbsp;CloseHandle(ProcessInfo.hProcess);<br>&nbsp;&nbsp;&nbsp;&nbsp;CloseHandle(ProcessInfo.hThread);<br>&nbsp;&nbsp;end;<br>end;<br><br>几种方法都不行.<br>想用<br>&nbsp;&nbsp;//StartupInfo.dwX:=100;<br>&nbsp;&nbsp;//StartupInfo.dwY:=10;<br>改变程序的位置也做不到.谁有办法.
 
应用程序是mfc写的一个对话框,就一个对话框,我想发消息给他的一个button,然后关闭.<br>这个过程不想给用户看到,不知道怎么回事就是失败!
 
用&nbsp;findwindow&nbsp;查找窗体句柄,根据窗体句柄用findcontol&nbsp;查找&nbsp;button&nbsp;句柄
 
把程序启动而已,还做什么了呢?
 
启动后窗体上有个按钮,需要发个消息给这个按钮,就是要点击这个按钮,这个按钮会弹出一个对话框,我还需要再找到这个对话框,把他关了。整个过程希望都是隐藏的。
 
多人接受答案了。
 
后退
顶部