Process.StartInfo Process.StartInfo Process.StartInfo Process.StartInfo Property

定義

ProcessStart() メソッドに渡すプロパティを取得または設定します。Gets or sets the properties to pass to the Start() method of the Process.

public:
 property System::Diagnostics::ProcessStartInfo ^ StartInfo { System::Diagnostics::ProcessStartInfo ^ get(); void set(System::Diagnostics::ProcessStartInfo ^ value); };
[System.ComponentModel.Browsable(false)]
public System.Diagnostics.ProcessStartInfo StartInfo { get; set; }
member this.StartInfo : System.Diagnostics.ProcessStartInfo with get, set
Public Property StartInfo As ProcessStartInfo

プロパティ値

プロセスを起動するときに使用するデータを表す ProcessStartInfoThe ProcessStartInfo that represents the data with which to start the process. これらの引数には、プロセスの起動時に使用する実行可能ファイルまたは文書の名前があります。These arguments include the name of the executable file or document used to start the process.

例外

StartInfo を指定する値は null です。The value that specifies the StartInfo is null.

Start() メソッドはプロセスを開始するために使用されませんでした。The Start() method was not used to start the process.

次の例ではStartInfo 、を実行するファイル、それに対して実行されるアクション、およびユーザーインターフェイスを表示する必要があるかどうかをに設定します。The following example populates a StartInfo with the file to execute, the action performed on it and whether it should displays a user interface. その他の例については、 ProcessStartInfoクラスのプロパティのリファレンスページを参照してください。For additional examples, refer to the reference pages for properties of the ProcessStartInfo class.

#using <System.dll>
using namespace System;
using namespace System::Diagnostics;
using namespace System::ComponentModel;

int main()
{
    Process^ myProcess = gcnew Process;

    try
    {
        myProcess->StartInfo->UseShellExecute = false;
        // You can start any process, HelloWorld is a do-nothing example.
        myProcess->StartInfo->FileName = "C:\\HelloWorld.exe";
        myProcess->StartInfo->CreateNoWindow = true;
        myProcess->Start();
        // This code assumes the process you are starting will terminate itself. 
        // Given that is is started without a window so you cannot terminate it 
        // on the desktop, it must terminate itself or you can do it programmatically
        // from this application using the Kill method.
    }
    catch ( Exception^ e ) 
    {
        Console::WriteLine( e->Message );
    }
}
using System;
using System.Diagnostics;
using System.ComponentModel;

namespace MyProcessSample
{
    class MyProcess
    {
        public static void Main()
        {
            try
            {
                using (Process myProcess = new Process())
                {
                    myProcess.StartInfo.UseShellExecute = false;
                    // You can start any process, HelloWorld is a do-nothing example.
                    myProcess.StartInfo.FileName = "C:\\HelloWorld.exe";
                    myProcess.StartInfo.CreateNoWindow = true;
                    myProcess.Start();
                    // This code assumes the process you are starting will terminate itself. 
                    // Given that is is started without a window so you cannot terminate it 
                    // on the desktop, it must terminate itself or you can do it programmatically
                    // from this application using the Kill method.
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
    }
}
Imports System.Diagnostics
Imports System.ComponentModel

Namespace MyProcessSample
    Class MyProcess
        Public Shared Sub Main()
            Try
                Using myProcess As New Process()

                    myProcess.StartInfo.UseShellExecute = False
                    ' You can start any process, HelloWorld is a do-nothing example.
                    myProcess.StartInfo.FileName = "C:\\HelloWorld.exe"
                    myProcess.StartInfo.CreateNoWindow = True
                    myProcess.Start()
                    ' This code assumes the process you are starting will terminate itself. 
                    ' Given that is is started without a window so you cannot terminate it 
                    ' on the desktop, it must terminate itself or you can do it programmatically
                    ' from this application using the Kill method.
                End Using
            Catch e As Exception
                Console.WriteLine((e.Message))
            End Try
        End Sub
    End Class
End Namespace

注釈

StartInfoプロセスを開始するために使用するパラメーターのセットを表します。StartInfo represents the set of parameters to use to start a process. Start 呼び出さStartInfoれると、を開始するプロセスを指定するためにが使用されます。When Start is called, the StartInfo is used to specify the process to start. 設定する必要StartInfo FileNameがあるメンバーは、プロパティだけです。The only necessary StartInfo member to set is the FileName property. FileNameプロパティを指定してプロセスを開始することは、Windows の [スタート] メニューの [実行] ダイアログボックスに情報を入力することと似ています。Starting a process by specifying the FileName property is similar to typing the information in the Run dialog box of the Windows Start menu. したがって、 FileNameプロパティは実行可能ファイルを表す必要はありません。Therefore, the FileName property does not need to represent an executable file. これは、システムにインストールされているアプリケーションに拡張機能が関連付けられている任意のファイルの種類にすることができます。It can be of any file type for which the extension has been associated with an application installed on the system. たとえば、メモFileName帳などのテキストファイルがエディターに関連付けられている場合、は .txt 拡張子を持つことができます。また、Microsoft word などのワードプロセッシングツールを使用して .doc ファイルに関連付けられている場合は、.doc を持つことができます。For example the FileName can have a .txt extension if you have associated text files with an editor, such as Notepad, or it can have a .doc if you have associated.doc files with a word processing tool, such as Microsoft Word. 同様に、[ファイル名を指定して実行] ダイアログボックスが .exe 拡張子の有無にかかわらず、実行可能ファイル名を受け入れる場合と同じようFileNameに、.exe 拡張子は、メンバーでは省略可能です。Similarly, in the same way that the Run dialog box can accept an executable file name with or without the .exe extension, the .exe extension is optional in the FileName member. たとえば、 FileNameプロパティを "notepad.exe" または "notepad" に設定できます。For example, you can set the FileName property to either "Notepad.exe" or "Notepad".

ClickOnce アプリケーションを起動するには、アプリケーションFileNameを最初にインストールした場所 (Web アドレスなど) にプロパティを設定します。You can start a ClickOnce application by setting the FileName property to the location (for example, a Web address) from which you originally installed the application. ClickOnce アプリケーションは、ハードドライブにインストールされている場所を指定することによって起動しないでください。Do not start a ClickOnce application by specifying its installed location on your hard drive.

ファイル名に、.doc ファイルなどの実行不可能なファイルが含まれている場合は、ファイルに対して実行するアクションを指定する動詞を含めることができます。If the file name involves a nonexecutable file, such as a .doc file, you can include a verb specifying what action to take on the file. たとえば、.doc 拡張子で終わるファイルVerbの場合、を "Print" に設定できます。For example, you could set the Verb to "Print" for a file ending in the .doc extension. プロパティの値Verbを手動でFileName入力した場合、プロパティに指定されたファイル名に拡張子を付ける必要はありません。The file name specified in the FileName property does not need to have an extension if you manually enter a value for the Verb property. ただし、プロパティを使用しVerbsて、使用可能な動詞を特定する場合は、拡張機能を含める必要があります。However, if you use the Verbs property to determine what verbs are available, you must include the extension.

このStartInfoプロパティで指定されたパラメーターは、プロセスでStartメソッドを呼び出す時間まで変更できます。You can change the parameters specified in the StartInfo property up to the time that you call the Start method on the process. プロセスを開始した後、 StartInfo値を変更しても、関連付けられているプロセスには影響しません。After you start the process, changing the StartInfo values does not affect or restart the associated process. プロパティStart(ProcessStartInfo) ProcessStartInfo.UserNameCreateProcessWithLogonW CreateNoWindow trueプロパティが設定されたメソッドを呼び出すと、アンマネージ関数が呼び出されます。これにより、プロパティ値がまたはの場合でも、新しいウィンドウでプロセスが開始されます。 ProcessStartInfo.Password WindowStyleプロパティ値がHiddenです。If you call the Start(ProcessStartInfo) method with the ProcessStartInfo.UserName and ProcessStartInfo.Password properties set, the unmanaged CreateProcessWithLogonW function is called, which starts the process in a new window even if the CreateNoWindow property value is true or the WindowStyle property value is Hidden.

メソッドによってStartInfo Process返されるオブジェクトのプロパティにのみアクセスする必要があります。 StartYou should only access the StartInfo property on a Process object returned by the Start method. たとえば、によってStartInfo GetProcesses返されるProcessオブジェクトのプロパティにアクセスすることはできません。For example, you should not access the StartInfo property on a Process object returned by GetProcesses. それ以外の場合、.net StartInfo Core では、 InvalidOperationExceptionプロパティによってとがスローさProcessStartInfoれ .NET Framework でダミーオブジェクトが返されます。Otherwise, on .NET Core the StartInfo property will throw an InvalidOperationException and on .NET Framework it will return a dummy ProcessStartInfo object.

プロセスが開始されると、ファイル名は (読み取り専用) MainModuleプロパティを設定するファイルになります。When the process is started, the file name is the file that populates the (read-only) MainModule property. プロセスの開始後にプロセスに関連付けられている実行可能ファイルを取得する場合は、 MainModuleプロパティを使用します。If you want to retrieve the executable file that is associated with the process after the process has started, use the MainModule property. 関連付けられたプロセスが開始されてProcessいないインスタンスの実行可能ファイルを設定する場合は、 StartInfoプロパティのFileNameメンバーを使用します。If you want to set the executable file of a Process instance for which an associated process has not been started, use the StartInfo property's FileName member. StartInfoプロパティのメンバーは、プロセスのStartメソッドに渡される引数であるため、関連付けられFileNameたプロセスの開始後にプロパティを変更してMainModuleも、プロパティはリセットされません。Because the members of the StartInfo property are arguments that are passed to the Start method of a process, changing the FileName property after the associated process has started will not reset the MainModule property. これらのプロパティは、関連付けられたプロセスを初期化するためにのみ使用されます。These properties are used only to initialize the associated process.

セキュリティ

LinkDemand
直前の呼び出し元に対する完全な信頼の場合。for full trust for the immediate caller. このメンバーは、部分的に信頼されているコードから使用することはできません。This member cannot be used by partially trusted code.

適用対象

こちらもご覧ください