Freigeben über


App-Objekt für Visual Basic 6.0-Benutzer

Aktualisiert: November 2007

In diesem Thema wird das App-Objekt von Visual Basic 6.0 mit seiner Entsprechung in Visual Basic 2008 verglichen.

In Visual Basic 6.0 war das App-Objekt ein globales Objekt, das zum Festlegen oder Abrufen von Informationen über die Anwendung diente. In Visual Basic 2008 gibt es keine direkte Entsprechung für das App-Objekt. Die meisten seiner Eigenschaften, Methoden und Ereignisse können jedoch entsprechenden Membern in .NET Framework zugeordnet werden.

Konzeptionelle Unterschiede

Versionsinformationseigenschaften

Die Version Information-Eigenschaften des App-Objekts werden in Visual Basic 2008 durch die Assembly-Attribute ersetzt. Die Version Information-Eigenschaften werden im Dialogfeld Projekteigenschaften festgelegt. Die Assembly-Attribute werden im Dialogfeld Assemblyinformationen festgelegt, das angezeigt wird, wenn Sie im Projekt-Designer auf der Registerkarte Anwendung auf die Schaltfläche Anwendungsinformationen klicken.

Hinweis:

Version Information -Eigenschaften werden in der Projektdatei (VBP) gespeichert, die mit einem Texteditor, z. B. Editor, bearbeitet werden kann. Die Assembly-Attribute werden in der Datei AssemblyInfo.vb gespeichert, die im Code-Editor bearbeitet werden kann.

FileDescription-Eigenschaft

In Visual Basic 6.0 verfügt das App-Objekt sowohl über eine FileDescription-Eigenschaft als auch eine Title-Eigenschaft. Mit FileDescription wird der beschreibende Text festgelegt, der in Windows Explorer angezeigt wird.

In Visual Basic 2008 gibt es kein FileDescription-Attribut. Stattdessen wird mit dem Title-Attribut der beschreibende Text festgelegt, der in Windows Explorer angezeigt wird.

HelpFile-Eigenschaft

Die HelpFile-Eigenschaft in Visual Basic 6.0 gibt auf Anwendungsebene eine Hilfedatei an.

In Visual Basic 2008 werden Hilfedateien mit einer HelpProvider-Komponente jeweils für einzelne Formulare angegeben. Weitere Informationen finden Sie unter Hilfeunterstützung für Visual Basic 6.0-Benutzer.

Version-Eigenschaften

In Visual Basic 6.0 wird mit den Eigenschaften Major, Minor und Revision die dreiteilige Versionsnummer einer Anwendung zurückgegeben.

In Visual Basic 2008 gehört auch die Build-Eigenschaft zu den Versionsinformationen. Die vollständige vierteilige Versionsnummer kann mit einer einzigen Version-Eigenschaft abgerufen werden. Weitere Informationen finden Sie unter Versionsnummerierung für Visual Basic 6.0-Benutzer.

Title-Eigenschaft

Die Title-Eigenschaft des App-Objekts von Visual Basic 6.0 kann programmgesteuert geändert werden. Dadurch wird der Name festgelegt, der im Windows Task-Manager angezeigt wird.

In Visual Basic 2008 ist das Title-Attribut schreibgeschützt. Mit der Text-Eigenschaft des Hauptformulars der Anwendung wird der Name festgelegt, der im Task-Manager angezeigt wird. Sie können die Text-Eigenschaft programmgesteuert ändern, allerdings wird dann auch der Text in der Titelleiste des Formulars geändert.

TaskVisible-Eigenschaft

In Visual Basic 6.0 wird durch die TaskVisible-Eigenschaft des App-Objekts festgelegt, ob eine Anwendung in der Windows-Aufgabenliste (Windows 9x) bzw. auf der Registerkarte Anwendungen im Task-Manager (Windows 2000 oder höher) angezeigt wird. Die Eigenschaft wird für gewöhnlich verwendet, um zu verhindern, dass ein Benutzer eine Anwendung schließt, die als Hintergrundtask ausgeführt werden soll. In den meisten Fällen wird die TaskVisible-Eigenschaft mit Anwendungen verwendet, die keine Benutzeroberflächen anzeigen.

In Visual Basic 2008 gibt es keine Entsprechung für die TaskVisible-Eigenschaft. Sie können jedoch Windows-Dienste oder Konsolenanwendungen erstellen, die nicht in der Aufgabenliste angezeigt werden.

PrevInstance-Eigenschaft

In Visual Basic 6.0 stellt die PrevInstance-Eigenschaft fest, ob eine Instanz der Anwendung bereits ausgeführt wird. In der Regel rufen Sie die PrevInstance-Eigenschaft beim Anwendungsstart auf und beenden die Anwendung, wenn sie true zurückgibt.

In Visual Basic 2008 gibt es keine direkte Entsprechung für PrevInstance. Sie können steuern, ob mehrere Instanzen einer Anwendung zulässig sind, indem Sie die Eigenschaft Mehrere Instanzen auf der Registerkarte Anwendung im Projekt-Designer entsprechend festlegen. Wenn ein Benutzer versucht, eine weitere Instanz der Anwendung zu starten, wird zur Laufzeit ein NextInstanceStarted-Ereignis ausgelöst. Sie können diesem Ereignishandler Code hinzufügen, um die erste Instanz der Anwendung zu aktivieren.

Weitere Unterschiede

Eine Reihe von App-Objekteigenschaften in Visual Basic 6.0 betrifft ActiveX-Komponenten, OLE-Automatisierung und andere Technologien, die heute veraltet sind und in Visual Basic 2008 nicht unterstützt werden. Sie werden in der Tabelle Entsprechungen für App-Objekteigenschaft weiter hinten in diesem Thema vermerkt.

Änderungen am Code für das App-Objekt

In den folgenden Codebeispielen werden die Unterschiede in den Codierungstechniken zwischen Visual Basic 6.0 und Visual Basic 2008 für einige gängige Verwendungsmöglichkeiten des App-Objekts dargestellt.

Änderungen am Code zum Abrufen der Versionsnummer einer Anwendung

Im folgenden Beispiel wird veranschaulicht, wie die Versionsnummer einer Anwendung abgerufen und in einem Label-Steuerelement angezeigt wird.

' Visual Basic 6.0
Label1.Caption = "Version: " & App.Major & "." & App.Minor & "." _
& App.Revision
' Visual Basic
Label1.Text = My.Application.Info.Version.ToString()

Änderungen am Code zum Feststellen des Pfads einer Anwendung

Im folgenden Beispiel wird veranschaulicht, wie eine Bilddatei angezeigt wird, die im Ordner der Anwendung gespeichert ist, indem der Pfad der ausgeführten Anwendung ermittelt wird.

' Visual Basic 6.0
Picture1.Picture = LoadPicture(App.Path & "\Logo.jpg")
' Visual Basic
PictureBox1.Image = System.Drawing.Bitmap.FromFile( _
  My.Application.Info.DirectoryPath & "\Logo.jpg")

Änderungen am Code, mit dem die Ausführung einer zweiten Instanz einer Anwendung verhindert wird

Im folgenden Beispiel wird das Implementieren einer Einzelinstanzanwendung veranschaulicht.

' Visual Basic 6.0
Private Sub Form_Load()
    If App.PrevInstance = True Then
        MsgBox("The application is already running!")
    End If
End Sub
' Visual Basic
' Assumes that the Make Single Instance Application checkbox in the 
' Project Designer has been checked.

Private Sub MyApplication_StartupNextInstance(ByVal sender As Object, _
ByVal e As Microsoft.VisualBasic.ApplicationServices. _
StartupNextInstanceEventArgs) Handles Me.StartupNextInstance
    MsgBox("The application is already running!")
End Sub

Entsprechungen für Eigenschaften des App-Objekts

In der folgenden Tabelle werden alle Eigenschaften und Methoden des App-Objekts aus Visual Basic 6.0 und ihre Visual Basic 2008-Entsprechungen aufgeführt.

Visual Basic 6.0

Visual Basic 2008-Entsprechung

Comments

My.Application.Info.Description-Eigenschaft

CompanyName

My.Application.Info.CompanyName-Eigenschaft

EXEName

My.Application.Info.AssemblyName-Eigenschaft

FileDescription

My.Application.Info.Title-Eigenschaft

HelpFile

Neue Implementierung. Verwenden Sie eine HelpProvider-Komponente. Weitere Informationen finden Sie unter Hilfeunterstützung für Visual Basic 6.0-Benutzer.

HInstance

GetHINSTANCE

LegalCopyright

My.Application.Info.Copyright-Eigenschaft

LegalTrademarks

My.Application.Info.Trademark-Eigenschaft

LogEvent method

WriteEntry-Methode ("My.Application.Log" und "My.Log")

LogMode

LogPath

Neue Implementierung. Weitere Informationen finden Sie unter Protokollieren von Informationen aus der Anwendung.

Major

My.Application.Info.Version-Eigenschaft

Hinweis:
In Visual Basic 2008 haben Versionsnummern ein anderes Format. Weitere Informationen finden Sie unter Versionsnummerierung für Visual Basic 6.0-Benutzer.

Minor

My.Application.Info.Version-Eigenschaft

Hinweis:
In Visual Basic 2008 haben Versionsnummern ein anderes Format. Weitere Informationen finden Sie unter Versionsnummerierung für Visual Basic 6.0-Benutzer.

NonModalAllowed

Neue Implementierung. Dies ist eine schreibgeschützte Eigenschaft, die sich auf DLL-Dateien von ActiveX bezog. Die Common Language Runtime verwaltet dieses Verhalten automatisch.

OleRequestPendingMsgText

OleRequestPendingMsgTitle

OleRequestPendingTimeout

OleServerBusyMsgText

OleServerBusyMsgTitle

OleServerBusyRaiseError

OleServerBusyTimeout

Keine Entsprechung. Diese Eigenschaften beziehen sich auf die OLE-Automatisierung, die von Visual Basic 2008 nicht unterstützt wird.

Path

My.Application.Info.DirectoryPath-Eigenschaft

PrevInstance

IsSingleInstance

Hinweis:
Die IsSingleInstance-Eigenschaft ist eine Protected-Eigenschaft. Sie kann nur zur Entwurfszeit im Projekt-Designer festgelegt werden, indem das Kontrollkästchen Mehrere Instanzen aktiviert oder deaktiviert wird.

ProductName

My.Application.Info.ProductName-Eigenschaft

RetainedProject

Neue Implementierung. Visual Basic 2008 kann kein Projekt im Arbeitsspeicher behalten.

Revision

My.Application.Info.Version-Eigenschaft

Hinweis:
In Visual Basic 2008 haben Versionsnummern ein anderes Format. Weitere Informationen finden Sie unter Versionsnummerierung für Visual Basic 6.0-Benutzer.

StartLogging method

Neue Implementierung. Weitere Informationen finden Sie unter Protokollieren von Informationen aus der Anwendung.

StartMode

Keine Entsprechung. Diese Eigenschaft betrifft das Erstellen von ActiveX-Komponenten, die in Visual Basic 2008 nicht unterstützt werden.

TaskVisible

Neue Implementierung. Um eine Anwendung zu erstellen, die nicht im Task-Manager angezeigt wird, erstellen Sie ein Windows-Dienst- oder ein Konsolenanwendungsprojekt.

ThreadID

Neue Implementierung. Diese Eigenschaft gab die ID des ausführenden Threads zurück. In Visual Basic 2008 wird ein anderes Threadingmodell verwendet.

Title

My.Application.Info.Title-Eigenschaft

UnattendedApp

Neue Implementierung. Erstellen Sie für Anwendungen, die keine Benutzereingriffe erfordern, in Visual Basic 2008 ein Konsolenanwendungsprojekt.

Hinweise zum Durchführen einer Aktualisierung

Bei der Aktualisierung einer Visual Basic 6.0-Anwendung werden nur die Major-Eigenschaft und die Minor-Eigenschaft aktualisiert. Der Revision-Eigenschaft und der Build-Eigenschaft werden in Visual Basic 2008 neue Werte zugewiesen.

Siehe auch

Konzepte

Hilfeunterstützung für Visual Basic 6.0-Benutzer

Versionsnummerierung für Visual Basic 6.0-Benutzer

Referenz

My.Application-Objekt