System.Diagnostics.Process.Start(); 用法详解
来源:https://news.68idc.cn/buildlang/ask/20150104156981.html
实例代码:http://www.cppcns.com/ruanjian/csharp/499456.html
能做什么呢?它主要有以下几个功能:
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 = "";
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"); //系统重启命令
rundll32命令大全
命令列:rundll32.exe user.exe,restartwindows
功能: 系统重启
命令列:rundll32.exe user.exe,exitwindows
功能: 关闭系统
命令列: rundll32.exe shell32.dll,Control_RunDLL
功能: 显示控制面板
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,1
功能: 显示“控制面板-辅助选项-键盘”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,2
功能: 显示“控制面板-辅助选项-声音”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,3
功能: 显示“控制面板-辅助选项-显示”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,4
功能: 显示“控制面板-辅助选项-滑鼠”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,5
功能: 显示“控制面板-辅助选项-传统”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl @1
功能: 执行“控制面板-添加新硬体”向导。
命令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL AddPrinter
功能: 执行“控制面板-添加新印表机”向导。
System.Diagnostics.Process.Start(); 用法详解的更多相关文章
- System.Diagnostics.Process.Start的妙用
我们经常会遇到在Winform或是WPF中点击链接或按钮打开某个指定的网址, 或者是需要打开电脑中某个指定的硬盘分区及文件夹, 甚至是"控制面板"相关的东西, 那么如何做呢? 答案 ...
- System.Diagnostics.Process 执行.EXE
分类: C#+WINFORM 2009-04-05 21:09 459人阅读 评论(0) 收藏 举报 我们经常会遇到在Winform或是WPF中点击链接或按钮打开某个指定的网址, 或者是需要打 ...
- System.Diagnostics.Process.Star的用法
System.Diagnostics.Process.Start(); 能做什么呢?它主要有以下几个功能: 1.打开某个链接网址(弹窗). 2.定位打开某个文件目录. 3.打开系统特殊文件夹,如“控制 ...
- C# Process.Start()方法详解(转)
C# Process.Start()方法详解 System.Diagnostics.Process.Start(); 能做什么呢?它主要有以下几个功能: 1.打开某个链接网址(弹窗). 2.定位打开某 ...
- Hadoop生态圈-zookeeper的API用法详解
Hadoop生态圈-zookeeper的API用法详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.测试前准备 1>.开启集群 [yinzhengjie@s101 ~] ...
- CentOS 7.X 中systemctl命令用法详解
systemctl是RHEL 7 的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体.可以使用它永久性或只在当前会话中启用/禁用服务,下面来看CentOS 7.X 中 ...
- [转帖]强大的strace命令用法详解
强大的strace命令用法详解 文章转自: https://www.linuxidc.com/Linux/2018-01/150654.htm strace是什么? 按照strace官网的描述, st ...
- 2020了你还不会Java8新特性?(五)收集器比较器用法详解及源码剖析
收集器用法详解与多级分组和分区 为什么在collectors类中定义一个静态内部类? static class CollectorImpl<T, A, R> implements Coll ...
- C#中string.format用法详解
C#中string.format用法详解 本文实例总结了C#中string.format用法.分享给大家供大家参考.具体分析如下: String.Format 方法的几种定义: String.Form ...
- linux管道命令grep命令参数及用法详解---附使用案例|grep
功能说明:查找文件里符合条件的字符串. 语 法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>] ...
随机推荐
- XML02
组成部分: 1. 文档声明 1. 格式: 2. 属性列表: * version:版本号,必须的属性 * encoding:编码方式.告知解析引擎当前文档使用的字符集,默认值:ISO-8859-1 * ...
- python压缩解压文件
转载CSDN坏菠萝:https://blog.csdn.net/abcwanglinyong/article/details/80840813
- 流量加密之:使用Openssl反弹加密shell
流量加密之:使用Openssl反弹加密shell 目录 流量加密之:使用Openssl反弹加密shell 1 背景 2 生成SSL证书 3 Linux平台下 3.1 在Kali上使用 OpenSSL ...
- DIV 阴影
<div class="div">111</div> .div { width:200px; height:200px; box-shadow: 0 0 1 ...
- [{"morpherRegistry":{},"dynaClass":{"dynaProperties":[{"indexed":false,"mapp
将list存到json中后,json返回的内容是[{"morpherRegistry":{},"dynaClass":{"dynaProperties ...
- E-MU1212m(E-MU1616m)在Win10(Win11)中的驱动安装
创新(Creative)公司早期生产的专业PCI声卡E-MU1212m及E-MU1616m当前二手市场上的性价比非常高,但由于生产年代久远,其驱动程序最高只支持到Windows vista版本,经过实 ...
- Linux——CentOS7无法ping通外网问题
出现问题: 当在终端中出现 ping: unknown host www.baidu.com 或 ping: www.baidu.com: 未知的名称或服务 时,该如何解决? 解决方法: 1.使用ro ...
- Vulnhub:Player-v1.1靶机
kali:192.168.111.111 靶机:192.168.111.178 信息收集 端口扫描 nmap -A -v -sV -T5 -p- --script=http-enum 192.168. ...
- MySQL查询 根据时间字段的值的时分秒进行查询
例如,查询小于等于10:30的时间 SELECT * FROM 表名WHERE DATE_FORMAT(TranslateOverTime,'%H') <= 10 AND DATE_FORMA ...
- ES搜索- term与match区别&bool查询
term属于精确匹配,只能查单个词,tems可以匹配多个词(满足其中之一词的都会被搜索出来),多个词如果要同时匹配使用bool的must(must中带多个term): match进行搜索的时候,会先进 ...