怎么生成批处理文件,并运行它?如有一个DOS程序,给它加上一些参数,再运行。应该怎么做呢?!请高手指教!!
解决方案 »
- 求助:当我单击 button1 ,希望提示我是否真的运行下面的程序,如果我选择 是,则运行,选择否,则退出,谢谢!
- 删除数据时出现一个奇怪的问题
- 哈哈,终于找到了 发新帖子的连接!
- 在Delphi中如何实现用条码机打印条形码?
- 按例子做了个磁盘格式化的程序,可不知道为什么运行不起来.高手请进
- 请教怎样在线更新本地数据?
- 为什么我不能用sin()画一条曲线呢?
- DELPHI查询数据库提取结果的问题
- 数据删除奇怪
- 请问怎样在Button中添加代码打印Image控件里面的图片?
- 麻烦问一下,李维的三本书中用的控件是什么版本的delphi5,为什么我的professional的典型安装没有,要最大安装吗?
- 请问:如何用Delphi制作动态报表?
或用shellexec也可以直接将参数传给程序,
类似命令还有createprocess,可以控制不显示dos窗口,以及得到其返回内容
BatchFile: TextFile;
BatchFileName: string;
ProcessInfo: TProcessInformation;
StartUpInfo: TStartupInfo;
begin
BatchFileName := ChangeFileExt(Paramstr(0),'.bat');
AssignFile(BatchFile, BatchFileName);
Rewrite(BatchFile);
// build cmd batch file
Writeln(BatchFile, 'dir');
Writeln(BatchFile, 'cd\');
...
CloseFile(BatchFile);
FillChar(StartUpInfo, SizeOf(StartUpInfo), $00);
StartUpInfo.dwFlags := STARTF_USESHOWWINDOW;
StartUpInfo.wShowWindow := SW_HIDE;
// create hidden process
if CreateProcess(nil, PChar(BatchFileName), nil, nil,False, IDLE_PRIORITY_CLASS,
nil, nil, StartUpInfo,ProcessInfo) then
begin
CloseHandle(ProcessInfo.hThread);
CloseHandle(ProcessInfo.hProcess);
end;
end;一个DOS程序,给它加上一些参数?
ShellExecute或WinExec都可以,但WinExec没有那么多参数设置