// 创建快捷方式
BOOL CCreateLnkDlg::CreateLink(LPSTR szPath,LPSTR szLink)
{
CoInitialize(NULL);
HRESULT hres;
IShellLink* psl;
IPersistFile* ppf;
WORD wsz[MAX_PATH];
hres = CoCreateInstance(CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER,
IID_IShellLink, (void**)&psl);
if(FAILED(hres))
return FALSE;
psl->SetPath(szPath);
hres = psl->QueryInterface(IID_IPersistFile, (void**)&ppf);
if(FAILED(hres))
return FALSE;
MultiByteToWideChar(CP_ACP, 0, szLink, -1, wsz, MAX_PATH);
hres = ppf->Save(wsz, STGM_READWRITE);
ppf->Release();
psl->Release();
CoUninitialize();
return TRUE;
}
// 如何使用
CreateLink("c://a.txt", "d://a.lnk");