Как сделать чтобы при открытие обзора папок, была изначально открыта указанная папка? например, нужно чтобы всегда открывался такой путь "D:\Songs\0000-Temp\10-GB\Instrumental Music\Ennio Morricone" ... и немного неудобно каждый раз при открытии обзора 5-6 раз счёлкать, чтобы добраться до нужной папки ... если можно поясните кто нибудь, на этом примере: Private Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long Private Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pidList As Long, ByVal lpBuffer As String) As Long Private Declare Sub CoTaskMemFree Lib "ole32.dll" (ByVal hMem As Long) Private Type BrowseInfo hwndOwner As Long pIDLRoot As Long pszDisplayName As Long lpszTitle As String ulFlags As Long lpfnCallback As Long lParam As Long iImage As Long End Type Dim strBrowse As String Public Function BrowseForFolder(hwndOwner As Long, sPrompt As String) As String Const BIF_RETURNONLYFSDIRS = 1, MAX_PATH = 260 Dim intNull As Integer, lngIdList As Long, udtBI As BrowseInfo With udtBI .hwndOwner = hwndOwner .lpszTitle = sPrompt .ulFlags = BIF_RETURNONLYFSDIRS End With lngIdList = SHBrowseForFolder(udtBI): strBrowse = String$(MAX_PATH, 0): SHGetPathFromIDList lngIdList, strBrowse: CoTaskMemFree lngIdList: intNull = InStr(strBrowse, vbNullChar) If intNull > 1 Then strBrowse = Left$(strBrowse, intNull - 1) Else strBrowse = "cansel" If strBrowse <> "cansel" Then If Right(strBrowse, 1) <> "\" Then strBrowse = strBrowse & "\" End Function Private Sub Command1_Click() BrowseForFolder Me.hWnd, "Выберите папку" End Sub извините за замусоривание), просто боюсь что не пойму, что к чему будет в случае с другим примером ...
Ответить
|