永发信息网

如何在程序中创建另一个程序的快捷方式

答案:2  悬赏:30  手机版
解决时间 2021-03-18 02:50
如何在程序中创建另一个程序的快捷方式
最佳答案
以下是一些资料,供参考:
------------------------------------------
编程思想:
------------------------------------------
Windows外壳(Shell)的快捷方式是以OLE技术的组件对象模型COM(Component Object Modal)为基础而设计的。利用COM模型,一个应用程序可以调用另一应用程序的某些功能。这方面的技术细节请参阅有关文献。

在了解了上述基本原理后,创建Windows的快捷方式就比较容易了。首先利用OLE通过调用CoCreateInstance()函数建立一个IID_IShellLink实例,并同时得到其接口指针。利用这个接口指针可以对其各项属性进行设置。为了使这些信息以快捷方式的数据文件(*.lnk)格式保存起来,还需要从IID_IShellLink对象取得其IID_IPersistFile接口指针,以便于调用其成员函数Save()保存前面设置的信息。

至于如何删除快捷方式以及创建和删除文件夹,则只需要简单地调用文件操作函数SHFileOperation()就可以了。

另外应该注意,在完成上述操作之后,都要调用SHChangeNotify()函数通知Windows外壳有关变化以使之及时更新其显示状态。

//创建快捷方式

BOOL CreateLink (

LPSTR szPath,//快捷方式的目标应用程序名

LPSTR szLink)//快捷方式的数据文件名(*.lnk)

{

HRESULT hres ;

IShellLink * psl ;

IPersistFile* ppf ;

WORD wsz[ MAX_PATH] ;

//创建一个IShellLink实例

hres = CoCreateInstance( CLSID_ShellLink, NULL,

CLSCTX_INPROC_SERVER, IID_IShellLink,

(void **)&psl) ;

if( FAILED( hres))

return FALSE ;

//设置目标应用程序

psl -> SetPath( szPath) ;

//设置快捷键(此处设为Shift+Ctrl+'R')

psl -> SetHotkey( MAKEWORd( 'R',

HOTKEYF_SHIFT |HOTKEYF_CONTROL)) ;

//从IShellLink获取其IPersistFile接口

//用于保存快捷方式的数据文件 (*.lnk)

hres = psl -> QueryInterface( IID_IPersistFile,

(void**)&ppf) ;

if( FAILED( hres))

return FALSE ;

// 确保数据文件名为ANSI格式

MultiByteToWideChar( CP_ACP, 0, szLink, -1,

wsz, MAX_PATH) ;

//调用IPersistFile::Save

//保存快捷方式的数据文件 (*.lnk)

hres = ppf -> Save( wsz, STGM_READWRITE) ;

//释放IPersistFile和IShellLink接口

ppf -> Release( ) ;

psl -> Release( ) ;

return TRUE;

}
全部回答
把鼠标移到这个图标上 然后单击右键 在下面 创建快捷方式 这样就行了! 希望能帮到你,如有疑问请补充提问,湧彺憄偂 ℅ ╄→デ 为您解答
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
海尔u56t支持哪种格式的图片
蚝贝坊怎么去啊,有知道地址的么
自己在家里磨豆浆,一次需要多少黄豆?
从感恩亲情的角度出发写一篇600字文章
魅蓝note6为什么没有64g
遇到小人邻居怎么办?我是一名主播,然后不知
老回民烧烤涮地址在哪,我要去那里办事
一台压路机的滚筒长10米,直径长0点6米,如果
保利香槟国际怎么样
弹弹堂口袋版刷强7到12要多少强化石
乐山大众串串香在哪里啊,我有事要去这个地方
伊川县城关镇双语学校成绩单
更却桑周仁波切佛法是大智慧和大慈悲,大菩萨
什么地方有什么美称
辽宁登科律师事务所地址有知道的么?有点事想
推荐资讯
爱车一族汽车美容装潢在哪里啊,我有事要去这
宝宝在上面跑,楼下总上来找,怎么办
三房湾这个地址在什么地方,我要处理点事
英国有什么著名的民间故事?
杨军大肉羊肉店这个地址在什么地方,我要处理
1T流量怎么用也用不完
培峨这个地址在什么地方,我要处理点事
其实很好奇,这篇文章是用孩子的口吻写的。可
Voyage d'Hermes这款香水EDT和EDP香味为
汪中的介绍
求X-JAPAN的<without u><tears><endless rani
凡人修真2器魂是怎么激活的呢?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?