[8D]
启动外部程序我们可以使用函数Winexec、ShellExecute和ShellExecuteEx。我推荐大家使用函数ShellExecute,因为它既灵活,又简单。看看下面的例子,用法就清楚了:
*: 启动一个程序
ShellExecute(Handle,'open',PChar('c:/test/app.exe'),nil,nil,SW_SHOW);
Winexec(pchar(edit1.text),sw_restore);
* 启动记事本 (因为记事本在系统路径下,所以不必写完整的路径名了):
ShellExecute(Handle, 'open', PChar('notepad'),nil, nil, SW_SHOW);
* 启动记事本并加载一个纯文本文件:
ShellExecute(Handle, 'open', PChar('notepad'),PChar('c:/test/readme.txt', nil, SW_SHOW);
* 使用记事本打开一个纯文本文件 (请确定*.txt文件被关联到记事本):
ShellExecute(Handle, 'open', PChar('c:/test/readme.txt'),nil, nil, SW_SHOW);
* 使用默认浏览器打开网址:
ShellExecute(Handle, 'open', PChar('http://www.festra.com/'),nil, nil, SW_SHOW);
* 打印一个文件:
ShellExecute(Handle, 'print', PChar('c:/test/readme.txt'),nil, nil, SW_SHOW);
* 用Windows Explorer打开一个文件夹:
ShellExecute(Handle, 'explore', PChar('c:/windows)',nil, nil, SW_SHOW);
* 运行一个DOS命令并立即返回:
ShellExecute(Handle, 'open', PChar('command.com'), PChar('/c copy file1.txt file2.txt'), nil, SW_SHOW);
* 运行一个DOS命令并保持DOS窗口打开 ("stay in DOS"):
ShellExecute(Handle, 'open', PChar('command.com'), PChar('/k dir'), nil, SW_SHOW);
[
]