Delphi编程调用指定的Windows程序

Delphi编程调用指定的Windows程序,第1张

Delphi编程调用指定的Windows程序,第2张

WinExec按钮用于调用指定的带有WinExec函数的Windows程序。ShellExecute按钮用于通过ShellExecute函数调用指定的Windows程序。CreateProcess按钮和TerminateProcess按钮用于实现对被调用程序更全面的操作。前者用于调用指定的Windows程序,后者用于终止被调用的Windows程序。

以WinExec函数的方式调用指定的Windows程序的响应代码如下:

过程t form 1 . btnwineecclick(发送方:to object);
begin
WinExec(' notepad . exe ',SW _ MAXIMIZE);
end;

WinExec函数的第一个参数表示被调用程序的路径和名称,第二个参数表示程序的显示方式。

以ShellExecute函数的形式调用指定的Windows程序的响应代码如下:

过程TForm1.btnShellExecuteClick(发送方:to object);
begin
ShellExecute(应用程序。Handle,' Open ',' NotePad.exe ',PChar('C:\AutoExec.bat '),nil,SW _ show normal);
end;

ShellExecute用于打开与指定文件关联的程序文件。第一个参数用于指定窗口的句柄;第二个参数指定程序运行的类型,如“打开”或“打印”;第三个参数指定要打印或用相关程序打开的程序名或文件名;如果在第三个参数中指定了可执行文件,那么第四个参数就是传递给执行程序的参数;第五个参数指定可执行程序的完整路径。最后一个参数用于设置程序的运行模式。

下面介绍如何使用CreateProcess函数和TerminateProcess函数实现对被调用程序更全面的操作。

首先,定义三个全局变量:

PI:TProcessInformation;
SI:TStartUpInfo;
my handle:thand le;
用CreateProcess函数调用指定程序的响应代码如下:
procedure form 1 . btncreateprocessopenclick(sender:to object);
begin
FillChar(SI,sizeof(SI),# 0);
with SI do
begin
CB:= sizeof(SI);
dw flags:= StartF _ UsesTDHandles或STARTF _ USESHOWWINDOW
LP title:= nil;
wshow window:= SW _ Show;
end;
CreateProcess(PChar(' C:\ WINNT \ notepad . exe '),
nil,nil,nil,true,DETACHED_PROCESS,nil,nil,SI,PI);
end;
调用CreateProcess函数激活C:\WINNT\Notepad.exe程序后,将其进程信息存储在变量PI中,然后通过以下语句关闭该实例中打开的C:\WINNT\Notepad.exe程序:
proceduretform 1 . btncreateprocesscloseclick(sender:object
begin
my handle:= open PROCESS(PROCESS _ ALL _ Access,FALSE,PI . dwprocessid);
termin ate process(my handle,0);
end;

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » Delphi编程调用指定的Windows程序

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情