Meine Frage ist nicht beantwortet durch die Frage When do we need to set UseShellExecute to True? Wenn Sie denken, dass es ist, erklären Sie bitte wie?Wie setze ich Windows Forms Anwendung ushellexecute auf True?
Ich muss die UseShellexecute auf true für meine Windows Form Application-Projekt vor dem Start des Anwendungsprozesses, aber ich kann nicht finden, wo in dem Projekt muss ich die Änderung vornehmen?
Es ist ein Windows-Formular-Anwendungsprojekt in Visual Studio 2015
Der Haupteinstiegspunkt für die Anwendung sieht wie folgt aus:
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new MainForm());
}
Wo ich ProcessStartInfo
verwenden soll und UseShellExecute
Wert angeben?
EDIT: Vielen Dank an Matthew Watson, der vorgeschlagen, ich ändere die Umgebung CurrentDirectory, die das Problem gelöst! Ich werde Ihren Anser als den richtigen markieren, wenn Sie ihn als Antwort posten!
„_ ... Ich brauche die festlegen usehellexecute zu true für meine Windows-Formular-Anwendung ... _ "- Das macht absolut keinen Sinn für mich. –
Wenn ich meine Anwendung aus ihrem Ordner starte, ist der Arbeitsverzeichnispfad der Ordner, von dem ich sie gestartet habe. Aber wenn ich es von einer Verknüpfung irgendwo ausführe, ändert sich der Pfad des Arbeitsverzeichnisses zu System32. Ich habe gegoogelt und gefunden, dass ich usethellexecute ändern muss, um wahr zu finden, aber ich kann nicht finden, wo/wie ich es ändern soll? – user5825579
Wenn Sie die Eigenschaften für die Verknüpfung für Ihre Anwendung betrachten, hat es eine "Start in" -Einstellungen. Ich schätze, das ist entweder leer oder zeigt auf den falschen Ordner. Es sollte den Ordner angeben, der Ihre exe enthält. –