Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel wird beschrieben, wie Sie ermitteln, ob Ihr Programm in der integrierten Entwicklungsumgebung (IDE) von Visual Basic oder als kompilierte ausführbare Datei ausgeführt wird.
Originalproduktversion: Visual Basic
Ursprüngliche KB-Nummer: 177636
Zusammenfassung
In diesem Artikel wird veranschaulicht, wie Sie ermitteln, ob Ihr Programm in der Visual Basic-IDE oder als kompilierte ausführbare Datei ausgeführt wird. Möglicherweise möchten Sie überprüfen, wo Ihr Programm ausgeführt wird, wenn Sie Debuginformationen hinzufügen müssen, die in der kompilierten Version Ihres Programms nicht sichtbar wären.
Weitere Informationen
Es gibt zwei Methoden, mit denen Sie ermitteln können, ob Ihr Programm über die IDE oder exe ausgeführt wird.
Methode 1: DER NAME der EXE-Datei unterscheidet sich vom Projektnamen.
Das App-Objekt enthält allgemeine Informationen zum Programm, z. B. den Dateinamen der ausführbaren Datei. Wenn der Projektname und die kompilierte Version des Projekts unterschiedliche Dateinamen aufweisen, können Sie mithilfe der
App.EXENameEigenschaft ermitteln, ob die EXE ausgeführt wird oder ob das Projekt in der IDE ausgeführt wird. Wenn das Programm über die Visual Basic-IDE ausgeführt wird, gibt dieEXENameEigenschaft den Projektnamen zurück. Wenn ein Programm aus einer ausführbaren Datei ausgeführt wird, enthält dieEXENameEigenschaft den EXE-Dateinamen.Methode 2: EXE-Dateiname und projektname sind identisch
Wenn der Projektname und die kompilierte Version denselben Namen aufweisen, verwenden Sie die
GetModuleFileNameAPI-Funktion, um festzustellen, ob Ihr Programm aus der IDE oder aus einer kompilierten Version ausgeführt wird.GetModuleFileNameRuft den vollständigen Pfad und Dateinamen für die ausführbare Datei ab, die das angegebene Modul enthält. Wenn die Funktion einen Pfad zur Visual Basic-Datei zurückgibt, VB5.EXE, wird das Programm in der IDE ausgeführt. Andernfalls wird das Programm aus einer ausführbaren Datei ausgeführt.
GetModuleFileName erfordert die folgenden Argumente:
hModule: das Handle für das Modul, dessen Dateiname Sie benötigen. Verwenden Sie diehInstanceEigenschaft desAPPObjekts für diesen Parameter.lpFilename: ein Zeiger zum Puffern zum Empfangen des Modulpfads. Erstellen Sie eine Zeichenfolgenvariable 255 Zeichen lang, und übergeben Sie diese Variable für diesen Parameter.nSize: die Größe der Pufferzeichen. Verwenden Sie 255 für diesen Parameter.
Im nächsten Abschnitt wird veranschaulicht, wie Sie ein Beispielprojekt erstellen, das beide Methoden implementiert.
Beispielprojekt
Starten Sie ein neues Standard EXE-Projekt in Visual Basic. Formular1 wird standardmäßig erstellt.
Fügen Sie zwei CommandButtons zu Form1 hinzu.
Kopieren Sie den folgenden Code in das Codefenster von Form1:
Option Explicit Private Declare Function GetModuleFileName Lib "kernel32" _ Alias "GetModuleFileNameA" _ (ByVal hModule As Long, _ ByVal lpFileName As String, _ ByVal nSize As Long) As Long Private Sub Form_Load()'Set the command button names Command1.Caption = "Different Project and Executable Names" Command2.Caption = "Similar File Names" End Sub Private Sub Command1_Click()'Click this button if the project name and the compiled file 'name are different. MsgBox VB.App.EXEName End Sub Private Sub Command2_Click()'Click this button if the project name and the compiled file 'name are the same. Dim strFileName As String Dim lngCount As Long strFileName = String(255, 0) lngCount = GetModuleFileName(App.hInstance, strFileName, 255) strFileName = Left(strFileName, lngCount) If UCase(Right(strFileName, 7)) <> "VB5.EXE" Then MsgBox "Compiled Version" Else MsgBox "IDE Version" End If End SubSpeichern Sie das Projekt mit dem Namen des IDEApp-Projekts .
Kompilieren Sie zwei verschiedene ausführbare Dateien aus diesem Projekt. Verwenden Sie den Standarddateinamen IDEApp.exe für die erste ausführbare Datei. Verwenden Sie für die zweite ausführbare Datei den Dateinamen EXEApp. Führen Sie zum Kompilieren des Projekts die folgenden Schritte aus:
Klicken Sie im Menü "Datei " auf "IDEApp.exe erstellen". Das Dialogfeld Projekt erstellen wird angezeigt.
Verwenden Sie den Standarddateinamen, oder geben Sie ihren Dateinamen im Textfeld "Dateiname" ein.
Klicken Sie auf "OK ", um die ausführbare Datei zu erstellen und das Dialogfeld "Projekt erstellen" zu schließen.
Klicken Sie im Menü "Ausführen" auf "Start", oder drücken Sie F5, um das Programm zu starten. Klicken Sie auf die Schaltfläche "Verschiedene Projekt- und ausführbare Namen". Ein Meldungsfeld wird mit der Meldung IDEApp angezeigt, um anzugeben, dass das Programm über die IDE ausgeführt wird. Klicken Sie auf die Schaltfläche "Ähnliche Dateinamen ". Ein Meldungsfeld wird mit der Meldung IDE-Version angezeigt, um anzugeben, dass das Programm über die IDE ausgeführt wird. Schließen Sie das Projekt.
Führen Sie eine ausführbare Datei aus, und klicken Sie auf die CommandButtons. Es wird ein Meldungsfeld angezeigt, das angibt, dass das Programm aus einer ausführbaren Datei ausgeführt wird.