So erhalten Sie den Dateinamen von .EXE [duplizieren]

8
  

Mögliche Duplikate:
Getting the Pfad der aktuellen Baugruppe
C #: Wie bekomme ich den Pfad der Assembly, in der sich der Code befindet?

Wie kann ich mit VB 2008 den Dateinamen einer laufenden .EXE von innen heraus erhalten?

BEARBEITEN : Dies ist für eine Konsolen-App, daher funktioniert Application.ExecutablePath nicht.

    
aphoria 22.09.2009, 15:09
quelle

4 Antworten

16

Es gibt mehrere Möglichkeiten:

%Vor%

oder

%Vor%

oder

%Vor%     
RRUZ 22.09.2009, 15:11
quelle
4

Dies wurde beantwortet vorher .

Von überall in Ihrem Code könnten Sie sich in einer Assembly befinden, die von der ursprünglichen EXE geladen wurde. Sie haben möglicherweise auch keinen Verweis auf den Anwendungs-Singleton, daher ist die Verwendung der Assembly-Klasse die beste Wahl.

Der sicherste Weg ist Assembly.GetEntryAssembly () .Location wird abgerufen der Speicherort im Dateisystem, auf dem sich die Assembly derzeit befindet. Wenn Schattenkopien kopiert werden, ist dies der Speicherort für die Schattenkopie. Wenn es einmal pro Klick bereitgestellt wird, ist dies ein verrückter Pfad zu einer Datei in der Sandbox Bereich.

Der ursprüngliche Speicherort der Assembly ist Assembly.GetEntryAssembly (). Codebase

    
Blue Toque 22.09.2009 15:28
quelle
1

Process.GetCurrentProcess () .MainModule

Bearbeiten

Eine andere Möglichkeit wäre die Verwendung von Environment.GetCommandLineArgs () [0], aber ich bevorzuge die Verwendung von Process.

    
Steven Sudit 22.09.2009 15:12
quelle
0

Sie sollten es in der Eigenschaft finden: Application.ExecutablePath

    
Rowland Shaw 22.09.2009 15:12
quelle

Tags und Links