首页
社区
课程
招聘
[求助]桌面右键菜单图标
发表于: 2012-4-17 11:47 8155

[求助]桌面右键菜单图标

2012-4-17 11:47
8155
桌面右键菜单中的“发送到”选项,中的菜单图标是怎么获取到的?
如图:

[注意]看雪招聘,专注安全领域的专业人才平台!

上传的附件:
收藏
免费
支持
分享
最新回复 (8)
雪    币: 80
活跃值: (142)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
为什么没人回复。。
2012-4-17 13:00
0
雪    币: 89
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
什么获取图标
说详细点
2012-4-17 13:04
0
雪    币: 5047
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
http://bbs.pediy.com/showthread.php?t=143858
这个帖子里有讲到

然后把这个快捷方式放到C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\SendTo这个文件夹下面,其实那里面已经有几个系统默认的,比如什么传真啊,桌面快捷方式啊,压缩文件啊之类的。没用的东西果断删掉,比如传真,你会用到吗?这个路径是win7下面的,xp的路径自己百度,我也不知道相不相同。要找到这个文件夹你首先得把隐藏文件的选项关掉,这个不至于不知道吧?
2012-4-17 13:06
0
雪    币: 80
活跃值: (142)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
就是把程序的图标提取出来添加到右键菜单的选项上,就像SendTo做的那样。
2012-4-17 13:20
0
雪    币: 80
活跃值: (142)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
我没有说明白,我指的是用编程的方法。
2012-4-17 13:21
0
雪    币: 1015
活跃值: (235)
能力值: ( LV12,RANK:440 )
在线值:
发帖
回帖
粉丝
7
编程模拟手动复制快捷方式到sendto就行了吧
2012-4-17 15:14
0
雪    币: 183
活跃值: (55)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
也可以从注册表入手 run 打开方式里面就可以添加进去

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\exefile\shell]

[HKEY_CLASSES_ROOT\exefile\shell\CFF Explorer]

[HKEY_CLASSES_ROOT\exefile\shell\CFF Explorer\Command]
@="D:\\Program Files\\Crack Tools\\辅助工具\\CFF Explorer\\CFF Explorer.exe %1"

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\dllfile\shell]

[HKEY_CLASSES_ROOT\dllfile\shell\CFF Explorer]

[HKEY_CLASSES_ROOT\dllfile\shell\CFF Explorer\Command]
@="D:\\Program Files\\Crack Tools\\辅助工具\\CFF Explorer\\CFF Explorer.exe %1"

[HKEY_CLASSES_ROOT\dllfile\shell\open]
"EditFlags"=hex:00,00,00,00

[HKEY_CLASSES_ROOT\dllfile\shell\open\command]
@="\"%1\" %*"

不知道楼主是否能看懂,大概思路就是这样的
2012-4-17 16:52
0
雪    币: 89
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
MSDN   的例子,创建快捷方式并改变图标
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
/*PARAMETERS
     fname_to_create_link     =   (e.g.)   "c:\\mytextfile.txt "
     lnk_fname   =   (e.g.)   "yourname.lnk "
     */  
 
     void   CreateLinkThenChangeIcon(LPTSTR   fname_to_create_link,
                                                                 LPTSTR   lnk_fname)
     {
     HRESULT   hres;
     IShellLink   *psl   =   NULL;
     IPersistFile   *pPf   =   NULL;
     WORD   wsz[256];
     TCHAR   buf[256];
     int   id;
     LPITEMIDLIST   pidl;
 
     hres   =   CoCreateInstance(     CLSID_ShellLink,
 
                                                     NULL,
                                                     CLSCTX_INPROC_SERVER,
                                                     IID_IShellLink,
                                                     (LPVOID*)&psl);
     if(FAILED(hres))
           goto   cleanup;
     hres   =   psl-> QueryInterface(IID_IPersistFile,   (LPVOID*)&pPf);
     if(FAILED(hres))
           goto   cleanup;
     hres   =   psl-> SetPath(fname_to_create_link);
     if(FAILED(hres))
 
           goto   cleanup;
     //place   the   shortcut   on   the   desktop
     SHGetSpecialFolderLocation(hwnd,   CSIDL_DESKTOP,   > pidl);
 
     SHGetPathFromIDList(pidl,   buf);
 
     lstrcat(buf, "\\ ");
     lstrcat(buf,lnk_fname);
 
     MultiByteToWideChar(CP_ACP,   0,   buf,   -1,   wsz,   MAX_PATH);
 
     hres   =   pPf-> Save(wsz,   TRUE);
 
     if(FAILED(hres))
 
           goto   cleanup;
 
     GetSystemDirectory(buf,   256);
 
     lstrcat(buf, "\\shell32.dll ");
 
     hres   =   psl-> SetIconLocation(buf,   1);
 
     if(FAILED(hres))
 
           goto   cleanup;
 
     hres   =   psl-> GetIconLocation(buf,   256,   &id);
 
     if(FAILED(hres))
 
           goto   cleanup;
 
     pPf-&Save(wsz,   TRUE);
 
     cleanup:
 
     if(pPf)
 
           pPf-> Release();
 
     if(psl)
 
           psl-> Release();
 
     }  
2012-4-17 23:26
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册