ProcessStartInfo Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Задает набор значений, используемых при запуске процесса.
public ref class ProcessStartInfo sealed
public sealed class ProcessStartInfo
[System.ComponentModel.TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))]
public sealed class ProcessStartInfo
type ProcessStartInfo = class
[<System.ComponentModel.TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))>]
type ProcessStartInfo = class
Public NotInheritable Class ProcessStartInfo
- Наследование
-
ProcessStartInfo
- Атрибуты
Примеры
В следующем примере кода показано, как использовать ProcessStartInfo класс для запуска интернет-Обозреватель. Конечные URL-адреса предоставляются в виде ProcessStartInfo аргументов.
#using <System.dll>
using namespace System;
using namespace System::Diagnostics;
using namespace System::ComponentModel;
// 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()
{
// URLs 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 = gcnew ProcessStartInfo("IExplore.exe");
startInfo->WindowStyle = ProcessWindowStyle::Minimized;
Process::Start(startInfo);
startInfo->Arguments = "www.northwindtraders.com";
Process::Start(startInfo);
}
int main()
{
// Get the path that stores favorite links.
String^ myFavoritesPath = Environment::GetFolderPath(Environment::SpecialFolder::Favorites);
OpenApplication(myFavoritesPath);
OpenWithArguments();
OpenWithStartInfo();
}
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();
}
}
}
Imports System.Diagnostics
Imports System.ComponentModel
Namespace MyProcessSample
Class MyProcess
' Opens the Internet Explorer application.
Public Sub OpenApplication(myFavoritesPath As String)
' 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)
End Sub
' Opens URLs and .html documents using Internet Explorer.
Sub OpenWithArguments()
' URLs 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")
End Sub
' Uses the ProcessStartInfo class to start new processes,
' both in a minimized mode.
Sub OpenWithStartInfo()
Dim startInfo As New ProcessStartInfo("IExplore.exe")
startInfo.WindowStyle = ProcessWindowStyle.Minimized
Process.Start(startInfo)
startInfo.Arguments = "www.northwindtraders.com"
Process.Start(startInfo)
End Sub
Shared Sub Main()
' Get the path that stores favorite links.
Dim myFavoritesPath As String = Environment.GetFolderPath(Environment.SpecialFolder.Favorites)
Dim myProcess As New MyProcess()
myProcess.OpenApplication(myFavoritesPath)
myProcess.OpenWithArguments()
myProcess.OpenWithStartInfo()
End Sub
End Class
End Namespace 'MyProcessSample
Комментарии
ProcessStartInfo используется вместе с компонентом Process . При запуске процесса с помощью Process класса у вас есть доступ к сведениям о процессе в дополнение к данным, доступным при присоединении к выполняющимся процессам.
Класс можно использовать для лучшего ProcessStartInfo контроля над процессом, который вы запускаете. Необходимо по крайней FileName мере задать свойство вручную или с помощью конструктора. Имя файла — это любое приложение или документ. Здесь документ определяется как любой тип файла, с которым связано открытое действие или действие по умолчанию. Вы можете просмотреть зарегистрированные типы файлов и связанные с ними приложения для компьютера с помощью диалогового окна Параметры папки , доступного в операционной системе. Кнопка Дополнительно открывает диалоговое окно, в которое показано, связано ли открытое действие с определенным зарегистрированным типом файла.
Кроме того, можно задать другие свойства, определяющие действия, выполняемые с этим файлом. Можно указать значение, относящееся к типу FileName свойства для Verb свойства . Например, можно указать "печать" для типа документа. Кроме того, можно указать Arguments значения свойств, которые будут аргументами командной строки для передачи процедуре открытия файла. Например, если указать приложение текстового редактора в свойстве FileName , можно использовать Arguments свойство , чтобы указать текстовый файл, который будет открыт редактором.
Стандартным вводом обычно является клавиатура, а стандартным выходом и стандартной ошибкой обычно является экран монитора. Однако можно использовать RedirectStandardInputсвойства , RedirectStandardOutputи RedirectStandardError , чтобы процесс получает входные данные из файла или другого устройства или возвращает выходные данные. Если в компоненте используются StandardInputсвойства Process , StandardOutputили StandardError , необходимо сначала задать соответствующее значение в свойстве ProcessStartInfo . В противном случае система создает исключение при чтении или записи в поток.
UseShellExecute Задайте свойство , чтобы указать, следует ли запускать процесс с помощью оболочки операционной системы. Если UseShellExecute задано значение false
, новый процесс наследует стандартные входные, стандартные выходные и стандартные потоки ошибок вызывающего процесса, если RedirectStandardInputсвойства , RedirectStandardOutputили RedirectStandardError соответственно не имеют значение true
.
Вы можете изменить значение любого ProcessStartInfo свойства до момента начала процесса. После запуска процесса изменение этих значений не оказывает никакого влияния.
Важно!
Использование экземпляра этого объекта с ненадежными данными представляет угрозу безопасности. Используйте этот объект только с надежными данными. Дополнительные сведения см. в разделе Проверка всех входных данных.
Примечание
Этот класс содержит запрос ссылки на уровне класса, который применяется ко всем членам. Возникает SecurityException , если непосредственный вызывающий объект не имеет разрешения на полное доверие. Дополнительные сведения о требованиях безопасности см. в разделе Требования связывания.
Конструкторы
ProcessStartInfo() |
Инициализирует новый экземпляр класса ProcessStartInfo, не указывая имени файла, вместе с которым должен запускаться процесс. |
ProcessStartInfo(String) |
Инициализирует новый экземпляр класса ProcessStartInfo и задает имя файла, например приложение или документ, вместе с которым должен запускаться процесс. |
ProcessStartInfo(String, IEnumerable<String>) |
Задает набор значений, используемых при запуске процесса. |
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 |
Получает или задает предпочтительную кодировку для стандартного вывода. |
UseCredentialsForNetworkingOnly |
Задает набор значений, используемых при запуске процесса. |
UserName |
Получает или задает имя пользователя, которое следует использовать при запуске процесса. Если используется формат имени субъекта-пользователя, |
UseShellExecute |
Получает или задает значение, позволяющее определить, нужно ли использовать оболочку операционной системы для запуска процесса. |
Verb |
Возвращает или задает команду, которую необходимо использовать при открытии приложения или документа, указанного в свойстве FileName. |
Verbs |
Получает набор команд, которые связаны с типом файла, заданным в свойстве FileName. |
WindowStyle |
Получает или задает состояние окна, используемое при запуске процесса. |
WorkingDirectory |
Если свойство UseShellExecute имеет значение |
Методы
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |