关于CFileDlalog 兄弟,我刚修改了一个,基于CFileDialog的,很方便的实现了对文件夹的选择,绝对好用。给Email。我发一个给你。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 [email protected] thank you #include <windows.h>#include <shlobj.h>int CALLBACK BrowseCallbackProc(HWND hwnd, UINT uMsg, LPARAM lParam, LPARAM lpData);// To demonstrate the problem, remove the comment characters from the// following line://#define SHOW_PROBLEMint WINAPI WinMain( HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpszCmdLine, int nCmdShow){ BROWSEINFO bi; ZeroMemory(&bi, sizeof(bi)); TCHAR szDisplayName[MAX_PATH]; szDisplayName[0] = '\0'; bi.hwndOwner = NULL; bi.pidlRoot = NULL; bi.pszDisplayName = szDisplayName; bi.lpszTitle = TEXT("Browsing"); bi.ulFlags = BIF_EDITBOX | BIF_VALIDATE ;#ifndef SHOW_PROBLEM bi.lpfn = BrowseCallbackProc;#endif bi.lParam = NULL; bi.iImage = 0; LPITEMIDLIST pidl = SHBrowseForFolder(&bi); if (NULL != pidl) MessageBox(NULL, szDisplayName, TEXT("SHBrowseFolder"), MB_OK); else MessageBox(NULL, TEXT("SHBrowseFolder failed"), TEXT("SHBrowseFolder"), MB_OK); return 0;}#define DONT_DISMISS 1int CALLBACK BrowseCallbackProc(HWND hwnd, UINT uMsg, LPARAM lParam, LPARAM lpData){ switch (uMsg) { case BFFM_VALIDATEFAILED: return DONT_DISMISS; default: return 0; }} 长假归来,散分! Install Shield 能做这样的事吗?关于安装时获得IP和写文件。 查找一段序列中的空号算法求教! 请教。一个log.txt文件。如何得到总行数和总字节数。 急, 在WIN2000中编译好后在XP下运行界面变得一塌糊涂 如何让我的控键的颜色和我的对话框颜色一致啊! C++有什么函数直接四舍五入 请问:关于SendMessage(在线等待) 关于Unicode和多字节字符集 怎么引用一个全局变量!? 如何得到系统时间,是用CTime类吗?用里面的什么函数? 关注:请问初学者买《深入浅出MFC》好一些,还是《深入浅出MFC 2E》好一些?
#include <windows.h>
#include <shlobj.h>int CALLBACK BrowseCallbackProc(HWND hwnd, UINT uMsg,
LPARAM lParam, LPARAM lpData);// To demonstrate the problem, remove the comment characters from the
// following line:
//#define SHOW_PROBLEMint WINAPI WinMain( HINSTANCE hInst, HINSTANCE hPrevInst,
LPSTR lpszCmdLine, int nCmdShow)
{
BROWSEINFO bi;
ZeroMemory(&bi, sizeof(bi)); TCHAR szDisplayName[MAX_PATH];
szDisplayName[0] = '\0'; bi.hwndOwner = NULL;
bi.pidlRoot = NULL;
bi.pszDisplayName = szDisplayName;
bi.lpszTitle = TEXT("Browsing");
bi.ulFlags = BIF_EDITBOX | BIF_VALIDATE ;
#ifndef SHOW_PROBLEM
bi.lpfn = BrowseCallbackProc;
#endif
bi.lParam = NULL;
bi.iImage = 0; LPITEMIDLIST pidl = SHBrowseForFolder(&bi); if (NULL != pidl)
MessageBox(NULL, szDisplayName, TEXT("SHBrowseFolder"), MB_OK);
else
MessageBox(NULL, TEXT("SHBrowseFolder failed"), TEXT("SHBrowseFolder"), MB_OK); return 0;
}
#define DONT_DISMISS 1int CALLBACK BrowseCallbackProc(HWND hwnd, UINT uMsg,
LPARAM lParam, LPARAM lpData)
{
switch (uMsg)
{
case BFFM_VALIDATEFAILED:
return DONT_DISMISS;
default:
return 0;
}
}