我想得到桌面路经,看MSDN知道有个SHGetDesktopFolder函数,但不致怎用,请高手帮帮忙!给上原码,有100分哦!
解决方案 »
- vc里CFile类的Duplicate()函数的作用是什么?怎么使用?
- 怎样学习Windows 网络编程
- 关于一个系统模型的建立可能性讨论
- 请教高手如何读取硬盘序列号(冰天雪地裸体在线跪等)!!!!
- 有谁知道 对战平台 是怎么截获游戏的数据包的?高手帮忙啊!!!!!!!
- 100分相送,关于字符串的问题
- 繼承一個你自己的對話框,結果會如何?
- 请教高手:怎样将HTML格式的文件转存为位图或别的图片格式
- 主线程post登录网站后,如何使用多线程操作呢
- 请教一下MATLAB的GUI中,怎么把可编辑文本和另一段代码里的变量关联到一起
- 单文档程序,在view类有一线程,当我退出该线程时,窗口也随之消失?如何解决?
- child对话框如何使用?
SHGetDesktopFolder(&psfDesktop);But to get path of desk top , you can also use
BOOL SHGetSpecialFolderPath(
HWND hwndOwner,
LPTSTR lpszPath,
int nFolder,//CSIDL_DESKTOP
BOOL fCreate
);
http://nowcan.yeah.net参考这个程序,在桌面建立快捷方式
if(::SHGetSpecialFolderPath(AfxGetMainWnd()->m_hWnd,lpszDesktopPath,CSIDL_DESKTOP,NULL))
{
AfxMessageBox(lpszDesktopPath);
}
CoInitialize( NULL );
hr = SHGetDesktopFolder(&psfDeskTop);
CoUninitialize();
AnsiString __fastcall GetSysFolder(AnsiString SysFolderDesc)
{
LPMALLOC ShellMalloc;
LPITEMIDLIST DesktopPidl;
char DesktopDir[MAX_PATH];
int nFolder; SysFolderDesc=SysFolderDesc.UpperCase();
if(SysFolderDesc=="DESKTOP")
nFolder=CSIDL_DESKTOP;
else if(SysFolderDesc=="DESKTOPDIRECTORY")
nFolder=CSIDL_DESKTOPDIRECTORY;
else if(SysFolderDesc=="RECYCLE")
nFolder=CSIDL_BITBUCKET;
else if(SysFolderDesc=="CONTROLS")
nFolder=CSIDL_CONTROLS;
else if(SysFolderDesc=="DRIVES")
nFolder=CSIDL_DRIVES;
else if(SysFolderDesc=="PROGRAMS")
nFolder=CSIDL_PROGRAMS;
else if(SysFolderDesc=="SENDTO")
nFolder=CSIDL_SENDTO;
else if(SysFolderDesc=="STARTUP")
nFolder=CSIDL_STARTUP;
else if(SysFolderDesc=="STARTMENU")
nFolder=CSIDL_STARTMENU;
else if(SysFolderDesc=="NETWORK")
nFolder=CSIDL_NETWORK;
else return ""; if(FAILED(SHGetMalloc(&ShellMalloc)))
return "";
if(FAILED(SHGetSpecialFolderLocation(NULL,
nFolder,&DesktopPidl)))
{
return "";
}
if(!SHGetPathFromIDList(DesktopPidl, DesktopDir))
{
ShellMalloc->Free(DesktopPidl);
ShellMalloc->Release();
return "";
}
ShellMalloc->Free(DesktopPidl);
ShellMalloc->Release(); return AnsiString(DesktopDir);
}
//------------------------------------------------------------------------------