22
Февраль
2009
Выбор папки
Выбор папки.
Форма: Option Explicit Dim udtBrowseInfo As BROWSEINFO, pid As Long Dim path As String Private Sub Form_Load() With udtBrowseInfo .hOwner = Me.hWnd .lpszTitle = "Выберите папку и получите путь к ней" .ulFlags = BIF_RETURNONLYFSDIRS End With pid = SHBrowseForFolder(udtBrowseInfo) path = Space(260) SHGetPathFromIDList ByVal pid, ByVal path Debug.Print Left$(path, InStr(1, path, Chr(0)) - 1) End End Sub Модуль: Option Explicit Declare Function SHBrowseForFolder Lib "shell32.dll" _ Alias "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long Declare Function SHGetPathFromIDList Lib "shell32.dll" _ Alias "SHGetPathFromIDListA" (ByVal pidl As Long, _ ByVal pszPath As String) As Long Type BROWSEINFO hOwner As Long pidlRoot As Long pszDisplayName As String lpszTitle As String ulFlags As Long lpfn As Long lParam As Long iImage As Long End Type Public Const BIF_RETURNONLYFSDIRS = &H1