当前位置:首页 > Windows程序 > 正文

Run bat file in Delphi

2021-03-25 Windows程序

unit Map;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;

type
  TForm1 = 
class(TForm)
    mmo1: TMemo;
    btn1: TButton;
    edtUserName: TEdit;
    lbl1: TLabel;
    edtPassword: TEdit;
    Label1: TLabel;
    edtShareFolder: TEdit;
    Label2: TLabel;
    btn2: TButton;
    procedure btn1Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure btn2Click(Sender: TObject);
  
private
    { Private declarations }
  
public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btn1Click(Sender: TObject);
var
CreateBatFile: TstringList; 
//用来创建Bat文件
BatchFilePath: TextFile;  //Bat文件的路径
Command : string;      //用来执行的命令
begin
CreateBatFile :=TStringList.Create;  
//创建一个字符串文件
CreateBatFile.SaveToFile(‘C:\Temp\MapScanDriver.bat‘); //在C:\Temp目录上创建一个bat文件
CreateBatFile.Free;
AssignFile(BatchFilePath,
‘C:\Temp\MapScanDriver.bat‘);
Rewrite(BatchFilePath); 
//清空
CloseFile(BatchFilePath);
Command :=
‘net use H: "‘;    //构造命令
command := command + edtShareFolder.Text +‘"  "‘;
command := Command + edtPassword.Text +  
‘" /user:"‘;
command := Command  + edtUserName.Text + 
‘"‘;
mmo1.Lines.Add(Command); 
//命令copy到memo控件上

mmo1.Lines.SaveToFile(
‘C:\Temp\MapScanDriver.bat‘); //memo控件上的命令行直接保存到bat文件
WinExec(‘C:\Temp\MapScanDriver.bat‘, SW_SHOWNORMAL); //执行命令


end;

procedure TForm1.btn2Click(Sender: TObject);
begin
mmo1.Lines.Clear;
edtUserName.Clear;
edtPassword.Clear;
edtShareFolder.Clear;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
mmo1.Lines.Clear;
mmo1.Lines.SaveToFile(
‘C:\Temp\MapScanDriver.bat‘);  //给bat文件写空
end;

end.

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/67016.html