Process.Start()

来源:互联网 发布:数据库审计作用 编辑:程序博客网 时间:2024/06/06 08:55

转载出处:http://www.wishdown.com/article/5681.html

System.Diagnostics.Process.Start(); 能做什么呢?它主要有以下几个功能:

1、打开某个链接网址(弹窗)。

2、定位打开某个文件目录。

3、打开系统特殊文件夹,如“控制面板”等。

那么它是怎么实现这几个功能的呢?在讲应用前,我们先来看看Process.Star()的构造方法。

 

名称说明Process.Start ()启动(或重用)此 Process 组件的 StartInfo 属性指定的进程资源,并将其与该组件关联。Process.Start (ProcessStartInfo)启动由包含进程启动信息(例如,要启动的进程的文件名)的参数指定的进程资源,并将该资源与新的 Process 组件关联。Process.Start (String)通过指定文档或应用程序文件的名称来启动进程资源,并将资源与新的 Process 组件关联。Process.Start (String, String)通过指定应用程序的名称和一组命令行参数来启动一个进程资源,并将该资源与新的 Process 组件相关联。Process.Start (String, String, SecureString, String)通过指定应用程序的名称、用户名、密码和域来启动一个进程资源,并将该资源与新的 Process 组件关联起来。Process.Start (String, String, String, SecureString, String)通过指定应用程序的名称和一组命令行参数、用户名、密码和域来启动一个进程资源,并将该资源与新的 Process 组件关联起来。

 

(1) publicbool Start ()
 

System.Diagnostics.Process process = new System.Diagnostics.Process();

process.StartInfo.FileName = "iexplore.exe";   //IE浏览器,可以更换
 

process.StartInfo.Arguments = "http://www.baidu.com";

process.Start();


 

(2) publicstaticProcessStart (ProcessStartInfostartInfo)
 

System.Diagnostics.ProcessStartInfo processStartInfo = new System.Diagnostics.ProcessStartInfo();

processStartInfo.FileName = "explorer.exe";  //资源管理器
 

processStartInfo.Arguments = @"D:\";

System.Diagnostics.Process.Start(processStartInfo);


 

(3) publicstaticProcessStart (stringfileName)

System.Diagnostics.Process.Start(@"D:\Program Files\Tencent\QQ\Bin\QQ.exe");  //直接调用打开文件


 

(4) Process.Start (StringfileName, Stringarguments

System.Diagnostics.Process.Start("explorer.exe", "D:\\Readme.txt");   //直接打开文件Readme.txt


 

上面已经举例了用process.start()打开网站的方法,现在讲讲用processs.star()定位到某个文件的方法。

这种定位方法类似于快捷方式上的查找目标://explorer /select,"D:\Program Files\Tencent\QQ\Bin\QQ.exe"
 String path = @"D:\Program Files\Tencent\QQ\Bin\QQ.exe";
 System.Diagnostics.Process.Start("explorer.exe", "/select," +path);  //定位打开D:\Program Files\Tencent\QQ\Bin文件目录并选中了QQ.exe
 注意:/select后还有个逗号(,)。
 接下来来讲讲通过调用rundll32.exe来打开一些系统特定文件,先简单介绍下rundll32.exe的功能和作用。

顾名思义,rundll32就是"执行32位的dll文件",也就是执行dll文件中的内部函数,可以以命令行的形式调用windows32位的动态链接库。

同理,rundll.exe就是"执行16位的dll文件",调用的是16位的动态链接库。我们通过rundll32.exe执行指令来完成一些功能。

举个例子:

System.Diagnostics.Process.Start("rundll32.exe","user.exe,restartwindows");      //系统重启命令

0 0
原创粉丝点击