提取文件原生ico图标

为 Cobalt Strike exe 木马添加图标中提到了使用软件提取图标,并更换图标的方式。这里单独提一下如何手动获取软件原生图标。思路就是找到相关应用程序的exe文件,解压,找到ico即可。必备工具:Everything、解压缩软件。
举几个例子:

获取Office三件套的ico

1:word图标
使用Everything搜索到word
在这里插入图片描述
用解压缩软件打开它
在这里插入图片描述
点开仅有的一个文件夹,就会看到一个名为ico的文件夹,把它拖出来即可
在这里插入图片描述
2:Excel图标
同理,获取到Excel图标
在这里插入图片描述
在这里插入图片描述
3:获取PPT,及更多软件的图标
用同样的办法还能获取PPT图标,但是这里再说一种方法,注意到上面word和Excel的路径一样,猜测,office全家桶应该都在这里,那这次我们可以全都拿过来。使用Everything把该路径下所有的exe文件搜出来,复制到一个新的路径下,方便我们集中操作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

获取其他软件

思路同上,就是解压exe文件,找到icon文件夹
1:中国蚁剑
Everything搜索到antsword.exe后,解压发现里面的文件夹有点多,我会逐个检查吗?当然不会,把exe文件丢到桌面临时文件夹中解压,然后使用Everything搜索icon文件夹
在这里插入图片描述

其他

再换一种思路,假如,我不知道软件对应的exe名字,更或者说,我无法通过Everything找到相应的exe文件怎么办?
思路:通过搜索获取到软件,再获取软件位置,最后通过解压获取ico图标
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

易语言编写自己创作的.版本 2 .程序集 窗口程序集1 .子程序 _选择图片_被单击 .局部变量 位图文件名, 文本型 通用对话框1.过滤器 = “图像文件|*.bmp;*.jpg;*.gif;*.tif;*.pcx;*.ico;*.cur;*.png|所有文件(*.*)|*.*” 通用对话框1.类型 = 0 通用对话框1.默认文件后缀 = “” .如果 (单选框1.选中 或 单选框2.选中 或 单选框3.选中) .如果 (单选框3.选中) 信息框 (“即将打开欲转换为16x16格式的图像文件。”, 64, “打开文件”) .如果真 (通用对话框1.打开 ()) 位图文件名 = 通用对话框1.文件名 位图画板1.底图 = 读入文件 (位图文件名) .如果真结束 信息框 (“即将打开欲转换为32x32格式的图像文件。”, 64, “打开文件”) .如果真 (通用对话框1.打开 ()) 位图文件名 = 通用对话框1.文件名 位图画板2.底图 = 读入文件 (位图文件名) .如果真结束 .否则 .如果真 (通用对话框1.打开 ()) 位图文件名 = 通用对话框1.文件名 位图画板1.底图 = 读入文件 (位图文件名) .如果真结束 .如果结束 .否则 信息框 (“请先设置图标格式!”, 48, “警告”) .如果结束 .子程序 _转换_被单击 .如果 (位图画板1.底图 = { }) 信息框 (“你还未载入图像文件!”, 48, “警告”) .否则 图标画板1.可视 = 假 图标画板2.可视 = 假 标签1.可视 = 假 标签2.可视 = 假 .判断开始 (单选框1.选中) 转换为单16位 () 图标画板1.可视 = 真 标签1.可视 = 真 .判断 (单选框2.选中) 转换为单32位 () 图标画板2.可视 = 真 标签2.可视 = 真 .判断 (单选框3.选中) 转换为双图标 () 图标画板1.可视 = 真 标签1.可视 = 真 图标画板2.可视 = 真 标签2.可视 = 真 .默认 .判断结束 .如果结束 .子程序 转换为单16位 .局部变量 h, 整数型 输出图标 = 取字节集左边 (#图标模板, 894) h = 载入图片 (位图画板1.底图) 图标画板1.画图片 (h, 0, 0, 16, 16, ) 图像数据1 = 取字节集右边 (图标画板1.取图片 (, ), 768) 输出图标 = 字节集替换 (输出图标, 63, 768, 图像数据1) .子程序 转换为单32位 .局部变量 h, 整数型 输出图标 = 取字节集中间 (#图标模板, 895, 3262) h = 载入图片 (位图画板1.底图) 图标画板2.画图片 (h, 0, 0, 32, 32, ) 图像数据2 = 取字节集右边 (图标画板2.取图片 (, ), 3072) 输出图标 = 字节集替换 (输出图标, 63, 3072, 图像数据2) .子程序 转换为双图标 .局部变量 h, 整数型 输出图标 = 取字节集右边 (#图标模板, 4150) h = 载入图片 (位图画板1.底图) 图标画板1.画图片 (h, 0, 0, 16, 16, ) 图像数据1 = 取字节集右边 (图标画板1.取图片 (, ), 768) 输出图标 = 字节集替换 (输出图标, 79, 768, 图像数据1) h = 载入图片 (位图画板2.底图) 图标画板2.画图片 (h, 0, 0, 32, 32, ) 图像数据2 = 取字节集右边 (图标画板2.取图片 (, ), 3072) 输出图标 = 字节集替换 (输出图标, 951, 3072, 图像数据2) .子程序 _退出_被单击 结束 () .子程序 _保存_被单击 .局部变量 文件名, 文本型 .如果真 (输出图标 = { }) 信息框 (“输出图标为空,不能被保存!”, 48, “警告”) 返回 () .如果真结束 通用对话框1.类型 = 1 通用对话框1.过滤器 = “图标文件|*.ico” 通用对话框1.文件名 = “” 通用对话框1.默认文件后缀 = “ico” .如果真 (通用对话框1.打开 ()) 文件名 = 通用对话框1.文件名 位图画板1.底图 = { } 位图画板2.底图 = { } 图标画板1.清除 (, , , ) 图标画板2.清除 (, , , ) 图像数据1 = { } 图像数据2 = { } 标签1.可视 = 假 标签2.可视 = 假 .如果 (文件名 ≠ “”) 写到文件 (文件名, 输出图标) .否则 信息框 (“文件名称不能为空!”, 48, “警告”) .如果结束 .如果真结束 输出图标 = { } .子程序 _清除_被单击 位图画板1.底图 = { } 位图画板2.底图 = { } 图标画板1.底图 = { } 图标画板1.清除 (, , , ) 图标画板2.底图 = { } 图标画板2.清除 (, , , ) 输出图标 = { } 图像数据1 = { } 图像数据2 = { } 标签1.可视 = 假 标签2.可视 = 假 .子程序 _编辑_被单击 .局部变量 i, 整数型 .局部变量 j, 整数型 .如果真 (输出图标 = { }) 信息框 (“还未进行转换!”, 48, “警告”) 返回 () .如果真结束 .如果真 (单选框1.选中 或 单选框3.选中) 重定义数组 (颜色数组1, 假, 16, 16) i = 0 .判断循环首 (i < 16) j = 0 .判断循环首 (j < 16) 颜色数组1 [i + 1] [j + 1] = 取颜色值 (图像数据1 [i × 48 + j × 3 + 1 + 2], 图像数据1 [i × 48 + j × 3 + 1 + 1], 图像数据1 [i × 48 + j × 3 + 1]) j = j + 1 .判断循环尾 () i = i + 1 .判断循环尾 () .如果真结束 .如果真 (单选框2.选中 或 单选框3.选中) 重定义数组 (颜色数组2, 假, 32, 32) i = 0 .判断循环首 (i < 32) j = 0 .判断循环首 (j < 32) 颜色数组2 [i + 1] [j + 1] = 取颜色值 (图像数据2 [i × 96 + j × 3 + 1 + 2], 图像数据2 [i × 96 + j × 3 + 1 + 1], 图像数据2 [i × 96 + j × 3 + 1]) j = j + 1 .判断循环尾 () i = i + 1 .判断循环尾 () .如果真结束 载入 (窗口1, , 真) .子程序 __启动窗口_创建完毕 输出图标 = { } 加载皮肤 (9)
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值