Link to home
Start Free TrialLog in
Avatar of computech1
computech1

asked on

Looking for a special ActiveX.

Hi There,

I need to get a PATH from a user.
I'm using CommonDialog Control for browsing the HDD.

But in CD u need to select a FILE to get all the path, there is a way to select a path without select a file ?

ASKER CERTIFIED SOLUTION
Avatar of DanAvni
DanAvni
Flag of Israel image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of computech1
computech1

ASKER

The URL doesn't work ..
'**************************************
'Windows API/Global Declarations for :Br
'     owse Folder Dialog
'**************************************
Private Const BIF_RETURNONLYFSDIRS = 1
Private Const BIF_DONTGOBELOWDOMAIN = 2
Private Const BIF_BROWSEFORCOMPUTER = &H1000

Private Const MAX_PATH = 260


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 Function lstrcat Lib "kernel32" Alias "lstrcatA" _
    (ByVal lpString1 As String, ByVal _
    lpString2 As String) As Long


Private Type BrowseInfo
    hwndOwner As Long
    pIDLRootAs Long
    pszDisplayName As Long
    lpszTitle As Long
    ulFlagsAs Long
    lpfnCallbackAs Long
    lParam As Long
    iImage As Long
    End Type



'**************************************
' Name: Browse Folder Dialog
' Description:Have ever wondered if ther
'     e is an ActiveX object that make you bro
'     wse for a folder. This API functions cal
'     ls make the browse dialog
' By: Ziad Mohammad
'
' Inputs:Start a new Project and Add a c
'     ommand button on the form named command1
'    
'
' Assumes:This API function calls displa
'     y the structure of your computer and all
'     ow the use to select a folder

'
'This code is copyrighted and has' limited warranties.Please see http://w
'     ww.Planet-Source-Code.com/xq/ASP/txtCode
'     Id.6710/lngWId.1/qx/vb/scripts/ShowCode.
'     htm'for details.'**************************************



Private Sub Command1_Click()
    'Opens a Treeview control that displays
    '     the directories in a computer
    Dim lpIDList As Long
    Dim sBuffer As String
    Dim szTitle As String
    Dim tBrowseInfo As BrowseInfo
    szTitle = "This is the title"


    With tBrowseInfo
        .hWndOwner = Me.hWnd
        .lpszTitle = lstrcat(szTitle, "")
        .ulFlags = BIF_RETURNONLYFSDIRS_
        +BIF_DONTGOBELOWDOMAIN
       
    End With
    lpIDList = SHBrowseForFolder(tBrowseInfo)


    If (lpIDList) Then
        sBuffer = Space(MAX_PATH)
        SHGetPathFromIDList lpIDList, sBuffer
        sBuffer = Left(sBuffer, InStr
        (sBuffer, vbNullChar) - 1)
        MsgBox sBuffer
    End If
End Sub
In one word : WOW !!

thanx Dan
Dan

I Still unable to browse Net drives ...