Condividi tramite


ProcessStartInfo.Verb Proprietà

Definizione

Ottiene o imposta il verbo da utilizzare quando si apre l'applicazione o il FileName documento specificato dalla proprietà .

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

Valore della proprietà

Azione da eseguire con il file aperto dal processo. Il valore predefinito è una stringa vuota (""), che non indica alcuna azione.

Attributi

Esempio

Nell'esempio di codice seguente viene avviato un nuovo processo usando il verbo e il nome file specificati. Questo esempio di codice fa parte di un esempio più ampio fornito per la Verbs proprietà .

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

Commenti

Ogni estensione di file ha un proprio set di verbi, che può essere ottenuto usando la Verbs proprietà . Ad esempio, il verbo "print" stampa un documento specificato utilizzando FileName. Il verbo predefinito può essere specificato usando una stringa vuota (""). Esempi di verbi sono "Edit", "Open", "OpenAsReadOnly", "Print" e "Printto". È consigliabile utilizzare solo i verbi visualizzati nel set di verbi restituiti dalla Verbs proprietà .

Quando si utilizza la Verb proprietà , è necessario includere l'estensione del nome file quando si imposta il valore della FileName proprietà . Il nome file non deve avere un'estensione se si immette manualmente un valore per la Verb proprietà .

Si applica a

Vedi anche