今日闲来无聊, 看到CSDN上有篇文章说关于 ShellExecute 函数的使用,突发奇想,如何利用 ShellExecute这个好东东来调用 cmd.exe 这个命令提示符程序并赋予一个值给它,让它自动进行 Ping 操作?
关键发现: 先打开MS-DOS 窗口研究,在命令提示字符下输入 cmd/? ,查看cmd.exe这个M$一直保留的程序的帮助,有了发现.
//=================================================================== unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls;
type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;
var Form1: TForm1;
implementation uses shellapi; {$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); begin ShellExecute (Handle,nil,'cmd.exe','/K ping 127.0.0.1',nil,SW_NORMAL); //-----这句是使用参数 /K,Ping完 IP 127.0.0.1 后,cmd.exe窗口静静的等你看结果哦...
//ShellExecute (Handle,nil,'cmd.exe','/C ping 127.0.0.1',nil,SW_NORMAL); //-----这句是使用参数 /C,Ping完 IP 127.0.0.1 后,cmd.exe窗口消失了... end; end.
//===================================================================== 一点感想: M$开发的程序一般都可以带参数运行,这个很好啊...带不同的参数,会有不同的最终结果.这点应该值得肯定. 
|