找回密码
 立即注册
收起左侧

Qt如何调用WshShell对象并调用CreateShortcut接口创建快捷方式

0
回复
3959
查看
[复制链接]
累计签到:2 天
连续签到:1 天
来源: 2019-4-21 17:59:57 显示全部楼层 |阅读模式
1Qter豆
刚接触Qt不久  
最近遇到一个需求就是 给某些特定的程序 创建快捷方式并且同时重设快捷方式的图标
研究了很久 Qt自带的QFile::link好像无法实现重新定义快捷方式图标的功能
查了很多资料  发现可以用WshShell这个对象里的方法
但是苦于刚学Qt不久不知道该怎么调用  有没有知道怎么搞的大哥们 麻烦给小弟解释下 有代码示例更好     小弟在此谢谢各位了!




IDispatch *Wshshor;
    IWshRuntimeLibrary::WshShell *wshll;
    wshll = new IWshRuntimeLibrary::WshShell();
    Wshshor=wshll->CreateShortcut("terxt.lnk");
    IWshRuntimeLibrary::WshShortcut dc(Wshshor);
    dc.SetTargetPath("D:/base/property_boxed.exe");//目标
    dc.SetWorkingDirectory("D:/base");//工作目录
    dc.SetIconLocation("D:/base/40232.ico");//图标目录
    dc.SetWindowStyle(1);
    dc.SetDescription("信息");
    dc.SetArguments("");
    dc.SetHotkey("");
    dc.Save();


我是用dumpcpp.exe生成com接口生成.h和.cpp文件   然后导入到项目里调用 UUID为:72C24DD5-D70A-438B-8A42-98424B88AFB8
但是不知道是不是方法不对 并没有效果 也没有报错

附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了