如何打开lnk文件,从中得到文件的真实地址和名字。 如何打开lnk文件,从中得到文件的真实地址和名字。比如,历史栏里有个lnk文件,怎样编码实现从这个文件里得到实际的文件名称呢。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 bool GetShortCutFile(LPCSTR ShortcutFile, char* buf, int nSize){ HRESULT hres; IShellLink *psl; IPersistFile *ppf; WIN32_FIND_DATA fd; CoInitialize(NULL); hres = CoCreateInstance( CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER, IID_IShellLink, (void**)&psl ); if (!SUCCEEDED(hres)) return false; hres = psl->QueryInterface(IID_IPersistFile, (void**)&ppf ); if( SUCCEEDED(hres) ) { //buffer for Unicode string wchar_t wsz[MAX_PATH]; MultiByteToWideChar(CP_ACP, 0, ShortcutFile, -1, wsz, MAX_PATH ); hres = ppf->Load(wsz, STGM_READ); if( SUCCEEDED(hres) ) hres = psl->GetPath(buf, nSize, &fd, NULL ); ppf->Release(); } psl->Release(); return SUCCEEDED(hres);}在C++BUILDER6里面通过 tccsdn(紫乐) 太感谢了,果然好用。拿全分,马上结帖。 编辑框 小问题 本人要放出重要的休闲游戏源代码 基于vc单文档的网络通信问题 从COM组件中导出里面的enum类型,应该如何作,谢谢大家…… 打印与打印预览 如何在不同进程中读写同一块内存??????????菜菜问 如何定义COM组件的propget,可以象_Recordset.Fields[idx]那样用数组下标访问? 怎样在剪贴板中加入表格或者是回车,或者画线也可以,100分送人! 怎样建立多宿的SCTP偶联?建立好后怎样确认是多宿? 我想用系统钩子截获WM_SHOWWINDOW消息 很简单的一个问题,怎么把double型的数字位数格式化? 有人使用过Progress Dialog吗?
{
HRESULT hres;
IShellLink *psl;
IPersistFile *ppf;
WIN32_FIND_DATA fd; CoInitialize(NULL);
hres = CoCreateInstance( CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER, IID_IShellLink, (void**)&psl );
if (!SUCCEEDED(hres)) return false; hres = psl->QueryInterface(IID_IPersistFile, (void**)&ppf );
if( SUCCEEDED(hres) )
{
//buffer for Unicode string
wchar_t wsz[MAX_PATH]; MultiByteToWideChar(CP_ACP, 0, ShortcutFile, -1, wsz, MAX_PATH );
hres = ppf->Load(wsz, STGM_READ);
if( SUCCEEDED(hres) )
hres = psl->GetPath(buf, nSize, &fd, NULL );
ppf->Release();
}
psl->Release(); return SUCCEEDED(hres);
}在C++BUILDER6里面通过
太感谢了,果然好用。拿全分,马上结帖。