Unser nachfolgender Tipp ermittelt die Standard System-Ordner, wie den Favoriten-Ordner, das Startmenü, den Desktop, usw. Übergeben Sie der Funktion GetSpecialOrdner einfach den gewünschten Ordner. Als Rückgabewert erhalten Sie dann den exakten Verzeichnispfad. ' Den nachfolgenden Code in ein Modul "packen" Option Explicit Public Enum SpecialFolderIDs sfidDESKTOP = &H0 sfidPROGRAMS = &H2 sfidPERSONAL = &H5 sfidFAVORITES = &H6 sfidSTARTUP = &H7 sfidRECENT = &H8 sfidSENDTO = &H9 sfidSTARTMENU = &HB sfidDESKTOPDIRECTORY = &H10 sfidNETHOOD = &H13 sfidFONTS = &H14 sfidTEMPLATES = &H15 sfidCOMMON_STARTMENU = &H16 sfidCOMMON_PROGRAMS = &H17 sfidCOMMON_STARTUP = &H18 sfidCOMMON_DESKTOPDIRECTORY = &H19 sfidAPPDATA = &H1A sfidPRINTHOOD = &H1B sfidProgramFiles = &H10000 sfidCommonFiles = &H10001 End Enum Private Type SHITEMID cb As Long abID As Byte End Type Private Type ITEMIDLIST mkid As SHITEMID End Type Private Declare Function SHGetSpecialFolderLocation Lib "shell32.dll" ( _ ByVal hwndOwner As Long, _ ByVal nFolder As Long, _ pidl As ITEMIDLIST) As Long Private Declare Function SHGetPathFromIDList Lib "shell32.dll" _ Alias "SHGetPathFromIDListA" ( _ ByVal pidl As Long, _ ByVal pszPath As String) As Long ' Standard Systemordner ermitteln Public Function GetSpecialFolder(CSIDL As _ SpecialFolderIDs) As String Dim lResult As Long Dim IDL As ITEMIDLIST Dim sPath As String lResult = SHGetSpecialFolderLocation(100, CSIDL, IDL) If lResult = 0 Then sPath = Space$(512) lResult = SHGetPathFromIDList(ByVal IDL.mkid.cb, _ ByVal sPath) GetSpecialFolder = Left$(sPath, InStr(sPath, _ Chr$(0)) - 1) End If End Function Beispiele Dim sPfad As String ' Verzeichnis des Favoriten-Ordners sPfad = GetSpecialFolder(sfidFAVORITES) ' Verzeichnis des Windows-Desktops sPfad = GetSpecialFolder(sfidDESKTOP) ' Verzeichnis "Schriftarten" sPfad = GetSpecialFolder(sfidFONTS) Dieser Tipp wurde bereits 24.281 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. |
Neu! sevEingabe 3.0 Einfach stark! Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. Tipp des Monats Dezemeber 2024 Roland Wutzke MultiSort im ListView-Control Dieses Beispiel zeigt, wie sich verschiedene Sortierfunktionen für ein ListView Control realisieren lassen. Access-Tools Vol.1 Über 400 MByte Inhalt Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB |
||||||||||||||||
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. |