windows API 函数 ShellExecute 的多种用法

来源:互联网 发布:淘宝双11手机领卷 编辑:程序博客网 时间:2024/04/30 10:21
      在一个网站看资料时,发现一个关于WINDOWS API函数的学习资料,翻译下来认初学者更快的了解这个API的使用。  

       ShellExecute的功能是运行一个外部程序(或者是打开一个已注册的文件、打开一个目录、打印一个文件等等),并对外部程序有一定的控制。

  有几个API函数都可以实现这些功能,但是在大多数情况下ShellExecute是更多的被使用的,同时它并不是太复杂。下面举例说明它的用法。

  • 开始一个新的应用程序

   ShellExecute(Handle, 'open', PChar('c:/test/app.exe'), nil, nil, SW_SHOW);

  • 打开记事本,并打开一个文件(系统能识别记事本应用程序的路径,因此我们不必使用绝对路径)

   ShellExecute(Handle, 'open', PChar('notepad'), PChar('c:/test/readme.txt'), nil, SW_SHOW);

  • 打印一个文档

   ShellExecute(Handle, 'print', PChar('c:/test/test.doc'), nil, nil, SW_SHOW);

   注意:可能你会看到word暂时的被打开,但它会自动关闭。

  • 打开一个HTML页面

   ShellExecute(Handle, 'open', PChar('http://www.festra.com/'), nil, nil, SW_SHOW);

  • 你能通过一个已经注册的文件类型来打开应用程序

   ShellExecute(Handle, 'open', 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窗口存在

   ShellExecute(Handle, 'open', PChar('command.com'), PChar('/k dir'), nil, SW_SHOW);