Nachfolgend zeigen wir Ihnen einige nützliche Systemfunktionen von VB.NET 2005, die man während der Programmierung immer wieder benötigt. Imports System.Environment Module ModDir ' benötigte API-Deklarationen Private Declare Function GetTempFileName Lib "kernel32" _ Alias "GetTempFileNameA" ( _ ByVal lpszPath As String, _ ByVal lpPrefixString As String, _ ByVal wUnique As Integer, _ ByVal lpTempFilename As String) As Integer Verzeichnisse ' Spezielle Ordner-Verzeichnisse, wie "Programme", "Desktop" etc. Public Function GetSpecialFolder( _ ByVal mFolder As Environment.SpecialFolder) As String GetSpecialFolder = Environment.GetFolderPath(mFolder) End Function ' Windows-Verzeichnis Public Function GetWindowsFolder() As String Return Environment.GetEnvironmentVariable("windir") End Function ' System-Verzeichnis Public Function GetSystemFolder() As String Return Environment.SystemDirectory End Function ' temporäres Verzeichnis Public Function GetTempFolder() As String Return System.IO.Path.GetTempPath End Function ' Gibt das Anwendungsverzeichnis zurück Public Function AppPath() As String Return AddBackslash(Application.StartupPath) End Function Datei-/Ordner-Funktionen ' Prüft, ob eine Datei existiert Public Function FileExists(ByVal mPath As String) As Boolean Return System.IO.File.Exists(mPath) End Function ' Prüft, ob ein Ordner existiert Public Function FolderExists(ByVal mPath As String) As Boolean Return System.IO.Directory.Exists(mPath) End Function ' Gibt den reinen Dateinamen zurück ' optional mit oder ohne Dateierweiterung (Extension) Public Function FileOnly(ByVal mPath As String, _ Optional ByVal WithoutExtension As Boolean = False) As String If WithoutExtension Then Return System.IO.Path.GetFileNameWithoutExtension(mPath) Else Return System.IO.Path.GetFileName(mPath) End If End Function ' Gibt den reinen Pfadnamen zurück Public Function PathOnly(ByVal mPath As String) As String Return System.IO.Path.GetDirectoryName(mPath) End Function ' Gibt den Namen des letzten Unterverzeichnisses ' aus "Pfad+Dateiname" zurück Public Function FolderNameOnly(ByVal mPath As String) As String Return FileOnly(System.IO.Path.GetDirectoryName(mPath)) End Function ' Gibt die Dateierweiterung zurück ' optional mit "." oder ohne Public Function ExtOnly(ByVal mPath As String, _ Optional ByVal WithoutDot As Boolean = False) As String Dim sExt As String = System.IO.Path.GetExtension(mPath) If WithoutDot Then sExt = sExt.TrimStart(".") Return sExt End Function ' Ändert die Dateierweiterung eines übergebenen Dateinamens ' und gibt den neuen Dateinamen als String zurück Public Function ChangeExt(ByVal mPath As String, _ Optional ByVal NewExt As String = "") As String Return System.IO.Path.ChangeExtension(mPath, NewExt) End Function ' Ermittelt einen neuen temporären Dateinamen Public Function GetTempFile(Optional ByVal mPrefix As String = "bb", _ Optional ByVal AlternateTempPath As String = "") As String Dim lpTempFilename As String lpTempFilename = New String(" ", 255) If AlternateTempPath.Length = 0 Then AlternateTempPath = GetTempFolder() GetTempFileName(AlternateTempPath, mPrefix, 0, lpTempFilename) GetTempFile = StripTerminator(lpTempFilename) End Function Betriebssystem-Info ' Ermittelt das aktuelle Betriebssystem< Public Function GetVersion() As String Dim osInfo As OperatingSystem osInfo = OSVersion ' Imports System.Environment (Oben) With osInfo Select Case .Platform Case PlatformID.Win32Windows Select Case (.Version.Minor) Case 0 Return "Windows 95" Case 10 If .Version.Revision.ToString() = "2222A" Then Return "Windows 98 Second Edition" Else Return "Windows 98" End If Case 90 Return "Windows Me" Case Else Return "Failed" End Select Case PlatformID.Win32NT Select Case (.Version.Major) Case 3 Return "Windows NT 3.51" Case 4 Return "Windows NT 4.0" Case 5 Select Case (.Version.Minor) Case 0 Return "Windows 2000" Case 1 Return "Windows XP" Case 2 Return "Windows Server 2003" Case Else Return "Failed" End Select Case 6 Return "Windows Vista" Case Else Return "Failed" End Select Case Else Return "Failed" End Select End With End Function Hilfsfunktionen ' Gibt den Inhalt eines Strings bis zum ersten vbNull-Zeichen zurück Public Function StripTerminator(ByVal mString As String) As String Dim z As Integer = mString.IndexOf(Chr(0)) If z > -1 Then Return mString.Remove(z, mString.Length - z) Else Return mString End If End Function ' Entfernt einen evtl. vorhandenen abschließenden Backslash Public Function RemoveBackSlash(ByVal mPath As String) As String If mPath.EndsWith("\") Then Return mPath.Remove(mPath.Length - 1, 1) Else Return mPath End If End Function ' Fügt bei Bedarf einen abschließenden Backslash hinzu Public Function AddBackSlash(ByVal mPath As String) As String If mPath.EndsWith("\") Then Return mPath Else Return mPath & "\" End If End Function End Module Dieser Tipp wurde bereits 14.534 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. |
sevISDN 1.0 Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Tipp des Monats Mai 2024 Hermann Röttger Wochentage eines Datumsbereichs ermitteln Wochentage eines Datumsbereichs ermitteln, optional mit Feiertagsberechnung Neu! sevPopUp 2.0 Dynamische Kontextmenüs! Erstellen Sie mit nur wenigen Zeilen Code Kontextmenüs dynamisch zur Laufzeit. Vordefinierte Styles (XP, Office, OfficeXP, Vista oder Windows 8) erleichtern die Anpassung an die eigenen Anwendung... |
||||||||||||||||
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. |