Diese Funktion ermittelt anhand der Windows-Registry die installierte Access-Version und gibt die entsprechenden Infos zurück. Imports Microsoft.Win32 Imports System.Text ''' <summary> ''' Access-Informationen aus der Registrierdatenbank ermitteln ''' </summary> ''' <param name="VersionsNumber">Rückgabe: Die extrahierte Versionsnummer</param> ''' <param name="VersionsString">Rückgabe: Die ermittelte Access Version</param> ''' <returns>Der ermittelte Wert des Eintragsnamens</returns> Private Function GetMSAccessInformation(ByRef VersionsNumber As Integer, _ ByRef VersionsString As String) As String ' Ergebnisvariable zur Aufname des Eintragswertes Dim Result As String = String.Empty ' Schlüssel in der Registrierdatenbank oeffnen Using rk As RegistryKey = _ Registry.ClassesRoot.OpenSubKey("Access.Application\CurVer", False) ' Konnte der Pfad geöffnet werden... If rk IsNot Nothing Then ' ... wird der Wert ausgelesen und an die Variable Result übergeben. Result = CType(rk.GetValue(""), String) ' Zur Übergabe an die Variable VersionsNumber wird der Wert aus der ' Variable Result extrahiert... VersionsNumber = CType(Result.Substring( _ Result.LastIndexOf(".") + 1), Integer) ' ...und zur Übergabe and die Variable VersionsString ausgewertet. Select Case VersionsNumber Case 8 VersionsString = "Microsoft Access 97" Case 9 VersionsString = "Microsoft Access 2000" Case 10 VersionsString = "Microsoft Access 2002 / XP" Case 11 VersionsString = "Microsoft Access 2003" Case 12 VersionsString = "Microsoft Access 2007" Case Else VersionsString = "Unbekannt" End Select Else ' Konnte der Pfad in der Registrierdatenbank nicht ausgewertet werden ' wird dieString-Variable Result mit "Fehler" initialisiert. Result = "Fehler" End If End Using Return Result End Function Beispiel für den Aufruf: ' Übernimmt die Versionsnummer Dim VersionsNumber As Integer = -1 ' Übernimmt die Access-Versions Dim VersionsString As String = String.Empty ' Result übernimmt den aus der Registriedatenbank ' ermittelten(Eintragswert) Dim Result As String = GetMSAccessInformation( _ VersionsNumber, VersionsString) ' Beinhaltet das Ergebnis den Wert Fehler... If Result.Equals("Fehler") Then '...wird ein Hinweis ausgegeben, dass die Informationen ' nicht ermittelt werden konnten... MessageBox.Show("Informationen konnten nicht ermittelt werden.", "Info") Else ' ...ansonsten werden die einzelnen Variablen-Werte an einen ' StringBuilder übergeben und zusammengesetzt. Dim sb As StringBuilder = New StringBuilder With sb .Append("n/" & Result) .Append("n/" & CType(VersionsNumber, String)) .Append("n/" & VersionsString) .Replace("n/", System.Environment.NewLine()) End With MessageBox.Show(sb.ToString(), "Info") End If Dieser Tipp wurde bereits 16.276 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevOutBar 4.0 Vertikale Menüleisten á la Outlook Erstellen von Outlook ähnlichen Benutzer- interfaces - mit beliebig vielen Gruppen und Symboleinträgen. Moderner OfficeXP-Style mit Farbverläufen, Balloon-Tips, u.v.m. Tipp des Monats März 2024 Dieter Otter UTF-8 Konvertierung von Dateien und Strings VB6 selbst verfügt über keine Funktionen zur UTF-8 Konvertierung von Daten. Mit Hilfe des ADODB.Stream-Objekts lassen sich diese fehlenden Funktionen aber schnell nachrüsten. TOP Entwickler-Paket TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR... |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |