怎样获得“我的文档”的路径啊? 怎么样获得“我的文档”的路径啊?比如想得到C:\Documents and Settings\Admin\My Documents 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 %USERPROFILE%\My Documents先把前者expandEnviromentString下 李马大哥的详细资料:使用API函数SHGetSpecialFolderLocation。shlobj.h里有SHGetSpecialFolderLocation的原型声明。这个函数可以帮我们找到Windows的桌面目录、启动目录、我的文档目录等。 SHGetSpecialFolder需要三个参数。 第一个参数是HWND,它指定了"所有者窗口":在调用这个函数时可能出现的对话框或消息框。第二个参数是一个整数id,决定哪个目录是待查找目录,它的取值可能是: CSIDL_BITBUCKET 回收站 CSIDL_CONTROLS 控制面板 CSIDL_DESKTOP Windows 桌面Desktop CSIDL_DESKTOPDIRECTORY Desktop的目录 CSIDL_DRIVES 我的电脑 CSIDL_FONTS 字体目录 CSIDL_NETHOOD 网上邻居 CSIDL_NETWORK 网上邻居虚拟目录 CSIDL_PERSONAL 我的文档 CSIDL_PRINTERS 打印机 CSIDL_PROGRAMS 程序组 CSIDL_RECENT 最近打开的文档 CSIDL_SENDTO “发送到”菜单项 CSIDL_STARTMENU 任务条启动菜单项 CSIDL_STARTUP 启动目录 CSIDL_TEMPLATES 文档模板 TCHAR szDocument[MAX_PATH]={0}; memset(m_lpszDefaultDir,0,_MAX_PATH); LPITEMIDLIST pidl=NULL; SHGetSpecialFolderLocation(NULL, CSIDL_PERSONAL, &pidl); if (pidl && SHGetPathFromIDList(pidl, szDocument)) { GetShortPathName(szDocument,m_lpszDefaultDir,_MAX_PATH); } 看孙鑫老师的VC教程第14课网络编程,编译没问题,运行服务端接收不到信息。 RtlVolumeDeviceToDosName用法小问题 怎么让系统一开启就运行指定的程序? CListCtrl 中使用图标的问题 将文件拖到Richedit中,如何知道这个文件的全路径? (在线等!)想要在程序里建立一个符号表,改怎么做? 随系统启动而启动的软件问题? 万分紧急,请各位高手帮忙,程序界面的显示与显示器分辨率的问题?多谢!!! vc中有多少个API函数 如何避免一个应用程序多次运行? 调用DLL时碰到的奇怪问题! 需要将CString类转换成char[]碰到的"\"问题!
SHGetSpecialFolder需要三个参数。 第一个参数是HWND,它指定了"所有者窗口":在调用这个函数时可能出现的对话框或消息框。第二个参数是一个整数id,决定哪个目录是待查找目录,它的取值可能是:
CSIDL_BITBUCKET 回收站
CSIDL_CONTROLS 控制面板
CSIDL_DESKTOP Windows 桌面Desktop
CSIDL_DESKTOPDIRECTORY Desktop的目录
CSIDL_DRIVES 我的电脑
CSIDL_FONTS 字体目录
CSIDL_NETHOOD 网上邻居
CSIDL_NETWORK 网上邻居虚拟目录
CSIDL_PERSONAL 我的文档
CSIDL_PRINTERS 打印机
CSIDL_PROGRAMS 程序组
CSIDL_RECENT 最近打开的文档
CSIDL_SENDTO “发送到”菜单项
CSIDL_STARTMENU 任务条启动菜单项
CSIDL_STARTUP 启动目录
CSIDL_TEMPLATES 文档模板
memset(m_lpszDefaultDir,0,_MAX_PATH); LPITEMIDLIST pidl=NULL;
SHGetSpecialFolderLocation(NULL, CSIDL_PERSONAL, &pidl);
if (pidl && SHGetPathFromIDList(pidl, szDocument))
{
GetShortPathName(szDocument,m_lpszDefaultDir,_MAX_PATH);
}