TCHAR lpszDesktopPath[MAX_PATH];
if(::SHGetSpecialFolderPath(AfxGetMainWnd()-> m_hWnd,lpszDesktopPath,CSIDL_DESKTOP,NULL))
{
CString str(_T(""));
str.Format(_T("%s"),lpszDesktopPath);
AfxMessageBox(str);
}
注意:TCHAR WCHAR LPWSTR wchar* CString 转换
DWORD dwAttr=GetFileAttributesW(m_savepath); //m_savepath路径,如:C:\\报表
if(dwAttr==0xFFFFFFFF) //若文件夹不存在,创建文件夹
CreateDirectoryW(m_savepath,NULL);
else
if(dwAttr & FILE_ATTRIBUTE_DIRECTORY) //若是文件夹 ,就处理
{
}声明API:
function ulong SHGetSpecialFolderPath(long hwndOwner,ref string lpszPath,int nFolder,boolean fCreate )
LIBRARY "shell32.dll" ALIAS FOR "SHGetSpecialFolderPathA"
Function Long GetDesktopWindow() Library 'user32.dll'
hwndOwner :用GetDesktopWindow API取一个窗口句柄。
lpszPath:返回的路径
nFolder:标识代号
fCreate:true :如果文件夹不存在则创建,false:不创建
lpszPath和nFolder对应关系:
| nFolder | lpszPath |
| 0 | C:/Documents and Settings/当前用户/桌面 |
| 2 | C:/Documents and Settings/当前用户/「开始」菜单/程序 |
| 5 | C:/Documents and Settings/当前用户/My Documents |
| 6 | C:/Documents and Settings/当前用户/Favorites |
| 7 | C:/Documents and Settings/当前用户/「开始」菜单/程序/启动 |
| 8 | C:/Documents and Settings/当前用户/Recent |
| 9 | C:/Documents and Settings/当前用户/SendTo |
| 11 | C:/Documents and Settings/当前用户/「开始」菜单 |
| 13 | C:/Documents and Settings/当前用户/My Documents/My Music |
| 14 | C:/Documents and Settings/当前用户/My Documents/My Videos |
| 16 | C:/Documents and Settings/当前用户/桌面 |
| 19 | C:/Documents and Settings/当前用户/NetHood |
| 20 | C:/WINDOWS/Fonts |
| 21 | C:/Documents and Settings/当前用户/Templates |
| 22 | C:/Documents and Settings/All Users/「开始」菜单 |
| 23 | C:/Documents and Settings/All Users/「开始」菜单/程序 |
| 24 | C:/Documents and Settings/All Users/「开始」菜单/程序/启动 |
| 25 | C:/Documents and Settings/All Users/桌面 |
| 26 | C:/Documents and Settings/当前用户/Application Data |
| 27 | C:/Documents and Settings/当前用户/PrintHood |
| 28 | C:/Documents and Settings/当前用户/Local Settings/Application Data |
| 31 | C:/Documents and Settings/All Users/Favorites |
| 32 | C:/Documents and Settings/当前用户/Local Settings/Temporary Internet Files |
| 33 | C:/Documents and Settings/当前用户/Cookies |
| 34 | C:/Documents and Settings/当前用户/Local Settings/History |
| 35 | C:/Documents and Settings/All Users/Application Data |
| 36 | C:/WINDOWS |
| 37 | C:/WINDOWS/system32 |
| 38 | C:/Program Files |
| 39 | C:/Documents and Settings/当前用户/My Documents/My Pictures |
| 40 | C:/Documents and Settings/当前用户 |
| 43 | C:/Program Files/Common Files |
| 45 | C:/Documents and Settings/All Users/Templates |
| 46 | C:/Documents and Settings/All Users/Documents |
| 47 | C:/Documents and Settings/All Users/「开始」菜单/程序/管理工具 |
| 48 | C:/Documents and Settings/当前用户/「开始」菜单/程序/管理工具 |
| 53 | C:/Documents and Settings/All Users/Documents/My Music |
| 54 | C:/Documents and Settings/All Users/Documents/My Pictures |
| 55 | C:/Documents and Settings/All Users/Documents/My Videos |
| 56 | C:/WINDOWS/resources |
| 59 | C:/Documents and Settings/当前用户/Local Settings/Application Data/Microsoft/CD Burning |
3767

被折叠的 条评论
为什么被折叠?



