Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

ProcessStartInfo.Verb Property

Definition

Namespace:
System.Diagnostics
Assemblies:
netstandard.dll, System.Diagnostics.Process.dll
Assembly:
System.Diagnostics.Process.dll
Assembly:
System.dll
Assembly:
netstandard.dll
Source:
ProcessStartInfo.cs
Source:
ProcessStartInfo.cs
Source:
ProcessStartInfo.cs
Source:
ProcessStartInfo.cs
Source:
ProcessStartInfo.cs

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Gets or sets the verb to use when opening the application or document specified by the FileName property.

public:
 property System::String ^ Verb { System::String ^ get(); void set(System::String ^ value); };
public string Verb { get; set; }
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.VerbConverter, System.Design, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string Verb { get; set; }
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.VerbConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string Verb { get; set; }
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.VerbConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string Verb { get; set; }
member this.Verb : string with get, set
[<System.ComponentModel.TypeConverter("System.Diagnostics.Design.VerbConverter, System.Design, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.Verb : string with get, set
[<System.ComponentModel.TypeConverter("System.Diagnostics.Design.VerbConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.Verb : string with get, set
[<System.ComponentModel.TypeConverter("System.Diagnostics.Design.VerbConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.Verb : string with get, set
Public Property Verb As String

Property Value

The action to take with the file that the process opens. The default is an empty string (""), which signifies no action.

Attributes

Examples

The following code example starts a new process by using the specified verb and file name. This code example is part of a larger example provided for the Verbs property.

int i = 0;
var startInfo = new ProcessStartInfo(fileName);

// Display the possible verbs.
foreach (var verb in startInfo.Verbs)
{
 Console.WriteLine($" {i++}. {verb}");
}

Console.Write("Select the index of the verb: ");
var indexInput = Console.ReadLine();
int index;
if (Int32.TryParse(indexInput, out index))
{
 if (index < 0 || index >= i)
 {
 Console.WriteLine("Invalid index value.");
 return;
 }

 var verbToUse = startInfo.Verbs[index];

 startInfo.Verb = verbToUse;
 if (verbToUse.ToLower().IndexOf("printto") >= 0)
 {
 // printto implies a specific printer. Ask for the network address.
 // The address must be in the form \\server\printer.
 // The printer address is passed as the Arguments property.
 Console.Write("Enter the network address of the target printer: ");
 var arguments = Console.ReadLine();
 startInfo.Arguments = arguments;
 }

 try
 {
 using (var newProcess = new Process())
 {
 newProcess.StartInfo = startInfo;
 newProcess.Start();

 Console.WriteLine($"{newProcess.ProcessName} for file {fileName} " +
 $"started successfully with verb '{startInfo.Verb}'!");
 }
 }
 catch (Win32Exception e)
 {
 Console.WriteLine(" Win32Exception caught!");
 Console.WriteLine($" Win32 error = {e.Message}");
 }
 catch (InvalidOperationException)
 {
 // Catch this exception if the process exits quickly,
 // and the properties are not accessible.
 Console.WriteLine($"Unable to start '{fileName}' with verb {verbToUse}");
 }
}
Dim i = 0
Dim startInfo = New ProcessStartInfo(fileName)

Dim verb As String
For Each verb In startInfo.Verbs
 ' Display the possible verbs.
 Console.WriteLine($" {i}. {verb}")
 i += 1
Next

Console.Write("Select the index of the verb: ")
Dim indexInput = Console.ReadLine()
Dim index As Integer
If Int32.TryParse(indexInput, index) Then
 If index < 0 OrElse index >= i Then
 Console.WriteLine("Invalid index value.")
 Return
 End If

 Dim verbToUse = startInfo.Verbs(Convert.ToInt32(index))

 startInfo.Verb = verbToUse
 If verbToUse.ToLower().IndexOf("printto") >= 0 Then
 ' printto implies a specific printer. Ask for the network address.
 ' The address must be in the form \\server\printer.
 Console.Write("Enter the network address of the target printer: ")
 Dim arguments = Console.ReadLine()
 startInfo.Arguments = arguments
 End If

Remarks

Each file name extension has its own set of verbs, which can be obtained by using the Verbs property. For example, the "print" verb prints a document specified by using FileName. The default verb can be specified by using an empty string (""). Examples of verbs are "Edit", "Open", "OpenAsReadOnly", "Print", and "Printto". You should use only verbs that appear in the set of verbs returned by the Verbs property.

When you use the Verb property, you must include the file name extension when you set the value of the FileName property. The file name does not need to have an extension if you manually enter a value for the Verb property.

Applies to

See also


Feedback

Was this page helpful?