使用 ShellExecute 来进行 Ping 操作!

类别:Delphi 点击:0 评论:0 推荐:

今日闲来无聊, 看到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$开发的程序一般都可以带参数运行,这个很好啊...带不同的参数,会有不同的最终结果.这点应该值得肯定.

本文地址:http://com.8s8s.com/it/it4701.htm