Click here to Skip to main content
15,881,204 members
Articles / Desktop Programming / Windows Forms
Article

How to Browse Network Folders using Folder Dialog Box Control ?

Rate me:
Please Sign up or sign in to vote.
4.82/5 (16 votes)
18 Sep 2007CPOL1 min read 289.7K   4.3K   44   53
An article on how to browse network Folders using VB.NET using Folder Dialog box Control
Screenshot - app_UI.jpg

Screenshot - Browse_Folders.jpg

Introduction

In the Folder Browse dialog box, we can browse our required folder except Network Neighborhood as a root folder. To browse the Network folders using Folder Dialog box control is quite difficult. I have seen lots of solutions on the Internet and found several lines of code to achieve this thing. But here, I am showing you a few lines code to achieve the same thing.

Background

I was developing one distributed application and my requirement was to browse only the
Network folders. I searched the Internet for this problem and found that the folder dialog
box control does not directly support Network folders browsing like Desktop folder or
other folders. This article will help you to do this thing in an easy manner.

Using the Code

The code that I have written to browse Network folders is quite easy to understand. Here is the code.

VB.NET
Private Sub btnBrowse_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles btnBrowse.Click

    '====== Create folder dialog box object
    Dim objFolderDialog As New FolderBrowserDialog()
    '===== Pass object as Parameter and get Selected network folder
    txtPath.Text = GetNetworkFolders(objFolderDialog)
End Sub

''' <summary>
''' This function will get the Folderdialog as parameter and return the 
''' Selected
''' Folders UNC path. 
''' Ex: <a href="%22%22file://server1/TestFolder'''%22%22">\\Server1\TestFolder
'''</a> </summary>
''' <param name="oFolderBrowserDialog"></param>
''' <returns>it will return the Selected Folders UNC Path</returns>
''' <remarks></remarks>

Public Shared Function GetNetworkFolders(ByVal oFolderBrowserDialog _
      As FolderBrowserDialog) As String
    '======= Get type of Folder Dialog bog
    Dim type As Type = oFolderBrowserDialog.[GetType]
    '======== Get Fieldinfo for rootfolder.
    Dim fieldInfo As Reflection.FieldInfo = type.GetField("rootFolder", _
    BindingFlags.NonPublic Or BindingFlags.Instance)
    '========= Now set the value for Folder Dialog using DirectCast
    '=== 18 = Network Neighborhood is the root
    fieldInfo.SetValue(oFolderBrowserDialog,_
                      DirectCast(18, Environment.SpecialFolder))
    '==== if user click on Ok, then it will return the selected folder.
    '===== otherwise return the blank string.
    If oFolderBrowserDialog.ShowDialog() = DialogResult.OK Then
        Return oFolderBrowserDialog.SelectedPath
    Else
        Return ""
    End If
End Function

fieldInfo.SetValue(oFolderBrowserDialog, DirectCast(18, Environment.SpecialFolder))here you can also set other folder browsers constant.

Here is a list of constants:

Constant Description
0 Desktop folder
1 Internet Explorer
2 Programs folder of the Start menu
3 Control Panel folder
4 Printers folder
5 Documents folder of the Start menu
6 Favorites folder of the Start menu
7 Startup folder of the Start menu
8 Recent folder
9 SendTo folder
10 Recycle Bin folder
11 Start menu folder
16 Desktop (physical) folder
17 My Computer
18 Network Neighborhood
19 Nethood folder
20 Fonts folder
21 Templates folder

Summary

In this way, you can browse Network folders. Let me know if anyone has a problem while using the attached code.

History

  • 18th September, 2007: Initial post

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Team Leader
India India
Jatin is Working in .Net Technology Since 2006. He has Completed Master of Science Degree in Information Technology. He Likes to learn Cutting edge technologies. He has good Skills in Asp.net, Vb.net,C#.Net, Crystal Reports,GDI+, Ajax, WCF, Silverlight SQL Server,IIS Admin,TFA ,Application Architecture Designing.

Comments and Discussions

 
QuestionVB browse Network folder Pin
mhnCPF30-Oct-14 8:03
mhnCPF30-Oct-14 8:03 
QuestionNon shared folder acees is allowed in win xp machine Pin
sagar_25312-Aug-14 21:14
sagar_25312-Aug-14 21:14 
QuestionThe same path selection problem with phone (portable devices) connected through USB cable Pin
Member 1100720812-Aug-14 20:34
Member 1100720812-Aug-14 20:34 
SuggestionSame idea in C# Pin
Darkangel8616-Oct-12 5:19
Darkangel8616-Oct-12 5:19 
GeneralMy vote of 4 Pin
Yas Barrientos8-Oct-11 10:01
Yas Barrientos8-Oct-11 10:01 
QuestionAny way to enumerate network shares? Pin
dirigo27-Jul-09 10:54
dirigo27-Jul-09 10:54 
GeneralWorks! (C# Version) Pin
jp2code20-Jul-09 8:01
professionaljp2code20-Jul-09 8:01 
GeneralRe: Works! (C# Version) Pin
tpemc9-Oct-09 8:21
tpemc9-Oct-09 8:21 
GeneralRe: Works! (C# Version) Pin
jp2code9-Oct-09 9:22
professionaljp2code9-Oct-09 9:22 
GeneralRe: Works! (C# Version) Pin
tpemc9-Oct-09 13:08
tpemc9-Oct-09 13:08 
GeneralRe: Works! (C# Version) Pin
jp2code10-Oct-09 7:53
professionaljp2code10-Oct-09 7:53 
GeneralC# version Pin
allothernamesaretaken25-Mar-09 20:48
allothernamesaretaken25-Mar-09 20:48 
GeneralRe: C# version Pin
MarMirK14-Jul-09 9:31
MarMirK14-Jul-09 9:31 
QuestionHow to Browse Network Folders using Folder Dialog Box Control ? Pin
Anna Tanhueco21-Aug-08 21:46
Anna Tanhueco21-Aug-08 21:46 
AnswerRe: How to Browse Network Folders using Folder Dialog Box Control ? Pin
chrisgIT4-Dec-11 7:45
chrisgIT4-Dec-11 7:45 
GeneralDisplay Share folders only for local Machine Pin
harpal shergill24-Apr-08 3:46
harpal shergill24-Apr-08 3:46 
GeneralRe: Display Share folders only for local Machine Pin
jmcc2k19-Nov-08 22:21
jmcc2k19-Nov-08 22:21 
Questionis there possible to get the Shared folder path? Pin
my4color20-Mar-08 20:00
my4color20-Mar-08 20:00 
AnswerRe: is there possible to get the Shared folder path? Pin
Jatin Prajapati22-Mar-08 5:11
Jatin Prajapati22-Mar-08 5:11 
GeneralRe: is there possible to get the Shared folder path? Pin
my4color23-Mar-08 19:14
my4color23-Mar-08 19:14 
QuestionBrowsing the Folder Dialog Box in Web Application Pin
dardnaho3-Feb-08 17:37
dardnaho3-Feb-08 17:37 
GeneralRe: Browsing the Folder Dialog Box in Web Application Pin
Jatin Prajapati17-Feb-08 22:53
Jatin Prajapati17-Feb-08 22:53 
GeneralRe: Browsing the Folder Dialog Box in Web Application Pin
dardnaho18-Feb-08 20:55
dardnaho18-Feb-08 20:55 
GeneralRe: Browsing the Folder Dialog Box in Web Application Pin
Jatin Prajapati20-Feb-08 19:09
Jatin Prajapati20-Feb-08 19:09 
GeneralRe: Browsing the Folder Dialog Box in Web Application Pin
dardnaho3-Mar-08 1:07
dardnaho3-Mar-08 1:07 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.