用delphi写的一个小程序生成的可执行程序
如Demo.Exe在用delphi写一个来调用Demo.exe
要求打开并隐藏
我用
Instance1:=ShellExecute(handle,pchar('open'),pchar('Demo.exe'),'','',SW_HIDE);
不行,打开了但没有隐藏ShowWindow(Instance1,SW_HIDE);也不行,请问怎么办
如Demo.Exe在用delphi写一个来调用Demo.exe
要求打开并隐藏
我用
Instance1:=ShellExecute(handle,pchar('open'),pchar('Demo.exe'),'','',SW_HIDE);
不行,打开了但没有隐藏ShowWindow(Instance1,SW_HIDE);也不行,请问怎么办
ShellExecute(handle,pchar('open'),pchar('Demo.exe'),'/min','',SW_HIDE);
begin
winexec('Demo.exe',SW_SHOW);
showwindow(findwindow('Demo.exe主窗口的类名',nil),SW_HIDE);
end;
function WinExec_NoShow(FileName:String):THANDLE;
var
zAppName:array[0..512] of char;
zCurDir:array[0..255] of char;
WorkDir:String;
StartupInfo:TStartupInfo;
ProcessInfo:TProcessInformation;
returnresult:DWORD;
i: integer;
begin
StrPCopy(zAppName,FileName);
WorkDir := ExtractFilePath(ParamStr(0));
StrPCopy(zCurDir,WorkDir);
FillChar(StartupInfo,Sizeof(StartupInfo),#0);
StartupInfo.cb := Sizeof(StartupInfo);
StartupInfo.dwFlags := STARTF_USESHOWWINDOW;
StartupInfo.wShowWindow := SW_SHOWDEFAULT;
if CreateProcess(nil,
zAppName, { pointer to command line string }
nil, { pointer to process securityattributes }
nil, { pointer to thread security attributes }
false, { handle inheritance flag }
CREATE_SUSPENDED,
nil, { pointer to new environment block }
nil, { pointer to current directory name }
StartupInfo, { pointer to STARTUPINFO }
ProcessInfo) { pointer to PROCESS_INF }
then
Result := ProcessInfo.hThread
else
Result := NULL;
end;
var
Instance1: THandle;
begin
Instance1 := WinExec_NoShow(''Demo.exe');
end;
进如
而DELPHI中主程序的句柄与各窗口的句柄是不同的,你最好先用SP++看一下你要隐藏的窗口的句柄,然后再说哦!
为什么SW_HIDE没有用啊,怎么隐藏不到
为什么SW_HIDE没有用啊,怎么隐藏不到
_______________________________DELPHI中主程序的句柄与各窗口的句柄是不同的,你最好先用SP++看一下你要隐藏的窗口的句柄,然后再说哦!
只是通过我的确认后才让它显示
这个应该可以吧
不过没返回句柄,需要的话自己打开个吧