|
//初始化COM库 hRet = ::CoInitialize(NULL);
if ( hRet != S_OK) //初始化COM库失败,直接返回
{
AfxMessageBox("初始化COM库失败");
return;
}
//创建IShellLink实例
hRet = ::CoCreateInstance(CLSID_ShellLink,NULL,CLSCTX_INPROC_SERVER,IID_IShellLink,(void**)&pLink);
if ( hRet != S_ok)
{
AfxMessageBox("创建IShellLink实例失败");
}
else
{
//创建IShellLink实例成功,继续操作
//从IShellLink对象中获取IPersistFile接口
hRet = pLink->QueryInterface(IID_IpersistFile,(void**)&ppf);
if ( hRet != S_OK)
{
AfxMessageBox("获取IPersistFile接口失败");
}
else
{
//获取接口成功,继续操作
//设置快捷方式中的程序路径
pLink->SetPath("c:\\aa.exe");
//设置快捷方式的工作目录
pLink->SetWorkingDirectory("c:\\");
//确保快捷方式路径由ANSI字符串组成
MultiByteToWideChar(
CP_ACP,
0,
"C:\\Documents and Settings\\hjs\\桌面\\vc创建的快捷方式.lnk",
-1,
wsz,
MAX_PATH
);
//保存快捷方式
ppf->Save(wsz,TRUE);
}
} |
|
|