怎样创建命令行快捷方式?
我想用shell api创建一个快捷方式,这个快捷方式可以用IE打开一个页面。但是我创建之后双击这个快捷方式的时候提示:"default.htm找不到,可能被移走了"。我确信路径是正确的,而且对快捷方式做一些小修改,比如在起始位置里最后加个空格,确定后快捷方式就可以用了。我对比了一下要设一个目标类型,但我不知道怎么改。下面是我的代码,应该怎么改?先谢谢了!
IShellLink* psl;
hres = CoCreateInstance(CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER,
IID_IShellLink, (LPVOID*)&psl);
if (SUCCEEDED(hres))
{
IPersistFile* ppf;
psl->SetPath("\"C:\Program Files\Internet Explorer\iexplore.exe\"
d:\\webpos\\default.htm");
psl->SetWorkingDirectory("D:\\webpos");
psl->SetDescription(cpDesc);
hres = psl->QueryInterface(IID_IPersistFile, (LPVOID*)&ppf);
if (SUCCEEDED(hres))
{
char cpDesktop[MAX_PATH] = {0};
SHGetSpecialFolderPath(NULL, cpDesktop, CSIDL_DESKTOPDIRECTORY,
FALSE);
_bstr_t bstrLnk(cpDesktop);
bstrLnk += "\\";
bstrLnk += szLnkName;
hres = ppf->Save(bstrLnk, TRUE);
ppf->Release();
}
psl->Release();
}
IShellLink* psl;
hres = CoCreateInstance(CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER,
IID_IShellLink, (LPVOID*)&psl);
if (SUCCEEDED(hres))
{
IPersistFile* ppf;
psl->SetPath("\"C:\Program Files\Internet Explorer\iexplore.exe\"
d:\\webpos\\default.htm");
psl->SetWorkingDirectory("D:\\webpos");
psl->SetDescription(cpDesc);
hres = psl->QueryInterface(IID_IPersistFile, (LPVOID*)&ppf);
if (SUCCEEDED(hres))
{
char cpDesktop[MAX_PATH] = {0};
SHGetSpecialFolderPath(NULL, cpDesktop, CSIDL_DESKTOPDIRECTORY,
FALSE);
_bstr_t bstrLnk(cpDesktop);
bstrLnk += "\\";
bstrLnk += szLnkName;
hres = ppf->Save(bstrLnk, TRUE);
ppf->Release();
}
psl->Release();
}
...全文
相关推荐
TLCL Linux命令行大全
#### 五、操作文件和目录- **通配符**:介绍如何使用通配符(`*`, `?`, `[ ]`)来匹配文件名。
在命令行创建快捷方式的工具SHORTCUT.EXE
在Windows操作系统中,命令行工具通常用于执行自动化任务和系统管理,而`SHORTCUT.EXE`是一个非标准但非常实用的小工具,它允许用户在命令行界面创建快捷方式。
ShortCut.exe_命令行创建快捷方式
ShortCut.exe_命令行创建快捷方式。例:shortcut /?shortcut D:\Tencent\QQ\Bin\QQ.exe /
命令行创建快捷方式的工具Shortcut及语法和范例.rar
在IT领域,有时候我们需要在没有图形用户界面的情况下创建快捷方式,这时命令行工具就显得尤为重要。
创建快捷方式到桌面的批处理
**VBS创建快捷方式**: VBS中可以使用WScript.Shell对象的CreateShortCut方法来创建快捷方式。


