修改EXE文件图标及资源的方法

VS2017 调试生成EXE文件的图标修改 右击项目-属性,打开选型卡,如下图所示 修改“应用程序-资源-图标和清单”的图标,图标格式为ico 完成,调试生成后,生成的EXE文件默认图标,已更改为想要的图标。 ... 阅读详情
 #include <windows.h>

  BOOL CALLBACK DeleteExistingIcons(  
  HMODULE hModule,     
  LPCTSTR lpszType,   
  LPTSTR lpszName,     
  LONG lParam);
   
  BOOL CALLBACK UpdateIcons(  
  HMODULE hModule,   
  LPCTSTR lpszType,   
  LPTSTR lpszName,   
  LONG lParam);
   
  void IconExchange(LPSTR lpSrcExe , LPSTR lpDestExe, LPSTR lpOutExe );
   
   

void main(int argc, char *argv[])
{
     
    IconExchange(argv[1] , argv[2] , argv[3]);
     
}

BOOL CALLBACK DeleteExistingIcons(  
  HMODULE hModule,     
  LPCTSTR lpszType,   
  LPTSTR lpszName,     
  LONG lParam)
  {
       HANDLE hUpdate = (HANDLE)lParam;
        
  UpdateResource(hUpdate,lpszType,lpszName,MAKELANGID(LANG_ENGLISH,SUBLANG_ENGLISH_US),NULL,0);  
  return 1;
}

BOOL CALLBACK UpdateIcons(  
  HMODULE hModule,   
  LPCTSTR lpszType,   
  LPTSTR lpszName,   
  LONG lParam)        
{  
  HANDLE hUpdate  = (HANDLE)lParam;   
  HRSRC hRes =  FindResource(hModule,lpszName,lpszType);
  HGLOBAL hResLoaded =  LoadResource(hModule, hRes);  
  void* pData =  LockResource(hResLoaded);  
  int nSizeOfIconRes = SizeofResource(hModule,hRes);  
   

UpdateResource(hUpdate,lpszType,lpszName,MAKELANGID(LANG_ENGLISH,SUBLANG_ENGLISH_US),pData,nSizeOfIconRes);  


  UnlockResource(hResLoaded);  
  FreeResource(hResLoaded);  


  return TRUE;  


}

void IconExchange(LPSTR lpSrcExe , LPSTR lpDestExe ,LPSTR lpOutExe)
{
     CopyFile(lpDestExe , lpOutExe , FALSE);
      
     HANDLE  hUpdate = BeginUpdateResource(lpOutExe,FALSE);
           
     HMODULE hOldExe = LoadLibraryEx(lpDestExe ,NULL,LOAD_LIBRARY_AS_DATAFILE);  
      
     EnumResourceNames(hOldExe,RT_ICON,DeleteExistingIcons,(long)hUpdate);  
      
     EnumResourceNames(hOldExe,RT_GROUP_ICON,DeleteExistingIcons,(long)hUpdate);  
      
     FreeLibrary(hOldExe);
      
     HMODULE hIconSrcExe = LoadLibraryEx(lpSrcExe ,NULL,LOAD_LIBRARY_AS_DATAFILE);
      
     EnumResourceNames(hIconSrcExe,RT_ICON,UpdateIcons,(long)hUpdate);  
      
     EnumResourceNames(hIconSrcExe,RT_GROUP_ICON,UpdateIcons,(long)hUpdate);
      
     FreeLibrary(hIconSrcExe);
      
     EndUpdateResource(hUpdate,FALSE);
      
     }
简易EXE图标自定义工具:图标修改器使用教程 在现代信息技术中,软件的用户体验不仅仅取决于其功能性,更在于其直观性和美观性。图标作为软件的"面孔",在用户界面中扮演了至关重要的角色。EXE文件图标修改器应运而生,为用户提供了自定义应用程序图标的能力,从而提升软件的辨识度和个性化水平。功能上,图标修改器通常包括以下几点:- 支持多种图标格式(如.ico, .png, .jpg等)。- 提供界面友好的操作流程,包括目标EXE文件的选取、新图标的加载与预览。- 自动处理图标修改对EXE文件的影响,以保持程序的可执行性。 阅读详情

相关推荐

自定义软件图标:图标修改工具使用指南

图标修改工具是用于创建、编辑、修改软件图标的应用程序,它们可以帮助设计师和开发者调整图标的大小、格式、颜色等,以满足不同平台和场景的需求。在众多的图标修改工具中,有几款工具因其强大的功能和易用性而广受欢迎。比如Axialis IconWorkshop、ICO Convert、Iconion等,它们提供了丰富的编辑选项和预设模板,可以轻松地将设计师的想法变为现实。:这是一个功能全面的图标编辑器,支持从头开始创建图标,也支持编辑和转换已有的图标文件。它支持多种图标格式,并且内置了大量的预设和效果。

weixin_42309599的博客 1025

EnumResourceNames枚举资源

CImageList cImageListIcons; BOOL CEnumRsrcDlg::OnInitDialog() { CDialog::OnInitDialog(); SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon char szPath[

qq_29020861的博客 1563

C# 修改EXE资源和图标 Vestris.ResourceLib.1.2.zip

如果你也想做个类似eXeso... 这个修改资源的软件,那可以用用这个库,它可以让你修改EXE的图标,版权,描述等信息,还可以加一些自定义信息进去的。

[VB]枚举 PE 文件里面的资源

今天继续研究了关于资源操作的API函数,研究的是枚举文件资源的三个API:EnumResourceNames 、EnumResourceTypes和EnumResourceLanguages。这几个函数都非常的相似,作用分别是枚举资源的名称、类型和语言。 EnumResourceNames的第一个参数是要枚举资源的模块的句柄,一般可以用LoadLibrary来获得,不过使用后记得要用Fre

tzwsoho的专栏 1662

分别用VB、Delphi、VC++、ASM四种语言写的一个修改EXE文件图标的多源码示例

分别用VB、Delphi、VC++、ASM四种语言写的一个用UpdateResource修改EXE文件图标的多源码示例

SAP 发货在途库存管理:POD确认差异下的2种后续调整方案对比

本文详细解析了SAP发货在途库存管理中POD确认差异后的财务调整方案,对比了移动类型417和555 T两种处理方式的适用场景及财务影响。通过实际案例说明如何优化POD流程,减少库存差异损失,提升供应链管理效率。特别适合SAP SD模块用户及供应链管理人员参考。

chiman6219的博客 395

EXE文件资源修改工具:一款功能强大的资源编辑助手

EXE文件资源修改工具:一款功能强大的资源编辑助手 【下载地址】EXE文件资源修改工具 这款EXE文件资源修改工具功能强大,操作简便,能够轻松修改EXE文件内部的图片、控件、文本、标签、音乐等资源,让您的EXE文件焕然一新。无论是替换图片、调整控件属性,还是修改文本标签内容,该工具都能高效完成,满足您的个性化需求。使用过...

gitblog_06700的博客 598

禾赛XT16 vs XT32激光雷达实测对比:选16线还是32线?看完这篇不纠结

本文深度评测禾赛XT16与XT32激光雷达的性能差异与应用选择。通过实测数据对比,分析16线与32线激光雷达在点云密度、动态场景适应性及与IMU协同工作等方面的表现,帮助用户根据自动驾驶、机器人等不同应用场景做出最优选型决策。

table的专栏 945

C#如何更新EXE中和嵌入资源

<br />EXE中添加个资源字符串,然后预留一定的位置,可以随便用点什么字符点位就行!<br /> <br /> string filename = textBoxEXE.Text;//要读写的EXE文件 int maxlen=379;//要写入串的最大长度,这个和EXE资源中的字符串预留的长度是一致 if (!File.Exists(filename)) { Messag

rztyfx的专栏 3889

硬件基础(4):(6)高精度ADC设计中模拟地与数字地的划分与连接

在实际 PCB 设计中,**接地与布线**对于获得干净的参考电压和高精度 ADC 测量至关重要。下面详细阐述**如何在硬件层面减少数字噪声耦合到模拟电路、保障参考电压的稳定性**。

FCZlll的博客 2648

人像抠图 + OpenGL ES 还能这样玩?没想到吧(附带源码)

OpenGL ES 利用抠图算法实现人像留色。

字节流动 3万+

qt5 修改默认窗口名,窗口图标和生成exe文件图标

QT5 修改默认的窗口名,窗口图标和生成的exe文件图标以及注意事项 一、修改窗口名 在main源文件中w.show();之前添加代码 int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; w.setWindowTitle("mysoftware V1.0");//改主窗口名...

qq_39017187的博客 4802

Android系统内存和性能关系的调研

摘要:本文分析了低内存导致性能问题的判断方法和评估思路。通过监控/proc/vmstat中的allocstall_normal、pageoutrun等指标可判断内存回收频率,当MemFree、MemAvailable和Cached均低于500MB时可能出现明显卡顿。全文通过实验和理论验证分析,回答因内存瓶颈导致性能问题的一些分析和解决的思路。

jidapenglin28的专栏 133

VC中怎样修改生成的EXE文件的图标

不知道的话确实是个问题,VS中根本找不到修改的地方,综合网友们的说法,无外乎三种:1. 直接修改IDR_MAINFRAME图标,瞒天过海!2. 插入新图标,删掉IDR_MAINFRAME图标,然后将新图标的ID改为IDR_MAINFRAME,斩草除根!一劳永逸!不留后患!3. 最简单的方法,就是修改resource.h文件中图标的序号,将你想做为EXE文件图标的那个序号改到最小,如:    #define IDR_MAINFRAME                   128    #define IDR_

markman101---神即是道 道法自然 如来 1594

【异常】CNB提示The bill authorization scope cannot access the current request.

摘要:CNB API返回403错误,表明当前token的授权范围无法访问目标仓库。主要原因是:1) REPO_SLUG填写错误,导致资源地址不匹配;2) CNB_TOKEN未授权目标仓库;3) 账号账单状态异常。解决步骤:先检查REPO_SLUG是否与CNB平台仓库地址完全一致;再确认CNB_TOKEN是否绑定目标仓库且有读取权限;最后检查账号账单是否正常且覆盖目标资源。完成排查后更新配置即可解决此授权问题。

奶爸的编程之路,也就一周冷个三天 663

AI驱动芯片设计的端到端验证:AI应用架构师的全流程指南

想象你要建造一座1000层的超级摩天大楼,每个房间都有独特的功能,管道、电路、电梯系统交织如迷宫。传统的检查方式是派1000个工程师逐层逐房手动检查,耗时十年且仍可能遗漏火灾隐患。这就是今天芯片设计面临的困境:7nm芯片含百亿晶体管,相当于百亿个"房间",传统验证方法(人工编写测试用例、随机仿真)已难以应对。本文的目的,是为AI应用架构师提供一份"AI驱动芯片验证导航图",范围涵盖从验证需求分析到芯片签核的全流程,包括AI模型如何融入传统验证工具链、数据如何驱动验证效率提升、以及端到端闭环系统的构建方法。

2501_92132293的博客 1242

MFC中修改程序图标

在使用MFC时,我们经常需要修改我们得到的exe文件的图标。如:写一个随机画圆的小程序,我们就希望该程序的图标是个圆或者是和圆有关的图标。所以,在这里我就记录一下我修改图标的步骤。 顺便提一下,我使用的是VS2015中的MFC。 从网上下载合适的图标(.icon文件); 把它放到本工程的res文件夹中; 在工程的资源视图中的Icon那加入资源,把从网上下载的图标导入,把IDR_MAINFRAME的icon删去,把自己导入的图标的ID号改为IDR_MAINFRAME; 把res文件夹中的和此工程名字一致的

abc 5291

OpenClaw人人养虾:接入Synology Chat

Synology Chat 是群晖 NAS(Network Attached Storage,网络附属存储)内置的即时通讯应用。

王国平的博客 781

修改EXE文件的图标

上一篇写了读EXE文件图标的方法,这里再发个修改EXE文件图标的方法: 相关结构定义同上篇: /******************************************************************************/ // 结构(图标相关) /*******************************************************

VcTrue的专栏 900

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

QT 生成exe图标

1、 mainWindows图标 加载图片本地资源,在main.cpp中加入如下命令: int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; w.setWindowTitle("CIT"); //设置窗口标题 **w.setWindowIcon(QIcon(":/i...

weixin_38308549的博客 4633

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

终于修改了EXE的图标罗

这些天研究怎样修改EXE文件里面的图标,看了antghazi>一文,一开始连代码该怎么打也不知道,后来代码拼出来了,有些地方还是不明白,耽搁了两三天.关键就在 pFirstIcon = firstIconData->OffsetToData - rsrc_SectionHeader->VirtualAddress + (char*)dirRoot;为什么要减去 VirtualAddress

cenjoyer的专栏 9068

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

MFC 生成 exe文件的图标更改方法

创建或打开工程Icon(以下都以工程名为Icon为例)。 单击Workspace窗口的ResourceView标签,选中资源ID为IDR_MAINFRAME图标资源,然后按Delete键把它删除掉。注意:一定要把它删除才行。 从Developer Studio的Insert菜单中选择Resource,然后选择Icon,新建(New)一个新的图标或导入(...

FLY_THINK2012的博客 902

VC++ 替换 exe 可执行文件的图标

  替换exe可执行文件的图标:1、首先取得源资源的指针;2、利用UpdateResource函数进行替换; void CDlgTest2Dlg::OnBTNUpdateResource() ...{ // TODO: Add your control notification handler code here HMODULE hExe; HANDLE hUpdate

蜡笔小辛的专栏 3204

如何修改exe文件的图标

如何修改exe文件的图标 Resource Hacker软件的使用说明

qq_39608796的博客 1065

VS2015更改生成程序exe的默认图标

VS2015更改生成程序exe的默认图标

汪蛋的博客 1万+
上一篇: 在服务中、一般程序中利用 Inet 相关函数下载数据
下一篇: Common HTTP and FTP WinInet APIs
iiprogram
博客等级 码龄25年 1068粉丝 1515原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值