Click here to Skip to main content
13,594,656 members
Click here to Skip to main content


77 bookmarked
Posted 24 Sep 2003
Licenced CPOL

XBrowseForFolder - Wrapper for SHBrowseForFolder

, 7 Mar 2008
XBrowseForFolder wraps the SHBrowseForFolder API, provides a way to specify an initial directory, and cleans up the SHBrowseForFolder dialog.
// XBrowseForFolderTestDlg.h : header file


#include "XColorStatic.h"

// CXBrowseForFolderTestDlg dialog

class CXBrowseForFolderTestDlg : public CDialog
// Construction
	CXBrowseForFolderTestDlg(CWnd* pParent = NULL);	// standard constructor

// Dialog Data
	CComboBox	m_comboInitial;
	CXColorStatic	m_staticAsterisk1;
	CXColorStatic	m_staticAsterisk2;
	CXColorStatic	m_staticAsterisk3;
	CXColorStatic	m_staticAsterisk4;
	CXColorStatic	m_staticAsterisk5;
	CComboBox		m_comboRoot;
	CEdit			m_edtReturnCode;
	CEdit			m_edtFolder;
	BOOL			m_bEditBox;
	int				m_nRootIndex;
	CString			m_strInitialFolder;
	CString			m_strCaption;
	int				m_nInitialIndex;
	int		m_nInitial;

	// ClassWizard generated virtual function overrides
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support

// Implementation
	HICON m_hIcon;
	struct CSIDL
		TCHAR * pszCsidl;
		int		nCsidl;
	static const CSIDL m_nCsidl[];

	// Generated message map functions
	virtual BOOL OnInitDialog();
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	afx_msg void OnSHBrowseForFolder();
	afx_msg void OnXBrowseForFolder();
	afx_msg void OnInitial();

// Microsoft Visual C++ will insert additional declarations immediately before the previous line.


By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.


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


About the Author

Hans Dietrich
Software Developer (Senior) Hans Dietrich Software
United States United States
I attended St. Michael's College of the University of Toronto, with the intention of becoming a priest. A friend in the University's Computer Science Department got me interested in programming, and I have been hooked ever since.

Recently, I have moved to Los Angeles where I am doing consulting and development work.

For consulting and custom software development, please see

You may also be interested in...

Permalink | Advertise | Privacy | Cookies | Terms of Use | Mobile
Web04-2016 | 2.8.180621.3 | Last Updated 7 Mar 2008
Article Copyright 2003 by Hans Dietrich
Everything else Copyright © CodeProject, 1999-2018
Layout: fixed | fluid