Process.Start Yöntem

Tanım

İşlem kaynağını başlatır ve bir Process bileşeniyle ilişkilendirir.Starts a process resource and associates it with a Process component.

Aşırı Yüklemeler

Start()

Bu Process bileşenin StartInfo özelliği tarafından belirtilen işlem kaynağını başlatır (veya yeniden kullanır) ve bileşeniyle ilişkilendirir.Starts (or reuses) the process resource that is specified by the StartInfo property of this Process component and associates it with the component.

Start(ProcessStartInfo)

İşlem başlangıç bilgilerini içeren parametre tarafından belirtilen işlem kaynağını başlatır (örneğin, başlatılacak işlemin dosya adı) ve kaynağı yeni bir Process bileşeniyle ilişkilendirir.Starts the process resource that is specified by the parameter containing process start information (for example, the file name of the process to start) and associates the resource with a new Process component.

Start(String)

Bir belge veya uygulama dosyası adını belirterek işlem kaynağını başlatır ve kaynağı yeni bir Process bileşeniyle ilişkilendirir.Starts a process resource by specifying the name of a document or application file and associates the resource with a new Process component.

Start(String, String)

Bir uygulamanın adını ve bir dizi komut satırı bağımsız değişkenini belirterek işlem kaynağını başlatır ve kaynağı yeni bir Process bileşeniyle ilişkilendirir.Starts a process resource by specifying the name of an application and a set of command-line arguments, and associates the resource with a new Process component.

Start(String, String, SecureString, String)

Bir uygulama adı, Kullanıcı adı, parola ve etki alanı belirterek ve kaynağı yeni bir Process bileşeniyle ilişkilenerek bir işlem kaynağı başlatır.Starts a process resource by specifying the name of an application, a user name, a password, and a domain and associates the resource with a new Process component.

Start(String, String, String, SecureString, String)

Bir uygulamanın adını, komut satırı bağımsız değişkenleri kümesini, bir kullanıcı adını, parolayı ve etki alanını belirterek ve kaynağı yeni bir Process bileşeniyle ilişkilenerek bir işlem kaynağı başlatır.Starts a process resource by specifying the name of an application, a set of command-line arguments, a user name, a password, and a domain and associates the resource with a new Process component.

Start()

Bu Process bileşenin StartInfo özelliği tarafından belirtilen işlem kaynağını başlatır (veya yeniden kullanır) ve bileşeniyle ilişkilendirir.Starts (or reuses) the process resource that is specified by the StartInfo property of this Process component and associates it with the component.

public:
 bool Start();
public bool Start ();
member this.Start : unit -> bool
Public Function Start () As Boolean

Döndürülenler

işlem kaynağı başlatılırsa true; Yeni bir işlem kaynağı başlatılmamışsa (örneğin, mevcut bir işlem yeniden kullanılırsa) false.true if a process resource is started; false if no new process resource is started (for example, if an existing process is reused).

Özel Durumlar

Process bileşeninin StartInfohiçbir dosya adı belirtilmedi.No file name was specified in the Process component's StartInfo. -veya-StartInfo özelliğinin UseShellExecute üyesi RedirectStandardInput, RedirectStandardOutputveya RedirectStandardError truetrue.-or- The UseShellExecute member of the StartInfo property is true while RedirectStandardInput, RedirectStandardOutput, or RedirectStandardError is true.

İlişkili dosya açılırken bir hata oluştu.There was an error in opening the associated file.

İşlem nesnesi zaten atıldı.The process object has already been disposed.

Yöntemi, nano sunucu (yalnızca .NET Core) gibi kabuk desteği olmayan işletim sistemlerinde desteklenmez.Method not supported on operating systems without shell support such as Nano Server (.NET Core only).

Örnekler

Aşağıdaki örnek, bir işlemi başlatmak için Process sınıfının bir örneğini kullanır.The following example uses an instance of the Process class to start a process.

#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

Açıklamalar

İşlem kaynağını başlatmak ve geçerli Process bileşeniyle ilişkilendirmek için bu aşırı yüklemeyi kullanın.Use this overload to start a process resource and associate it with the current Process component. Dönüş değeri true yeni bir işlem kaynağının başlatıldığını gösterir.The return value true indicates that a new process resource was started. StartInfo özelliğinin FileName üyesi tarafından belirtilen işlem kaynağı zaten bilgisayarda çalışıyorsa, ek işlem kaynağı başlatılmaz.If the process resource specified by the FileName member of the StartInfo property is already running on the computer, no additional process resource is started. Bunun yerine, çalışan işlem kaynağı yeniden kullanılır ve false döndürülür.Instead, the running process resource is reused and false is returned.

Uygulamayı ilk olarak yüklediğiniz konumu (örneğin, bir Web adresi) belirterek bir ClickOnce uygulaması başlatabilirsiniz.You can start a ClickOnce application by specifying the location (for example, a Web address) from which you originally installed the application. Sabit sürücünüzde yüklü konumunu belirterek bir ClickOnce uygulaması başlatmayın.Do not start a ClickOnce application by specifying its installed location on your hard drive.

Not

Visual Studio kullanıyorsanız, Start yönteminin bu aşırı yüklemesi, tasarımcı üzerine bir Process bileşenini sürükledikten sonra kodunuza eklediğiniz bir yöntemdir.If you are using Visual Studio, this overload of the Start method is the one that you insert into your code after you drag a Process component onto the designer. StartInfo kategorisini genişletmek ve FileName özelliğine uygun değeri yazmak için Properties penceresini kullanın.Use the Properties window to expand the StartInfo category and write the appropriate value into the FileName property. Değişiklikleriniz formun InitializeComponent yordamında görüntülenir.Your changes will appear in the form's InitializeComponent procedure.

Start bu aşırı yüklemesi static bir yöntem değil.This overload of Start is not a static method. Bunu, Process sınıfının bir örneğinden çağırmanız gerekir.You must call it from an instance of the Process class. Startçağrılmadan önce, ilk olarak bu Process örneği için StartInfo Özellik bilgilerini belirtmeniz gerekir çünkü bu bilgiler, başlatılacak işlem kaynağını belirlemek için kullanılır.Before calling Start, you must first specify StartInfo property information for this Process instance, because that information is used to determine the process resource to start.

Start yönteminin diğer aşırı yüklemeleri static üyeleridir.The other overloads of the Start method are static members. Metodun bu aşırı yüklerini çağırmadan önce Process bileşeni örneğini oluşturmanız gerekmez.You do not need to create an instance of the Process component before you call those overloads of the method. Bunun yerine, Process sınıfının kendisi için Start çağırabilirsiniz ve işlem başlatılmışsa yeni bir Process bileşeni oluşturulur.Instead, you can call Start for the Process class itself, and a new Process component is created if the process was started. Ya da bir işlem yeniden kullanılırsa null döndürülür.Or, null is returned if a process was reused. İşlem kaynağı, Start yöntemi tarafından döndürülen yeni Process bileşeni ile otomatik olarak ilişkilendirilir.The process resource is automatically associated with the new Process component that is returned by the Start method.

StartInfo üyeleri, Windows Start menüsünün Run iletişim kutusunun işlevlerini çoğaltmak için kullanılabilir.The StartInfo members can be used to duplicate the functionality of the Run dialog box of the Windows Start menu. Bir komut satırına yazılabilecek her şey StartInfo özelliğindeki uygun değerler ayarlanarak başlatılabilir.Anything that can be typed into a command line can be started by setting the appropriate values in the StartInfo property. Ayarlanması gereken tek StartInfo özelliği FileName özelliğidir.The only StartInfo property that must be set is the FileName property. FileName özelliğinin yürütülebilir bir dosya olması gerekmez.The FileName property does not have to be an executable file. Uzantının sistemde yüklü olan bir uygulamayla ilişkilendirildiği herhangi bir dosya türü olabilir.It can be of any file type for which the extension has been associated with an application that is installed on the system. Örneğin, Not Defteri gibi bir düzenleyici ile ilişkili metin dosyaları varsa FileName özelliği. txt uzantısına sahip olabilir veya. doc dosyalarını Microsoft Word gibi bir sözcük işleme aracı ile ilişkilendirdiyseniz. doc uzantısı olabilir.For example, the FileName property can have a .txt extension if you have associated text files with an editor, such as Notepad, or it can have a .doc extension if you have associated.doc files with a word processing tool, such as Microsoft Word.

Komut satırında, belirli dosya türleri için gerçekleştirilecek eylemleri belirtebilirsiniz.In the command line, you can specify actions to take for certain types of files. Örneğin, belge yazdırabilir veya metin dosyalarını düzenleyebilirsiniz.For example, you can print documents or edit text files. StartInfo özelliğinin Verb üyesini kullanarak bu eylemleri belirtin.Specify these actions using the Verb member of the StartInfo property. Diğer dosya türleri için, dosyayı Run iletişim kutusundan başlattığınızda komut satırı bağımsız değişkenlerini belirtebilirsiniz.For other types of files, you can specify command-line arguments when you start the file from the Run dialog box. Örneğin, tarayıcınızı FileNameolarak belirtirseniz bir URL 'YI bağımsız değişken olarak geçirebilirsiniz.For example, you can pass a URL as an argument if you specify your browser as the FileName. Bu bağımsız değişkenler StartInfo özelliğinin Arguments üyesinde belirtilebilir.These arguments can be specified in the StartInfo property's Arguments member.

Tırnak işaretleri kullanılarak sisteminizde tanımlanmış bir yol değişkenine sahipseniz, bu konumda bulunan herhangi bir işlemi başlatırken bu yolu tam olarak nitelemeniz gerekir.If you have a path variable declared in your system using quotes, you must fully qualify that path when starting any process found in that location. Aksi takdirde, sistem yolu bulamaz.Otherwise, the system will not find the path. Örneğin, c:\mypath yolunuzda yoksa ve tırnak path = %path%;"c:\mypath"işaretleri kullanarak eklerseniz, bu işlem başlatıldığında c:\mypath herhangi bir işlemi tamamen nitelemeniz gerekir.For example, if c:\mypath is not in your path, and you add it using quotation marks: path = %path%;"c:\mypath", you must fully qualify any process in c:\mypath when starting it.

Not

ASP.NET Web sayfası ve sunucu denetim kodu, Web sunucusundaki ASP.NET çalışan işleminin bağlamında yürütülür.ASP.NET Web page and server control code executes in the context of the ASP.NET worker process on the Web server. Bir ASP.NET Web sayfasında veya sunucu denetiminde Start yöntemini kullanırsanız, yeni işlem Web sunucusunda kısıtlı izinlerle yürütülür.If you use the Start method in an ASP.NET Web page or server control, the new process executes on the Web server with restricted permissions. İşlem, istemci tarayıcısıyla aynı bağlamda başlatılmaz ve Kullanıcı masaüstüne erişimi yoktur.The process does not start in the same context as the client browser, and does not have access to the user desktop.

Bir işlemi başlatmak için Start kullandığınızda, bunu kapatmanız veya sistem kaynaklarını kaybetme riskini almanız gerekebilir.Whenever you use Start to start a process, you might need to close it or you risk losing system resources. CloseMainWindow veya Killkullanarak işlem kapatın.Close processes using CloseMainWindow or Kill. HasExited özelliğini kullanarak bir işlemin zaten kapatılıp kapatılmadığını kontrol edebilirsiniz.You can check whether a process has already been closed by using its HasExited property.

Burada, yönetilen iş parçacıklarında grup durumları hakkında bir notun olması gerekir.A note about apartment states in managed threads is necessary here. İşlem bileşeninin StartInfo özelliğinde UseShellExecute true, main() yönteminde özniteliği [STAThread] ayarlayarak uygulamanızda bir iş parçacığı modeli ayarladığınızdan emin olun.When UseShellExecute is true on the process component's StartInfo property, make sure you have set a threading model on your application by setting the attribute [STAThread] on the main() method. Aksi takdirde, yönetilen bir iş parçacığı unknown bir durumda olabilir veya MTA durumunda UseShellExecute trueçakışma olan.Otherwise, a managed thread can be in an unknown state or put in the MTA state, the latter of which conflicts with UseShellExecute being true. Bazı yöntemler, Grup durumunun unknownolmasını gerektirir.Some methods require that the apartment state not be unknown. Durum açıkça ayarlanmamışsa, uygulama böyle bir yöntemle karşılaştığında, varsayılan olarak MTAolur ve bir kez ayarlandığında, Grup durumu değiştirilemez.If the state is not explicitly set, when the application encounters such a method, it defaults to MTA, and once set, the apartment state cannot be changed. Ancak MTA, işletim sistemi kabuğu iş parçacığını yönetirken bir özel durumun oluşturulmasına neden olur.However, MTA causes an exception to be thrown when the operating system shell is managing the thread.

Güvenlik

LinkDemand
şu anki çağırana ilişkin tam güven için.for full trust for the immediate caller. Bu üye kısmen güvenilen kodla kullanılamaz.This member cannot be used by partially trusted code.

Ayrıca bkz.

Start(ProcessStartInfo)

İşlem başlangıç bilgilerini içeren parametre tarafından belirtilen işlem kaynağını başlatır (örneğin, başlatılacak işlemin dosya adı) ve kaynağı yeni bir Process bileşeniyle ilişkilendirir.Starts the process resource that is specified by the parameter containing process start information (for example, the file name of the process to start) and associates the resource with a new Process component.

public:
 static System::Diagnostics::Process ^ Start(System::Diagnostics::ProcessStartInfo ^ startInfo);
public static System.Diagnostics.Process Start (System.Diagnostics.ProcessStartInfo startInfo);
static member Start : System.Diagnostics.ProcessStartInfo -> System.Diagnostics.Process
Public Shared Function Start (startInfo As ProcessStartInfo) As Process

Parametreler

startInfo
ProcessStartInfo

Dosya adı ve tüm komut satırı bağımsız değişkenleri dahil olmak üzere işlemi başlatmak için kullanılan bilgileri içeren ProcessStartInfo.The ProcessStartInfo that contains the information that is used to start the process, including the file name and any command-line arguments.

Döndürülenler

İşlem kaynağıyla ilişkili yeni bir Process veya işlem kaynağı başlatılmamışsa null.A new Process that is associated with the process resource, or null if no process resource is started. Aynı işlemin zaten çalışmakta olan örneklerinin yanında başlatılan yeni bir işlemin diğerlerinden bağımsız olacağını unutmayın.Note that a new process that's started alongside already running instances of the same process will be independent from the others. Ayrıca, Start, HasExited özelliği zaten trueolarak ayarlanmış null olmayan bir Işlem döndürebilir.In addition, Start may return a non-null Process with its HasExited property already set to true. Bu durumda, başlatılan işlem kendisinin var olan bir örneğini etkinleştirmiş ve sonra çıkılamayabilir.In this case, the started process may have activated an existing instance of itself and then exited.

Özel Durumlar

startInfo parametresinin FileName özelliğinde dosya adı belirtilmedi.No file name was specified in the startInfo parameter's FileName property.

veya-or- startInfo parametresinin UseShellExecute özelliği true ve RedirectStandardInput, RedirectStandardOutputveya RedirectStandardError özelliği de true.The UseShellExecute property of the startInfo parameter is true and the RedirectStandardInput, RedirectStandardOutput, or RedirectStandardError property is also true.

veya-or- startInfo parametresinin UseShellExecute özelliği true ve UserName özelliği null veya boş değil veya Password özelliği nulldeğil.The UseShellExecute property of the startInfo parameter is true and the UserName property is not null or empty or the Password property is not null.

startInfo parametresi null.The startInfo parameter is null.

İşlem nesnesi zaten atıldı.The process object has already been disposed.

İlişkili dosya açılırken bir hata oluştu.An error occurred when opening the associated file.

veya-or- startInfo parametresinin FileName özelliğinde belirtilen dosya bulunamadı.The file specified in the startInfo parameter's FileName property could not be found.

veya-or- Bağımsız değişkenlerin uzunluğunun toplamı ve işlemin tam yolunun uzunluğu 2080 ' ü aşıyor.The sum of the length of the arguments and the length of the full path to the process exceeds 2080. Bu özel durumla ilişkili hata iletisi aşağıdakilerden biri olabilir: "bir sistem çağrısına geçirilen veri alanı çok küçük."The error message associated with this exception can be one of the following: "The data area passed to a system call is too small." veya "erişim engellendi."or "Access is denied."

Yöntemi, nano sunucu (yalnızca .NET Core) gibi kabuk desteği olmayan işletim sistemlerinde desteklenmez.Method not supported on operating systems without shell support such as Nano Server (.NET Core only).

Örnekler

Aşağıdaki örnek ilk olarak Internet Explorer 'ın bir örneğini bir kez oluşturup tarayıcıda sık kullanılanlar klasörünün içeriğini görüntüler.The following example first spawns an instance of Internet Explorer and displays the contents of the Favorites folder in the browser. Daha sonra bazı Internet Explorer örneklerini başlatır ve bazı belirli sayfaları veya siteleri görüntüler.It then starts some other instances of Internet Explorer and displays some specific pages or sites. Son olarak, belirli bir siteye gidilirken pencereyi simge durumuna küçültmekte olan Internet Explorer 'ı başlatır.Finally it starts Internet Explorer with the window being minimized while navigating to a specific site.

Bu yöntemin diğer kullanımları hakkında daha fazla örnek için, ProcessStartInfo sınıfının bireysel özelliklerine bakın.For additional examples of other uses of this method, refer to the individual properties of the ProcessStartInfo class.

#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()
{
    // 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 = 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()
            ' 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")
        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

Açıklamalar

Bir ProcessStartInfo örneği belirterek işlem kaynağını başlatmak için bu aşırı yüklemeyi kullanın.Use this overload to start a process resource by specifying a ProcessStartInfo instance. Aşırı yükleme, kaynağı yeni bir Process nesnesiyle ilişkilendirir.The overload associates the resource with a new Process object.

Not

Başlatılacak yürütülebilir dosyanın adresi bir URL ise, işlem başlatılmaz ve null döndürülür.If the address of the executable file to start is a URL, the process is not started and null is returned.

Bu aşırı yükleme, önce yeni bir Process örneği oluşturmadan bir işlem başlatabilmenizi sağlar.This overload lets you start a process without first creating a new Process instance. Bu aşırı yüklemeyi ProcessStartInfo parametresi ile kullanmak, yeni bir Process örneği oluşturmanın, StartInfo özelliklerini ayarlamanın ve Process örneği için Start çağırmada açık adımlara bir alternatiftir.Using this overload with a ProcessStartInfo parameter is an alternative to the explicit steps of creating a new Process instance, setting its StartInfo properties, and calling Start for the Process instance.

Parametresi olarak bir ProcessStartInfo örneği kullanılması, işlemi başlatmak için çağrıya geçirilme üzerinde en fazla denetim ile Start çağırmanıza olanak sağlar.Using a ProcessStartInfo instance as the parameter lets you call Start with the most control over what is passed into the call to start the process. Yalnızca bir dosya adı veya dosya adı ve bağımsız değişkenler geçirmeniz gerekiyorsa, bu, bir seçenek olsa da yeni bir ProcessStartInfo örneği oluşturmak için gerekli değildir.If you need to pass only a file name or a file name and arguments, it is not necessary to create a new ProcessStartInfo instance, although that is an option. Ayarlanması gereken tek Process.StartInfo özelliği FileName özelliğidir.The only Process.StartInfo property that must be set is the FileName property. FileName özelliğinin yürütülebilir bir dosyayı göstermesi gerekmez.The FileName property does not need to represent an executable file. Uzantının sistemde yüklü olan bir uygulamayla ilişkilendirildiği herhangi bir dosya türü olabilir.It can be of any file type for which the extension has been associated with an application that is installed on the system. Örneğin, Not Defteri gibi bir düzenleyici ile ilişkili metin dosyaları varsa FileName özelliği. txt uzantısına sahip olabilir veya. doc dosyalarını Microsoft Word gibi bir sözcük işleme aracı ile ilişkilendirdiyseniz. doc uzantısı olabilir.For example, the FileName property can have a .txt extension if you have associated text files with an editor, such as Notepad, or it can have a .doc extension if you have associated.doc files with a word processing tool, such as Microsoft Word.

Uygulamayı ilk olarak yüklediğiniz konumu (örneğin, bir Web adresi) belirterek bir ClickOnce uygulaması başlatabilirsiniz.You can start a ClickOnce application by specifying the location (for example, a Web address) from which you originally installed the application. Sabit sürücünüzde yüklü konumunu belirterek bir ClickOnce uygulaması başlatmayın.Do not start a ClickOnce application by specifying its installed location on your hard drive.

StartInfo örneğinin ProcessStartInfo.UserName ve ProcessStartInfo.Password özellikleri ayarlandıysa, yönetilmeyen CreateProcessWithLogonW işlevi çağrılır, bu, ProcessStartInfo.CreateNoWindow Özellik değeri true veya ProcessStartInfo.WindowStyle Özellik değeri olsa bile işlemi yeni bir pencerede başlatır @no__ t_7_ .If the ProcessStartInfo.UserName and ProcessStartInfo.Password properties of the StartInfo instance are set, the unmanaged CreateProcessWithLogonW function is called, which starts the process in a new window even if the ProcessStartInfo.CreateNoWindow property value is true or the ProcessStartInfo.WindowStyle property value is ProcessWindowStyle.Hidden. ProcessStartInfo.Domain özelliği null, ProcessStartInfo.UserName özelliği UPN biçiminde olmalıdır, kullanıcı@DNS_domain_name.If the ProcessStartInfo.Domain property is null, the ProcessStartInfo.UserName property must be in UPN format, user@DNS_domain_name.

Diğer aşırı yüklemelerin aksine, parametresi olmayan Start aşırı yüklemesi static üyesi değildir.Unlike the other overloads, the overload of Start that has no parameters is not a static member. Zaten bir Process örneği oluşturduğunuzda, belirtilen başlangıç bilgilerini (dosya adı dahil) ve bir işlem kaynağı başlatıp mevcut Process örneğiyle ilişkilendirmek istediğinizde bu aşırı yüklemeyi kullanın.Use that overload when you have already created a Process instance, specified start information (including the file name), and want to start a process resource and associate it with the existing Process instance. Mevcut bir bileşen için işlem başlatmak yerine yeni bir Process bileşeni oluşturmak istediğinizde static aşırı yüklerden birini kullanın.Use one of the static overloads when you want to create a new Process component rather than start a process for an existing component. Bu aşırı yükleme ve parametresi olmayan aşırı yükleme, bir ProcessStartInfo örneği kullanarak işlem kaynağı için başlangıç bilgilerini belirtmenize izin verir.Both this overload and the overload that has no parameters allow you to specify the start information for the process resource by using a ProcessStartInfo instance.

Tırnak işaretleri kullanılarak sisteminizde tanımlanmış bir yol değişkenine sahipseniz, bu konumda bulunan herhangi bir işlemi başlatırken bu yolu tam olarak nitelemeniz gerekir.If you have a path variable declared in your system using quotes, you must fully qualify that path when starting any process found in that location. Aksi takdirde, sistem yolu bulamaz.Otherwise, the system will not find the path. Örneğin, c:\mypath yolunuzda yoksa ve tırnak path = %path%;"c:\mypath"işaretleri kullanarak eklerseniz, bu işlem başlatıldığında c:\mypath herhangi bir işlemi tamamen nitelemeniz gerekir.For example, if c:\mypath is not in your path, and you add it using quotation marks: path = %path%;"c:\mypath", you must fully qualify any process in c:\mypath when starting it.

Not

ASP.NET Web sayfası ve sunucu denetim kodu, Web sunucusundaki ASP.NET çalışan işleminin bağlamında yürütülür.ASP.NET Web page and server control code executes in the context of the ASP.NET worker process on the Web server. Bir ASP.NET Web sayfasında veya sunucu denetiminde Start yöntemini kullanırsanız, yeni işlem Web sunucusunda kısıtlı izinlerle yürütülür.If you use the Start method in an ASP.NET Web page or server control, the new process executes on the Web server with restricted permissions. İşlem, istemci tarayıcısıyla aynı bağlamda başlatılmaz ve Kullanıcı masaüstüne erişimi yoktur.The process does not start in the same context as the client browser, and does not have access to the user desktop.

Bir işlemi başlatmak için Start kullandığınızda, bunu kapatmanız veya sistem kaynaklarını kaybetme riskini almanız gerekebilir.Whenever you use Start to start a process, you might need to close it or you risk losing system resources. CloseMainWindow veya Killkullanarak işlem kapatın.Close processes using CloseMainWindow or Kill. HasExited özelliğini kullanarak bir işlemin zaten kapatılıp kapatılmadığını kontrol edebilirsiniz.You can check whether a process has already been closed by using its HasExited property.

Burada, yönetilen iş parçacıklarında grup durumları hakkında bir notun olması gerekir.A note about apartment states in managed threads is necessary here. startInfo parametresinde UseShellExecute true, main() yönteminde özniteliği [STAThread] ayarlayarak uygulamanızda bir iş parçacığı modeli ayarladığınızdan emin olun.When UseShellExecute is true on the startInfo parameter, make sure you have set a threading model on your application by setting the attribute [STAThread] on the main() method. Aksi takdirde, yönetilen bir iş parçacığı unknown bir durumda olabilir veya MTA durumunda UseShellExecute trueçakışma olan.Otherwise, a managed thread can be in an unknown state or put in the MTA state, the latter of which conflicts with UseShellExecute being true. Bazı yöntemler, Grup durumunun unknownolmasını gerektirir.Some methods require that the apartment state not be unknown. Durum açıkça ayarlanmamışsa, uygulama böyle bir yöntemle karşılaştığında, varsayılan olarak MTAolur ve bir kez ayarlandığında, Grup durumu değiştirilemez.If the state is not explicitly set, when the application encounters such a method, it defaults to MTA, and once set, the apartment state cannot be changed. Ancak MTA, işletim sistemi kabuğu iş parçacığını yönetirken bir özel durumun oluşturulmasına neden olur.However, MTA causes an exception to be thrown when the operating system shell is managing the thread.

Güvenlik

LinkDemand
şu anki çağırana ilişkin tam güven için.for full trust for the immediate caller. Bu üye kısmen güvenilen kodla kullanılamaz.This member cannot be used by partially trusted code.

Ayrıca bkz.

Start(String)

Bir belge veya uygulama dosyası adını belirterek işlem kaynağını başlatır ve kaynağı yeni bir Process bileşeniyle ilişkilendirir.Starts a process resource by specifying the name of a document or application file and associates the resource with a new Process component.

public:
 static System::Diagnostics::Process ^ Start(System::String ^ fileName);
public static System.Diagnostics.Process Start (string fileName);
static member Start : string -> System.Diagnostics.Process
Public Shared Function Start (fileName As String) As Process

Parametreler

fileName
String

İşlemde çalıştırılacak belge veya uygulama dosyasının adı.The name of a document or application file to run in the process.

Döndürülenler

İşlem kaynağıyla ilişkili yeni bir Process veya işlem kaynağı başlatılmamışsa null.A new Process that is associated with the process resource, or null if no process resource is started. Aynı işlemin zaten çalışmakta olan örneklerinin yanında başlatılan yeni bir işlemin diğerlerinden bağımsız olacağını unutmayın.Note that a new process that's started alongside already running instances of the same process will be independent from the others. Ayrıca, Start, HasExited özelliği zaten trueolarak ayarlanmış null olmayan bir Işlem döndürebilir.In addition, Start may return a non-null Process with its HasExited property already set to true. Bu durumda, başlatılan işlem kendisinin var olan bir örneğini etkinleştirmiş ve sonra çıkılamayabilir.In this case, the started process may have activated an existing instance of itself and then exited.

Özel Durumlar

İlişkili dosya açılırken bir hata oluştu.An error occurred when opening the associated file.

veya-or-

fileName belirtilen dosya bulunamadı.The file specified in the fileName could not be found.

İşlem nesnesi zaten atıldı.The process object has already been disposed.

PATH ortam değişkeninde tırnak işareti içeren bir dize vardır.The PATH environment variable has a string containing quotes.

Örnekler

Aşağıdaki örnek ilk olarak Internet Explorer 'ın bir örneğini bir kez oluşturup tarayıcıda sık kullanılanlar klasörünün içeriğini görüntüler.The following example first spawns an instance of Internet Explorer and displays the contents of the Favorites folder in the browser. Daha sonra bazı Internet Explorer örneklerini başlatır ve bazı belirli sayfaları veya siteleri görüntüler.It then starts some other instances of Internet Explorer and displays some specific pages or sites. Son olarak, belirli bir siteye gidilirken pencereyi simge durumuna küçültmekte olan Internet Explorer 'ı başlatır.Finally it starts Internet Explorer with the window being minimized while navigating to a specific site.

#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()
{
    // 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 = 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()
            ' 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")
        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

Açıklamalar

Dosya adını belirterek işlem kaynağını başlatmak için bu aşırı yüklemeyi kullanın.Use this overload to start a process resource by specifying its file name. Aşırı yükleme, kaynağı yeni bir Process nesnesiyle ilişkilendirir.The overload associates the resource with a new Process object.

Not

Başlatılacak yürütülebilir dosyanın adresi bir URL ise, işlem başlatılmaz ve null döndürülür.If the address of the executable file to start is a URL, the process is not started and null is returned.

Bu aşırı yükleme, önce yeni bir Process örneği oluşturmadan bir işlem başlatabilmenizi sağlar.This overload lets you start a process without first creating a new Process instance. Aşırı yükleme, yeni bir Process örneği oluşturma, StartInfo özelliğinin FileName üyesini ayarlama ve Process örneği için Start çağırma adımlarının açık adımlarına bir alternatiftir.The overload is an alternative to the explicit steps of creating a new Process instance, setting the FileName member of the StartInfo property, and calling Start for the Process instance.

fileName parametresini, uygulamayı ilk yüklediğiniz konuma (örneğin, bir Web adresi) ayarlayarak bir ClickOnce uygulaması başlatabilirsiniz.You can start a ClickOnce application by setting the fileName parameter to the location (for example, a Web address) from which you originally installed the application. Sabit sürücünüzde yüklü konumunu belirterek bir ClickOnce uygulaması başlatmayın.Do not start a ClickOnce application by specifying its installed location on your hard drive.

Dosya adını belirterek bir işlemin başlatılması, Windows Start menüsünün Run iletişim kutusunda bilgileri yazmaya benzer.Starting a process by specifying its file name is similar to typing the information in the Run dialog box of the Windows Start menu. Bu nedenle, dosya adının yürütülebilir bir dosyayı göstermesi gerekmez.Therefore, the file name does not need to represent an executable file. Uzantının sistemde yüklü bir uygulamayla ilişkilendirildiği herhangi bir dosya türü olabilir.It can be of any file type for which the extension has been associated with an application installed on the system. Örneğin, Not Defteri gibi bir düzenleyici ile ilişkili metin dosyaları varsa dosya adında bir. txt uzantısı olabilir veya. doc dosyalarını Microsoft Word gibi bir sözcük işleme aracı ile ilişkilendirdiyseniz. doc olabilir.For example the file name 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. Benzer şekilde, Run iletişim kutusunun. exe uzantısı olan veya olmadan çalıştırılabilir dosya adını kabul edebileceği şekilde,. exe uzantısı fileName parametresinde isteğe bağlıdır.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 parameter. Örneğin, fileName parametresini "Notepad. exe" ya da "Notepad" olarak ayarlayabilirsiniz.For example, you can set the fileName parameter to either "Notepad.exe" or "Notepad".

Bu aşırı yükleme, işlem için komut satırı bağımsız değişkenlerine izin vermiyor.This overload does not allow command-line arguments for the process. İşlem için bir veya daha fazla komut satırı bağımsız değişkeni belirtmeniz gerekiyorsa Process.Start(ProcessStartInfo) veya Process.Start(String, String) aşırı yüklerini kullanın.If you need to specify one or more command-line arguments for the process, use the Process.Start(ProcessStartInfo) or Process.Start(String, String) overloads.

Diğer aşırı yüklemelerin aksine, parametresi olmayan Start aşırı yüklemesi static üyesi değildir.Unlike the other overloads, the overload of Start that has no parameters is not a static member. Zaten bir Process örneği oluşturduğunuzda, belirtilen başlangıç bilgilerini (dosya adı dahil) ve bir işlem kaynağı başlatıp mevcut Process örneğiyle ilişkilendirmek istediğinizde bu aşırı yüklemeyi kullanın.Use that overload when you have already created a Process instance, specified start information (including the file name), and want to start a process resource and associate it with the existing Process instance. Mevcut bir bileşen için işlem başlatmak yerine yeni bir Process bileşeni oluşturmak istediğinizde static aşırı yüklerden birini kullanın.Use one of the static overloads when you want to create a new Process component rather than start a process for an existing component. Bu aşırı yükleme ve parametresi olmayan aşırı yükleme, başlatılacak işlem kaynağının dosya adını belirtmenize izin verir.Both this overload and the overload that has no parameters allow you to specify the file name of the process resource to start.

Tırnak işaretleri kullanılarak sisteminizde tanımlanmış bir yol değişkenine sahipseniz, bu konumda bulunan herhangi bir işlemi başlatırken bu yolu tam olarak nitelemeniz gerekir.If you have a path variable declared in your system using quotes, you must fully qualify that path when starting any process found in that location. Aksi takdirde, sistem yolu bulamaz.Otherwise, the system will not find the path. Örneğin, c:\mypath yolunuzda yoksa ve tırnak path = %path%;"c:\mypath"işaretleri kullanarak eklerseniz, bu işlem başlatıldığında c:\mypath herhangi bir işlemi tamamen nitelemeniz gerekir.For example, if c:\mypath is not in your path, and you add it using quotation marks: path = %path%;"c:\mypath", you must fully qualify any process in c:\mypath when starting it.

Not

ASP.NET Web sayfası ve sunucu denetim kodu, Web sunucusundaki ASP.NET çalışan işleminin bağlamında yürütülür.ASP.NET Web page and server control code executes in the context of the ASP.NET worker process on the Web server. Bir ASP.NET Web sayfasında veya sunucu denetiminde Start yöntemini kullanırsanız, yeni işlem Web sunucusunda kısıtlı izinlerle yürütülür.If you use the Start method in an ASP.NET Web page or server control, the new process executes on the Web server with restricted permissions. İşlem, istemci tarayıcısıyla aynı bağlamda başlatılmaz ve Kullanıcı masaüstüne erişimi yoktur.The process does not start in the same context as the client browser, and does not have access to the user desktop.

Bir işlemi başlatmak için Start kullandığınızda, bunu kapatmanız veya sistem kaynaklarını kaybetme riskini almanız gerekebilir.Whenever you use Start to start a process, you might need to close it or you risk losing system resources. CloseMainWindow veya Killkullanarak işlem kapatın.Close processes using CloseMainWindow or Kill. HasExited özelliğini kullanarak bir işlemin zaten kapatılıp kapatılmadığını kontrol edebilirsiniz.You can check whether a process has already been closed by using its HasExited property.

Burada, yönetilen iş parçacıklarında grup durumları hakkında bir notun olması gerekir.A note about apartment states in managed threads is necessary here. İşlem bileşeninin StartInfo özelliğinde UseShellExecute true, main() yönteminde özniteliği [STAThread] ayarlayarak uygulamanızda bir iş parçacığı modeli ayarladığınızdan emin olun.When UseShellExecute is true on the process component's StartInfo property, make sure you have set a threading model on your application by setting the attribute [STAThread] on the main() method. Aksi takdirde, yönetilen bir iş parçacığı unknown bir durumda olabilir veya MTA durumunda UseShellExecute trueçakışma olan.Otherwise, a managed thread can be in an unknown state or put in the MTA state, the latter of which conflicts with UseShellExecute being true. Bazı yöntemler, Grup durumunun unknownolmasını gerektirir.Some methods require that the apartment state not be unknown. Durum açıkça ayarlanmamışsa, uygulama böyle bir yöntemle karşılaştığında, varsayılan olarak MTAolur ve bir kez ayarlandığında, Grup durumu değiştirilemez.If the state is not explicitly set, when the application encounters such a method, it defaults to MTA, and once set, the apartment state cannot be changed. Ancak MTA, işletim sistemi kabuğu iş parçacığını yönetirken bir özel durumun oluşturulmasına neden olur.However, MTA causes an exception to be thrown when the operating system shell is managing the thread.

Güvenlik

LinkDemand
şu anki çağırana ilişkin tam güven için.for full trust for the immediate caller. Bu üye kısmen güvenilen kodla kullanılamaz.This member cannot be used by partially trusted code.

Ayrıca bkz.

Start(String, String)

Bir uygulamanın adını ve bir dizi komut satırı bağımsız değişkenini belirterek işlem kaynağını başlatır ve kaynağı yeni bir Process bileşeniyle ilişkilendirir.Starts a process resource by specifying the name of an application and a set of command-line arguments, and associates the resource with a new Process component.

public:
 static System::Diagnostics::Process ^ Start(System::String ^ fileName, System::String ^ arguments);
public static System.Diagnostics.Process Start (string fileName, string arguments);
static member Start : string * string -> System.Diagnostics.Process
Public Shared Function Start (fileName As String, arguments As String) As Process

Parametreler

fileName
String

İşlemde çalıştırılacak uygulama dosyasının adı.The name of an application file to run in the process.

arguments
String

İşlemi başlatma sırasında geçirilecek komut satırı bağımsız değişkenleri.Command-line arguments to pass when starting the process.

Döndürülenler

İşlem kaynağıyla ilişkili yeni bir Process veya işlem kaynağı başlatılmamışsa null.A new Process that is associated with the process resource, or null if no process resource is started. Aynı işlemin zaten çalışmakta olan örneklerinin yanında başlatılan yeni bir işlemin diğerlerinden bağımsız olacağını unutmayın.Note that a new process that's started alongside already running instances of the same process will be independent from the others. Ayrıca, Start, HasExited özelliği zaten trueolarak ayarlanmış null olmayan bir Işlem döndürebilir.In addition, Start may return a non-null Process with its HasExited property already set to true. Bu durumda, başlatılan işlem kendisinin var olan bir örneğini etkinleştirmiş ve sonra çıkılamayabilir.In this case, the started process may have activated an existing instance of itself and then exited.

Özel Durumlar

fileName veya arguments parametresi null.The fileName or arguments parameter is null.

İlişkili dosya açılırken bir hata oluştu.An error occurred when opening the associated file.

veya-or-

fileName belirtilen dosya bulunamadı.The file specified in the fileName could not be found.

veya-or- Bağımsız değişkenlerin uzunluğunun toplamı ve işlemin tam yolunun uzunluğu 2080 ' ü aşıyor.The sum of the length of the arguments and the length of the full path to the process exceeds 2080. Bu özel durumla ilişkili hata iletisi aşağıdakilerden biri olabilir: "bir sistem çağrısına geçirilen veri alanı çok küçük."The error message associated with this exception can be one of the following: "The data area passed to a system call is too small." veya "erişim engellendi."or "Access is denied."

İşlem nesnesi zaten atıldı.The process object has already been disposed.

PATH ortam değişkeninde tırnak işareti içeren bir dize vardır.The PATH environment variable has a string containing quotes.

Örnekler

Aşağıdaki örnek ilk olarak Internet Explorer 'ın bir örneğini bir kez oluşturup tarayıcıda sık kullanılanlar klasörünün içeriğini görüntüler.The following example first spawns an instance of Internet Explorer and displays the contents of the Favorites folder in the browser. Daha sonra bazı Internet Explorer örneklerini başlatır ve bazı belirli sayfaları veya siteleri görüntüler.It then starts some other instances of Internet Explorer and displays some specific pages or sites. Son olarak, belirli bir siteye gidilirken pencereyi simge durumuna küçültmekte olan Internet Explorer 'ı başlatır.Finally it starts Internet Explorer with the window being minimized while navigating to a specific site.

#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()
{
    // 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 = 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()
            ' 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")
        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

Açıklamalar

Dosya adını ve komut satırı bağımsız değişkenlerini belirterek işlem kaynağını başlatmak için bu aşırı yüklemeyi kullanın.Use this overload to start a process resource by specifying its file name and command-line arguments. Aşırı yükleme, kaynağı yeni bir Process nesnesiyle ilişkilendirir.The overload associates the resource with a new Process object.

Not

Başlatılacak yürütülebilir dosyanın adresi bir URL ise, işlem başlatılmaz ve null döndürülür.If the address of the executable file to start is a URL, the process is not started and null is returned.

Bu aşırı yükleme, önce yeni bir Process örneği oluşturmadan bir işlem başlatabilmenizi sağlar.This overload lets you start a process without first creating a new Process instance. Aşırı yükleme, yeni bir Process örneği oluşturma, StartInfo özelliğinin FileName ve Arguments üyelerini ayarlama ve Start örneği için Process çağırma adımlarının bir alternatifidir.The overload is an alternative to the explicit steps of creating a new Process instance, setting the FileName and Arguments members of the StartInfo property, and calling Start for the Process instance.

Dosya adını ve bağımsız değişkenlerini belirterek bir işlemin başlatılması, Windows Start menüsünün Run iletişim kutusuna dosya adı ve komut satırı bağımsız değişkenlerini yazmaya benzer.Starting a process by specifying its file name and arguments is similar to typing the file name and command-line arguments in the Run dialog box of the Windows Start menu. Bu nedenle, dosya adının yürütülebilir bir dosyayı göstermesi gerekmez.Therefore, the file name does not need to represent an executable file. Uzantının sistemde yüklü bir uygulamayla ilişkilendirildiği herhangi bir dosya türü olabilir.It can be of any file type for which the extension has been associated with an application installed on the system. Örneğin, Not Defteri gibi bir düzenleyici ile ilişkili metin dosyaları varsa dosya adında bir. txt uzantısı olabilir veya. doc dosyalarını Microsoft Word gibi bir sözcük işleme aracı ile ilişkilendirdiyseniz. doc olabilir.For example the file name 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. Benzer şekilde, Run iletişim kutusunun. exe uzantısı olan veya olmadan çalıştırılabilir dosya adını kabul edebileceği şekilde,. exe uzantısı fileName parametresinde isteğe bağlıdır.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 parameter. Örneğin, fileName parametresini "Notepad. exe" ya da "Notepad" olarak ayarlayabilirsiniz.For example, you can set the fileName parameter to either "Notepad.exe" or "Notepad". fileName parametresi bir yürütülebilir dosyayı temsil ediyorsa, arguments parametresi, Notepad.exe myfile.txtmetin dosyası gibi, üzerinde işlem yapılacak bir dosyayı temsil edebilir.If the fileName parameter represents an executable file, the arguments parameter might represent a file to act upon, such as the text file in Notepad.exe myfile.txt. fileName parametresi bir komut (. cmd) dosyasını temsil ediyorsa, arguments parametresi bir "/c" veya "/k" bağımsız değişkenini içermesi gerekir.If the fileName parameter represents a command (.cmd) file, the arguments parameter must include either a "/c" or "/k" argument to specify whether the command window exits or remains after completion.

Diğer aşırı yüklemelerin aksine, parametresi olmayan Start aşırı yüklemesi static üyesi değildir.Unlike the other overloads, the overload of Start that has no parameters is not a static member. Zaten bir Process örneği oluşturduğunuzda, belirtilen başlangıç bilgilerini (dosya adı dahil) ve bir işlem kaynağı başlatıp mevcut Process örneğiyle ilişkilendirmek istediğinizde bu aşırı yüklemeyi kullanın.Use that overload when you have already created a Process instance, specified start information (including the file name), and want to start a process resource and associate it with the existing Process instance. Mevcut bir bileşen için işlem başlatmak yerine yeni bir Process bileşeni oluşturmak istediğinizde static aşırı yüklerden birini kullanın.Use one of the static overloads when you want to create a new Process component rather than start a process for an existing component. Bu aşırı yükleme ve parametresi olmayan aşırı yükleme, başlatılacak işlem kaynağının dosya adını ve geçirilecek komut satırı bağımsız değişkenlerini belirtmenize olanak tanır.Both this overload and the overload that has no parameters allow you to specify the file name of the process resource to start and command-line arguments to pass.

Tırnak işaretleri kullanılarak sisteminizde tanımlanmış bir yol değişkenine sahipseniz, bu konumda bulunan herhangi bir işlemi başlatırken bu yolu tam olarak nitelemeniz gerekir.If you have a path variable declared in your system using quotes, you must fully qualify that path when starting any process found in that location. Aksi takdirde, sistem yolu bulamaz.Otherwise, the system will not find the path. Örneğin, c:\mypath yolunuzda yoksa ve tırnak path = %path%;"c:\mypath"işaretleri kullanarak eklerseniz, bu işlem başlatıldığında c:\mypath herhangi bir işlemi tamamen nitelemeniz gerekir.For example, if c:\mypath is not in your path, and you add it using quotation marks: path = %path%;"c:\mypath", you must fully qualify any process in c:\mypath when starting it.

Not

ASP.NET Web sayfası ve sunucu denetim kodu, Web sunucusundaki ASP.NET çalışan işleminin bağlamında yürütülür.ASP.NET Web page and server control code executes in the context of the ASP.NET worker process on the Web server. Bir ASP.NET Web sayfasında veya sunucu denetiminde Start yöntemini kullanırsanız, yeni işlem Web sunucusunda kısıtlı izinlerle yürütülür.If you use the Start method in an ASP.NET Web page or server control, the new process executes on the Web server with restricted permissions. İşlem, istemci tarayıcısıyla aynı bağlamda başlatılmaz ve Kullanıcı masaüstüne erişimi yoktur.The process does not start in the same context as the client browser, and does not have access to the user desktop.

Bir işlemi başlatmak için Start kullandığınızda, bunu kapatmanız veya sistem kaynaklarını kaybetme riskini almanız gerekebilir.Whenever you use Start to start a process, you might need to close it or you risk losing system resources. CloseMainWindow veya Killkullanarak işlem kapatın.Close processes using CloseMainWindow or Kill. HasExited özelliğini kullanarak bir işlemin zaten kapatılıp kapatılmadığını kontrol edebilirsiniz.You can check whether a process has already been closed by using its HasExited property.

Burada, yönetilen iş parçacıklarında grup durumları hakkında bir notun olması gerekir.A note about apartment states in managed threads is necessary here. İşlem bileşeninin StartInfo özelliğinde UseShellExecute true, main() yönteminde özniteliği [STAThread] ayarlayarak uygulamanızda bir iş parçacığı modeli ayarladığınızdan emin olun.When UseShellExecute is true on the process component's StartInfo property, make sure you have set a threading model on your application by setting the attribute [STAThread] on the main() method. Aksi takdirde, yönetilen bir iş parçacığı unknown bir durumda olabilir veya MTA durumunda UseShellExecute trueçakışma olan.Otherwise, a managed thread can be in an unknown state or put in the MTA state, the latter of which conflicts with UseShellExecute being true. Bazı yöntemler, Grup durumunun unknownolmasını gerektirir.Some methods require that the apartment state not be unknown. Durum açıkça ayarlanmamışsa, uygulama böyle bir yöntemle karşılaştığında, varsayılan olarak MTAolur ve bir kez ayarlandığında, Grup durumu değiştirilemez.If the state is not explicitly set, when the application encounters such a method, it defaults to MTA, and once set, the apartment state cannot be changed. Ancak MTA, işletim sistemi kabuğu iş parçacığını yönetirken bir özel durumun oluşturulmasına neden olur.However, MTA causes an exception to be thrown when the operating system shell is managing the thread.

Güvenlik

LinkDemand
şu anki çağırana ilişkin tam güven için.for full trust for the immediate caller. Bu üye kısmen güvenilen kodla kullanılamaz.This member cannot be used by partially trusted code.

Ayrıca bkz.

Start(String, String, SecureString, String)

Önemli

Bu API, CLS uyumlu değildir.

Bir uygulama adı, Kullanıcı adı, parola ve etki alanı belirterek ve kaynağı yeni bir Process bileşeniyle ilişkilenerek bir işlem kaynağı başlatır.Starts a process resource by specifying the name of an application, a user name, a password, and a domain and associates the resource with a new Process component.

public:
 static System::Diagnostics::Process ^ Start(System::String ^ fileName, System::String ^ userName, System::Security::SecureString ^ password, System::String ^ domain);
[System.CLSCompliant(false)]
public static System.Diagnostics.Process Start (string fileName, string userName, System.Security.SecureString password, string domain);
static member Start : string * string * System.Security.SecureString * string -> System.Diagnostics.Process
Public Shared Function Start (fileName As String, userName As String, password As SecureString, domain As String) As Process

Parametreler

fileName
String

İşlemde çalıştırılacak uygulama dosyasının adı.The name of an application file to run in the process.

userName
String

İşlem başlatılırken kullanılacak Kullanıcı adı.The user name to use when starting the process.

password
SecureString

İşlem başlatılırken kullanılacak parolayı içeren bir SecureString.A SecureString that contains the password to use when starting the process.

domain
String

İşlem başlatılırken kullanılacak etki alanı.The domain to use when starting the process.

Döndürülenler

İşlem kaynağıyla ilişkili yeni bir Process veya işlem kaynağı başlatılmamışsa null.A new Process that is associated with the process resource, or null if no process resource is started. Aynı işlemin zaten çalışmakta olan örneklerinin yanında başlatılan yeni bir işlemin diğerlerinden bağımsız olacağını unutmayın.Note that a new process that's started alongside already running instances of the same process will be independent from the others. Ayrıca, Start, HasExited özelliği zaten trueolarak ayarlanmış null olmayan bir Işlem döndürebilir.In addition, Start may return a non-null Process with its HasExited property already set to true. Bu durumda, başlatılan işlem kendisinin var olan bir örneğini etkinleştirmiş ve sonra çıkılamayabilir.In this case, the started process may have activated an existing instance of itself and then exited.

Öznitelikler

Özel Durumlar

Dosya adı belirtilmedi.No file name was specified.

İlişkili dosya açılırken bir hata oluştu.There was an error in opening the associated file.

veya-or-

fileName belirtilen dosya bulunamadı.The file specified in the fileName could not be found.

İşlem nesnesi zaten atıldı.The process object has already been disposed.

Bu üye Linux veya macOS (yalnızca .NET Core) üzerinde desteklenmez.This member is not supported on Linux or macOS (.NET Core only).

Örnekler

Aşağıdaki kod örneği, yürütülebilir bir dosyayı başlatmak için bu aşırı yüklemenin kullanımını gösterir ve ayrıca, yürütülebilir olmayan bir dosyayla ilişkili bir uygulamayı başlatmak için bir deneme yapıldığında Win32Exception üretilmesini gösterir.The following code example shows the use of this overload to start an executable file and also demonstrates the throwing of a Win32Exception when an attempt is made to start an application associated with a nonexecutable file.

// NOTE: This example requires a text.txt file file in your Documents folder
using System;
using System.Diagnostics;
using System.Security;
using System.ComponentModel;

class Example
{
    static void Main()
    {
        Console.Write("Enter your domain: ");
        string domain = Console.ReadLine();
        Console.Write("Enter you user name: ");
        string uname = Console.ReadLine();
        Console.Write("Enter your password: ");
        SecureString password = new SecureString();
        ConsoleKeyInfo key;
        do
        {
            key = Console.ReadKey(true);

            // Ignore any key out of range.
            if (((int)key.Key) >= 33 && ((int)key.Key <= 90) && key.Key != ConsoleKey.Enter)
            {
                // Append the character to the password.
                password.AppendChar(key.KeyChar);
                Console.Write("*");
            }
            // Exit if Enter key is pressed.
        } while (key.Key != ConsoleKey.Enter);
        Console.WriteLine();

        try
        {
            Console.WriteLine("\nTrying to launch NotePad using your login information...");
            Process.Start("notepad.exe", uname, password, domain);
        }
        catch (Win32Exception ex)
        {
            Console.WriteLine(ex.Message);
        }

        string path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\";

        try
        {
            // The following call to Start succeeds if test.txt exists.
            Console.WriteLine("\nTrying to launch 'text.txt'...");
            Process.Start(path + "text.txt");
        }
        catch (Win32Exception ex)
        {
            Console.WriteLine(ex.Message);
        }

        try
        {
            // Attempting to start in a shell using this Start overload fails. This causes
            // the following exception, which is picked up in the catch block below:
            // The specified executable is not a valid application for this OS platform.
            Console.WriteLine("\nTrying to launch 'text.txt' with your login information...");
            Process.Start(path + "text.txt", uname, password, domain);
        }
        catch (Win32Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
        finally
        {
            password.Dispose();
        }
    }
}
' This sample requires a text.txt file file in your documents folder.
' You'll also need to set the startup object in the project to Sub Main.
Imports System.Diagnostics
Imports System.Security
Imports System.ComponentModel

Module Program
    Sub Main()
        Console.Write("Enter your domain: ")
        Dim domain As String = Console.ReadLine()
        Console.Write("Enter you user name: ")
        Dim uname As String = Console.ReadLine()
        Console.Write("Enter your password: ")
        Dim password As New SecureString()
        Dim key As ConsoleKeyInfo
        Do
            key = Console.ReadKey(True)

            ' Ignore any key out of range.
            If key.Key >= 33 AndAlso key.Key <= 90 AndAlso key.Key <> ConsoleKey.Enter Then
                ' Append the character to the password.
                password.AppendChar(key.KeyChar)
                Console.Write("*")
            End If
            ' Exit if Enter key is pressed.
        Loop While key.Key <> ConsoleKey.Enter
        Console.WriteLine()

        Try
            Console.WriteLine(vbCrLf + "Trying to launch NotePad using your login information...")
            Process.Start("notepad.exe", uname, password, domain)
        Catch ex As Win32Exception
            Console.WriteLine(ex.Message)
        End Try

        Dim path As String = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\"

        Try
            ' The following call to Start succeeds if test.txt exists.
            Console.WriteLine(vbCrLf + "Trying to launch 'text.txt'...")
            Process.Start(path + "Text.txt")
        Catch ex As Win32Exception
            Console.WriteLine(ex.Message)
        End Try

        Try
            ' Attempting to start in a shell using this Start overload fails. This causes
            ' the following exception, which is picked up in the catch block below:
            ' The specified executable is not a valid application for this OS platform.
            Console.WriteLine(vbCrLf + "Trying to launch 'text.txt' with your login information...")
            Process.Start(path + "Text.txt", uname, password, domain)
        Catch ex As Win32Exception
            Console.WriteLine(ex.Message)
        Finally
            password.Dispose()
        End Try
    End Sub
End Module

Açıklamalar

Dosya adını, Kullanıcı adını, parolasını ve etki alanını belirterek yeni bir işlem ve birincil iş parçacığını oluşturmak için bu aşırı yüklemeyi kullanın.Use this overload to create a new process and its primary thread by specifying its file name, user name, password, and domain. Ardından yeni işlem belirtilen yürütülebilir dosyayı belirtilen kimlik bilgilerinin (Kullanıcı, etki alanı ve parola) güvenlik bağlamında çalıştırır.The new process then runs the specified executable file in the security context of the specified credentials (user, domain, and password).

Not

Yürütülebilir dosya uzak bir sürücüde yer aldığı zaman, bağlantılı bir sürücü harfi değil, bir Tekdüzen Kaynak tanımlayıcısı (URI) kullanarak ağ paylaşımının belirlenmesi gerekir.When the executable file is located on a remote drive, you must identify the network share by using a uniform resource identifier (URI), not a linked drive letter.

Not

Başlatılacak yürütülebilir dosyanın adresi bir URL ise, işlem başlatılmaz ve null döndürülür.If the address of the executable file to start is a URL, the process is not started and null is returned.

Bu aşırı yükleme, önce yeni bir Process örneği oluşturmadan bir işlem başlatabilmenizi sağlar.This overload lets you start a process without first creating a new Process instance. Aşırı yükleme, yeni bir Process örneği oluşturma, Domain özelliğinin FileName, UserName, Passwordve StartInfo özelliklerini ayarlama ve Start örneği için Process çağırma adımlarının bir alternatifidir.The overload is an alternative to the explicit steps of creating a new Process instance, setting the FileName, UserName, Password, and Domain properties of the StartInfo property, and calling Start for the Process instance.

Benzer şekilde, Çalıştır iletişim kutusunun. exe uzantısı olan veya olmadan çalıştırılabilir dosya adını kabul edebileceği şekilde,. exe uzantısı fileName parametresinde isteğe bağlıdır.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 parameter. Örneğin, fileName parametresini "Notepad. exe" ya da "Notepad" olarak ayarlayabilirsiniz.For example, you can set the fileName parameter to either "Notepad.exe" or "Notepad". fileName parametresi bir yürütülebilir dosyayı temsil ediyorsa, arguments parametresi, Notepad.exe myfile.txtmetin dosyası gibi, üzerinde işlem yapılacak bir dosyayı temsil edebilir.If the fileName parameter represents an executable file, the arguments parameter might represent a file to act upon, such as the text file in Notepad.exe myfile.txt.

Not

Dosya adı, userName, passwordve domain parametrelere sahip Start aşırı yüklerdeki yürütülebilir bir dosyayı temsil etmelidir.The file name must represent an executable file in the Start overloads that have userName, password, and domain parameters.

Bir işlemi başlatmak için Start kullandığınızda, bunu kapatmanız veya sistem kaynaklarını kaybetme riskini almanız gerekebilir.Whenever you use Start to start a process, you might need to close it or you risk losing system resources. CloseMainWindow veya Killkullanarak işlem kapatın.Close processes using CloseMainWindow or Kill. HasExited özelliğini kullanarak bir işlemin zaten kapatılıp kapatılmadığını kontrol edebilirsiniz.You can check whether a process has already been closed by using its HasExited property.

Güvenlik

LinkDemand
şu anki çağırana ilişkin tam güven için.for full trust for the immediate caller. Bu üye kısmen güvenilen kodla kullanılamaz.This member cannot be used by partially trusted code.

Start(String, String, String, SecureString, String)

Önemli

Bu API, CLS uyumlu değildir.

Bir uygulamanın adını, komut satırı bağımsız değişkenleri kümesini, bir kullanıcı adını, parolayı ve etki alanını belirterek ve kaynağı yeni bir Process bileşeniyle ilişkilenerek bir işlem kaynağı başlatır.Starts a process resource by specifying the name of an application, a set of command-line arguments, a user name, a password, and a domain and associates the resource with a new Process component.

public:
 static System::Diagnostics::Process ^ Start(System::String ^ fileName, System::String ^ arguments, System::String ^ userName, System::Security::SecureString ^ password, System::String ^ domain);
[System.CLSCompliant(false)]
public static System.Diagnostics.Process Start (string fileName, string arguments, string userName, System.Security.SecureString password, string domain);
static member Start : string * string * string * System.Security.SecureString * string -> System.Diagnostics.Process
Public Shared Function Start (fileName As String, arguments As String, userName As String, password As SecureString, domain As String) As Process

Parametreler

fileName
String

İşlemde çalıştırılacak uygulama dosyasının adı.The name of an application file to run in the process.

arguments
String

İşlemi başlatma sırasında geçirilecek komut satırı bağımsız değişkenleri.Command-line arguments to pass when starting the process.

userName
String

İşlem başlatılırken kullanılacak Kullanıcı adı.The user name to use when starting the process.

password
SecureString

İşlem başlatılırken kullanılacak parolayı içeren bir SecureString.A SecureString that contains the password to use when starting the process.

domain
String

İşlem başlatılırken kullanılacak etki alanı.The domain to use when starting the process.

Döndürülenler

İşlem kaynağıyla ilişkili yeni bir Process veya işlem kaynağı başlatılmamışsa null.A new Process that is associated with the process resource, or null if no process resource is started. Aynı işlemin zaten çalışmakta olan örneklerinin yanında başlatılan yeni bir işlemin diğerlerinden bağımsız olacağını unutmayın.Note that a new process that's started alongside already running instances of the same process will be independent from the others. Ayrıca, Start, HasExited özelliği zaten trueolarak ayarlanmış null olmayan bir Işlem döndürebilir.In addition, Start may return a non-null Process with its HasExited property already set to true. Bu durumda, başlatılan işlem kendisinin var olan bir örneğini etkinleştirmiş ve sonra çıkılamayabilir.In this case, the started process may have activated an existing instance of itself and then exited.

Öznitelikler

Özel Durumlar

Dosya adı belirtilmedi.No file name was specified.

İlişkili dosya açılırken bir hata oluştu.An error occurred when opening the associated file.

veya-or-

fileName belirtilen dosya bulunamadı.The file specified in the fileName could not be found.

veya-or- Bağımsız değişkenlerin uzunluğunun toplamı ve ilişkili dosyanın tam yolunun uzunluğu 2080 ' i aşıyor.The sum of the length of the arguments and the length of the full path to the associated file exceeds 2080. Bu özel durumla ilişkili hata iletisi aşağıdakilerden biri olabilir: "bir sistem çağrısına geçirilen veri alanı çok küçük."The error message associated with this exception can be one of the following: "The data area passed to a system call is too small." veya "erişim engellendi."or "Access is denied."

İşlem nesnesi zaten atıldı.The process object has already been disposed.

Bu üye Linux veya macOS (yalnızca .NET Core) üzerinde desteklenmez.This member is not supported on Linux or macOS (.NET Core only).

Açıklamalar

Dosya adını, komut satırı bağımsız değişkenlerini, Kullanıcı adını, parolayı ve etki alanını belirterek yeni bir işlem ve birincil iş parçacığını oluşturmak için bu aşırı yüklemeyi kullanın.Use this overload to create a new process and its primary thread by specifying its file name, command-line arguments, user name, password, and domain. Ardından yeni işlem belirtilen yürütülebilir dosyayı belirtilen kimlik bilgilerinin (Kullanıcı, etki alanı ve parola) güvenlik bağlamında çalıştırır.The new process then runs the specified executable file in the security context of the specified credentials (user, domain, and password).

Not

Yürütülebilir dosya uzak bir sürücüde yer aldığı zaman, bağlantılı bir sürücü harfi değil, bir Tekdüzen Kaynak tanımlayıcısı (URI) kullanarak ağ paylaşımının belirlenmesi gerekir.When the executable file is located on a remote drive, you must identify the network share by using a uniform resource identifier (URI), not a linked drive letter.

Not

Başlatılacak yürütülebilir dosyanın adresi bir URL ise, işlem başlatılmaz ve null döndürülür.If the address of the executable file to start is a URL, the process is not started and null is returned.

Bu aşırı yükleme, önce yeni bir Process örneği oluşturmadan bir işlem başlatabilmenizi sağlar.This overload lets you start a process without first creating a new Process instance. Aşırı yükleme, yeni bir Process örneği oluşturma, Passwordözelliğinin FileName, Arguments, UserName, Domain ve StartInfo özelliklerini ayarlama ve Start örneği için Process çağırma adımlarının bir alternatifidir.The overload is an alternative to the explicit steps of creating a new Process instance, setting the FileName, Arguments, UserName, Password, and Domain properties of the StartInfo property, and calling Start for the Process instance.

Benzer şekilde, Çalıştır iletişim kutusunun. exe uzantısı olan veya olmadan çalıştırılabilir dosya adını kabul edebileceği şekilde,. exe uzantısı fileName parametresinde isteğe bağlıdır.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 parameter. Örneğin, fileName parametresini "Notepad. exe" ya da "Notepad" olarak ayarlayabilirsiniz.For example, you can set the fileName parameter to either "Notepad.exe" or "Notepad". fileName parametresi bir yürütülebilir dosyayı temsil ediyorsa, arguments parametresi, Notepad.exe myfile.txtmetin dosyası gibi, üzerinde işlem yapılacak bir dosyayı temsil edebilir.If the fileName parameter represents an executable file, the arguments parameter might represent a file to act upon, such as the text file in Notepad.exe myfile.txt.

Not

Dosya adı, userName, passwordve domain parametrelere sahip Start aşırı yüklerdeki yürütülebilir bir dosyayı temsil etmelidir.The file name must represent an executable file in the Start overloads that have userName, password, and domain parameters.

Bir işlemi başlatmak için Start kullandığınızda, bunu kapatmanız veya sistem kaynaklarını kaybetme riskini almanız gerekebilir.Whenever you use Start to start a process, you might need to close it or you risk losing system resources. CloseMainWindow veya Killkullanarak işlem kapatın.Close processes using CloseMainWindow or Kill. HasExited özelliğini kullanarak bir işlemin zaten kapatılıp kapatılmadığını kontrol edebilirsiniz.You can check whether a process has already been closed by using its HasExited property.

Güvenlik

LinkDemand
şu anki çağırana ilişkin tam güven için.for full trust for the immediate caller. Bu üye kısmen güvenilen kodla kullanılamaz.This member cannot be used by partially trusted code.

Şunlara uygulanır