ProcessStartInfo 类
定义
- 命名空间:
- System.Diagnostics
- 程序集:
- System.Diagnostics.Process.dll
指定启动进程时使用的一组值。
public sealed class ProcessStartInfo
- 继承
-
ProcessStartInfo
示例
下面的代码示例演示如何使用 ProcessStartInfo 类启动 Internet Explorer,并提供目标 URL 作为 ProcessStartInfo 参数。
using System;
using System.Diagnostics;
using System.ComponentModel;
namespace MyProcessSample
{
class MyProcess
{
// Opens the Internet Explorer application.
void OpenApplication(string myFavoritesPath)
{
// Start Internet Explorer. Defaults to the home page.
Process.Start("IExplore.exe");
// Display the contents of the favorites folder in the browser.
Process.Start(myFavoritesPath);
}
// Opens urls and .html documents using Internet Explorer.
void OpenWithArguments()
{
// url's are not considered documents. They can only be opened
// by passing them as arguments.
Process.Start("IExplore.exe", "www.northwindtraders.com");
// Start a Web page using a browser associated with .html and .asp files.
Process.Start("IExplore.exe", "C:\\myPath\\myFile.htm");
Process.Start("IExplore.exe", "C:\\myPath\\myFile.asp");
}
// Uses the ProcessStartInfo class to start new processes,
// both in a minimized mode.
void OpenWithStartInfo()
{
ProcessStartInfo startInfo = new ProcessStartInfo("IExplore.exe");
startInfo.WindowStyle = ProcessWindowStyle.Minimized;
Process.Start(startInfo);
startInfo.Arguments = "www.northwindtraders.com";
Process.Start(startInfo);
}
static void Main()
{
// Get the path that stores favorite links.
string myFavoritesPath =
Environment.GetFolderPath(Environment.SpecialFolder.Favorites);
MyProcess myProcess = new MyProcess();
myProcess.OpenApplication(myFavoritesPath);
myProcess.OpenWithArguments();
myProcess.OpenWithStartInfo();
}
}
}
注解
ProcessStartInfo 与 Process 组件一起使用。 使用 Process 类启动进程时,除了附加到正在运行的进程时可用的进程信息外,还可以访问该信息。
可以使用 ProcessStartInfo 类更好地控制启动的过程。 必须至少手动或使用 构造函数设置 FileName 属性。 文件名是任何应用程序或文档。 此处,文档定义为具有与之关联的打开或默认操作的任何文件类型。 可以使用“ 文件夹选项 ”对话框(可通过操作系统使用)查看计算机的已注册文件类型及其关联的应用程序。 “ 高级 ”按钮将打开一个对话框,显示是否存在与特定已注册文件类型关联的打开操作。
此外,还可以设置其他属性,用于定义要对该文件执行的操作。 可以指定特定于属性的属性FileNameVerb类型的值。 例如,可以为文档类型指定“打印”。 此外,还可以将属性值指定 Arguments 为要传递给文件的打开过程的命令行参数。 例如,如果在 属性中 FileName 指定文本编辑器应用程序,则可以使用 Arguments 属性指定要由编辑器打开的文本文件。
标准输入通常是键盘,标准输出和标准错误通常是监视器屏幕。 但是,可以使用 RedirectStandardInput、 RedirectStandardOutput和 RedirectStandardError 属性使进程从文件或其他设备获取输入或返回输出。 如果在组件上使用 StandardInputProcess 、 StandardOutput或 StandardError 属性,则必须先在 属性上ProcessStartInfo设置相应的值。 否则,在读取或写入流时,系统会引发异常。
UseShellExecute设置 属性以指定是否使用操作系统 shell 启动进程。 如果 UseShellExecute 设置为 ,则新进程继承调用进程的标准输入、标准输出和标准错误流,除非 RedirectStandardOutputRedirectStandardInput、 或 RedirectStandardError 属性分别设置为 true。false
可以在进程启动时更改任何 ProcessStartInfo 属性的值。 启动该过程后,更改这些值不起作用。
备注
此类包含在类级别应用于所有成员的链接要求。 SecurityException当直接调用方没有完全信任权限时,将引发 。 有关安全要求的详细信息,请参阅 链接需求。
构造函数
| ProcessStartInfo() |
初始化 ProcessStartInfo 类的新实例,而不指定启动进程时使用的文件名。 |
| ProcessStartInfo(String) |
初始化 ProcessStartInfo 类的新实例,并指定启动进程时使用的诸如应用程序或文档的文件名。 |
| ProcessStartInfo(String, String) |
初始化 ProcessStartInfo 类的新实例,指定启动该进程时使用的应用程序文件名以及要传递给该应用程序的一组命令行自变量。 |
属性
| ArgumentList |
获取启动应用程序时要使用的命令行参数集合。 添加到列表的字符串无需先进行转义。 |
| Arguments |
获取或设置启动应用程序时要使用的一组命令行参数。 |
| CreateNoWindow |
获取或设置指示是否在新窗口中启动该进程的值。 |
| Domain |
获取或设置确定要在启动进程时使用的域的值。 如果此值为 |
| Environment |
获取应用于此进程及其子进程的环境变量。 |
| EnvironmentVariables |
获取文件的搜索路径、临时文件的目录、应用程序特定的选项和其他类似信息。 |
| ErrorDialog |
获取或设置指示不能启动进程时是否向用户显示错误对话框的值。 |
| ErrorDialogParentHandle |
获取或设置在为不能启动的进程显示错误对话框时要使用的窗口句柄。 |
| FileName |
获取或设置要启动的应用程序或文档。 |
| LoadUserProfile |
获取或设置指示是否从注册表加载 Windows 用户配置文件的值。 |
| Password |
获取或设置一个安全字符串,其中包含要在启动进程时使用的用户密码。 |
| PasswordInClearText |
获取或设置明文形式的用户密码以便在启动进程时使用。 |
| RedirectStandardError |
获取或设置指示是否将应用程序的错误输出写入 StandardError 流中的值。 |
| RedirectStandardInput |
获取或设置指示应用程序的输入是否从 StandardInput 流中读取的值。 |
| RedirectStandardOutput |
获取或设置指示是否将应用程序的文本输出写入 StandardOutput 流中的值。 |
| StandardErrorEncoding |
获取或设置错误输出的首选编码。 |
| StandardInputEncoding |
获取或设置标准输入的首选编码。 |
| StandardOutputEncoding |
获取或设置标准输出的首选编码。 |
| UserName |
获取或设置在启动进程时使用的用户名。 如果使用 UPN 格式, |
| UseShellExecute |
获取或设置指示是否使用操作系统 shell 启动进程的值。 |
| Verb |
获取或设置打开 FileName 属性指定的应用程序或文档时要使用的谓词。 |
| Verbs |
获取与 FileName 属性指定的文件类型关联的一组谓词。 |
| WindowStyle |
获取或设置启动进程时使用的窗口状态。 |
| WorkingDirectory |
当 UseShellExecute 属性为 |
方法
| Equals(Object) |
确定指定对象是否等于当前对象。 (继承自 Object) |
| GetHashCode() |
作为默认哈希函数。 (继承自 Object) |
| GetType() |
获取当前实例的 Type。 (继承自 Object) |
| MemberwiseClone() |
创建当前 Object 的浅表副本。 (继承自 Object) |
| ToString() |
返回表示当前对象的字符串。 (继承自 Object) |
适用于
| 产品 | 版本 |
|---|---|
| .NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7 |
| .NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8 |
| .NET Standard | 2.0, 2.1 |
| Xamarin.iOS | 10.8 |
| Xamarin.Mac | 3.0 |
另请参阅
建议的内容
ProcessStartInfo.UseShellExecute 属性 (System.Diagnostics)
获取或设置指示是否使用操作系统 shell 启动进程的值。
Process 类 (System.Diagnostics)
提供对本地和远程进程的访问权限并使你能够启动和停止本地系统进程。
Process.WaitForExit 方法 (System.Diagnostics)
设置等待关联进程退出的时间段,并在该段时间结束前或该进程退出前,阻止当前线程执行。 若要避免妨碍当前线程,请使用 Exited 事件。 有关代码示例,请参阅 StandardError 和 ExitCode 属性参考页。
Process.StandardOutput 属性 (System.Diagnostics)
获取用于读取应用程序文本输出的流。
Process.Start 方法 (System.Diagnostics)
启动进程资源并将其与 Process 组件关联。
ProcessStartInfo.RedirectStandardOutput 属性 (System.Diagnostics)
获取或设置指示是否将应用程序的文本输出写入 StandardOutput 流中的值。
Process.Kill 方法 (System.Diagnostics)
强制终止基础进程。
ProcessStartInfo.Arguments 属性 (System.Diagnostics)
获取或设置启动应用程序时要使用的一组命令行参数。
ProcessStartInfo 类的更多相关文章
- ZPL条码打印类
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...
- WorldWind源码剖析系列:下载请求类DownloadRequest
下载请求类DownloadRequest是各种下载请求的抽象基类,先派生出网络下载请求类WebDownloadRequest,再派生出地理空间下载请求类GeoSpatialDownloadReques ...
- Java类的继承与多态特性-入门笔记
相信对于继承和多态的概念性我就不在怎么解释啦!不管你是.Net还是Java面向对象编程都是比不缺少一堂课~~Net如此Java亦也有同样的思想成分包含其中. 继承,多态,封装是Java面向对象的3大特 ...
- windows7 阻止copyfile到windows目录的解决办法
一. windows7 x64,uac会阻止copyfile到c:/windows.提示拒绝访问. [会引起uac提示的3种情况: Administrator access token checks. ...
- 精通C#(第6版)
<精通C#(第6版)> 基本信息 原书名:Pro C# 5.0 and the .NET 4.5 framework,sixth edition 作者: (美)Andrew Troelse ...
- 创建线程(Background Thread)的N种方式
第一.Thread类 Thread类是实例化线程的主要方法:一个Thread实例管理一个线程,即执行序列.通过简单实例化一个对象,就可以创建一个线程,然后通过Thread对象提供的方法对线程进行管理. ...
- 执行CMD代码
/// <summary> /// 发送CMD命令(执行命令行) /// </summary> public static void SendCMD(string pwd) { ...
- C#直接发送打印机命令到打印机及ZPL常用打印命令 - 条码打印机
using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServi ...
- NET Core 跨平台执行命令、脚本
一.前言 我们可能会遇到需要在程序中执行一些系统命令,来获取一些信息:或者调用shell脚本..NET Core 目前已经可以跨平台执行,那么它如何跨平台执行命令呢,请看下面的讲解. 二.Proces ...
- 使用FFMPEG进行一些视频处理(C#)视频合并、转码、获取时长
FFMPEG的强大无需多说,举几个用到的功能,直接贴代码了 还有更多命令用到时搜索即可 视频转码 ) { var args = "-y -i {0} -vcodec copy {1}&quo ...
随机推荐
- 【Azure Developer】.Net 简单示例 "文字动图显示" Typing to SVG
问题描述 看见一个有趣的页面,可以把输入的文字信息,直接输出SVG图片,还可以实现动图模式. 示例URL: https://readme-typing-svg.demolab.com/?font=F ...
- Web Audio API 第5章 音频的分析与可视化
到目前为止,我们仅讨论了音频的合成与处理,但这仅是 Web Audio API 提供的一半功能.另一半功能则是音频的分析,它播放起来应该是什么样子的.它最典型的例子就是音频可视化,但其实有更多的其它应 ...
- 《c#高级编程》第2章C#2.0中的更改(四)——空值类型
一.概念 在C#中,空值类型(Nullable Types)是一种特殊的数据类型,它可以包含正常值或者一个null值.当我们需要在程序中处理可能不存在的值时,空值类型就会派上用场. 空值类型的语法形式 ...
- 力扣290(java)-单词规律(简单)
题目: 给定一种规律 pattern 和一个字符串 s ,判断 s 是否遵循相同的规律. 这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 s 中的每个非空单词之间存在着双向连接 ...
- HarmonyOS NEXT应用开发—在Native侧实现进度通知功能
介绍 本示例通过模拟下载场景介绍如何将Native的进度信息实时同步到ArkTS侧. 效果图预览 使用说明 点击"Start Download"按钮后,Native侧启动子线程模拟 ...
- MaxCompute笛卡尔积逻辑的参数优化&复杂JOIN逻辑优化
简介: 这篇文章主要讲一个SQL优化反映的两个优化点.分别是: 一.笛卡尔积逻辑的参数优化. 二.一个复杂JOIN逻辑的优化思路. 1. 优化概述 最近协助一个项目做下优化任务的工作.因为主要数据都 ...
- 阿里云 ACK 容器服务生产级可观测体系建设实践
简介: 随着容器被越来越对企业接纳与落地,可观测成为重点.那么,让我们深入了解阿里云 ACK 容器服务生产级可观测体系建设实践,为自身业务可观测提供参考- 作者:冯诗淳(行疾) ACK 可观测体系 ...
- 阿里 Seata 新版本终于解决了 TCC 模式的幂等、悬挂和空回滚问题
简介: 今天来聊一聊阿里巴巴 Seata 新版本(1.5.1)是怎么解决 TCC 模式下的幂等.悬挂和空回滚问题的. 作者:朱晋君 大家好,我是君哥. 今天来聊一聊阿里巴巴 Seata 新版本(1 ...
- EventBridge 与 FC 一站式深度集成解析
简介:本篇文章通过对 EventBridge 与 FC 一站式深度集成解析和集成场景的介绍,旨在帮助大家更好的了解面对丰富的事件时,如何使用 EventBridge 与 FC 的一站式集成方案,快速 ...
- Spark 大数据处理最佳实践
开源大数据社区 & 阿里云 EMR 系列直播 第十一期 主题:Spark 大数据处理最佳实践 讲师:简锋,阿里云 EMR 数据开发平台 负责人 内容框架: 大数据概览 如何摆脱技术小白 Spa ...