windows编程笔记【五】vs2017资源文件(*rc)添加资源,修改图标

VS资源管理器添加自定义类型的资源文件,且读取资源文件到内存中 需求描述:    借助一个打包工具,指定源文件 和 目标文件路径,用生成事件的方式,每次在VS编译之前执行,生成资源文件包resourse.g2xp(包含了项目中的所有.png图片和xml等资源文件)。    将资源文件包resourse.g2xp加载到项目中,读取文件数据到内存,方便程序在运行中加载包中的图片等资源。具体方法:一、预生成事件项目 —> 配置属性 —>生成事件 —&gt... 阅读详情
AI摘要

本文介绍如何在Visual Studio 2017中添加并加载图标资源,包括创建stringtable、添加图标文件及在代码中调用相关API的过程。

本笔记源自windows游戏编程大师技巧第二版3.0章之后若干,记做学习随笔。

使用vs2017环境编译。

由于这本书使用的编译环境太过久远,这里添加资源方式是自己摸索的,适用于vs2017。

 首先在资源文件新建一个string table

资源文件为我们默认生成了一个*.rc文件,我们刚刚为他添加了一个string table,这是个表,帮助我们管理资源。

然后来添加一个图标吧!

添加完毕后,我们打开String Table里:

lcon是我们的图标文件,那是他的临时名字,值就是他的资源编号。

resource.h是自动帮我们生成的头文件,我们发现这里也宏定义了。

之后资源部分就设置好了,我们来修改图标。

使用上个笔记的代码接着来。

winclass.hIcon = LoadIcon(hinstance, MAKEINTRESOURCE(IDI_ICON1));	//装置一个标准程序应用图标
winclass.hIconSm = LoadIcon(hinstance, MAKEINTRESOURCE(IDI_ICON1)); //他是程序的小图标,用途在任务栏和标题栏实现的图标。

//使用 MAKEINTRESOURCE()函数输入宏即可

 值得注意的是,LoadIcon(hinstance, MAKEINTRESOURCE(IDI_ICON1);函数里第一个参数不再是之前笔记的NULL,而是这个句柄。

效果如下

EXE图标设置全攻略:从原理到实践,解决图标不显示问题 在Windows桌面应用开发中,可执行文件(EXE)的图标设置是一个基础但关键的工程环节。其核心原理在于图标资源是嵌入在PE文件资源段中的特殊数据,Windows资源管理器通过读取这些资源来显示文件图标。理解这一机制的技术价值在于,它能确保应用在文件系统、任务栏和快捷方式中拥有统一的专业标识,提升用户体验和软件品牌形象。在实际开发中,开发者常遇到图标不显示或打包后失效等问题,这通常源于图标文件格式不规范、资源引用错误或构建流程配置不当。本文聚焦于EXE图标设置这一主题,系统梳理了从C++/C#原生开发到Py 阅读详情

相关推荐

Windows api资源篇

WIndows的资源有: Icons Cursors Character strings Custom resources Menus Keyboard accelerators Dialog boxes Bitmaps

lin810921141的专栏 2028

VS下程序的二进制资源文件添加与释放到指定文件夹

VS下程序的二进制资源文件添加与释放到指定文件夹

a1371192766的博客 2143

MFC控件图标不显示?深入解析资源加载机制与解决方案

在Windows桌面应用开发中,资源(如图标、位图)的加载与管理是基础且关键的技术环节。其核心原理在于,应用程序通过模块实例句柄(HINSTANCE)定位并访问编译在可执行文件或动态库中的资源数据。当资源句柄指向错误的模块时,就会导致加载失败,这是许多UI显示异常问题的根源。理解并正确控制资源加载的上下文,对于构建稳定、界面一致的应用程序具有重要价值,尤其在涉及多模块协作或使用封装控件库(如MFC)的场景中。本文将以一个典型的MFC `CMFCEditBrowseCtrl` 控件图标不显示的问题为切入点,通

dezhen7015的博客 433

Qt编程基础 | 第九章-资源管理 | 9.1、导入qrc资源文件

新建VS项目的时候,系统会自动建好一个与项目本身同名的“*.qrc文件”。可以直接双击打开,利用**“Add Prefix”“Add Files”**添加资源文件。在开发大型项目时候,需要为不同系列的资源添加不同的前缀来加以区分,比如文件类资源可以添上前缀“\File”,编辑类资源可以添上前缀“\Edit”,设置完毕后点击左上角保存按钮即可。注意:添加完资源文件,一定要记得保存,不然添加的资源文件无效如果创建的是一个空白的Qt项目,此时系统不会自动创建资源文件,可以手动创建一个资源文件。

个人技术博客 2259

C++从工程的rc资源中将资源文件取出来或读出来(附源码)

从VC++工程的rc资源中将zip、xml、png等资源文件读取出来

dvlinker的技术专栏 1万+

VS2017生日烟花动画小工具:改名字就能放烟花,自带音乐和图标

一个开箱即用的Windows生日祝福小程序,用Visual Studio 2017编写,基于EasyX图形库实现流畅的粒子烟花动画效果。运行在Win10 x64系统上,启动后自动播放背景音乐(支持MP3/WAV格式),音乐文件可直接替换;祝福语中的姓名通过修改main.cpp里的字符串变量即可更换,改完保存就能生效,无需重新编译逻辑代码。程序带完整VS工程结构,包含.sln解决方案、.vcxproj项目文件、ICO图标、RC资源脚本、调试配置(Debug/x64)以及EasyX必需的头文件和库文件(easy

i8j9k0l1的博客 167

在vs&qt中使用资源文件

在vs环境下用qt进行开发时,常常需要用到各种资源,如图表、样式表等。在这种情况下,使用资源文件是最恰当的选择,使用资源文件可以将资源编译到.exe文件中,即使脱离编译器独立运行也可以达到应有的效果;倘若不采用资源文件的形式使用这些资源,那么在脱离编译器的情况下,这些资源文件不能正常显示。这篇博客会详细描述在vs中使用资源文件的方法和步骤。 第一步:使用vs新建qt application项目,

当凌绝顶,俯瞰天下 6786

MFC Windows程序设计源码解析:从VS2017环境搭建到核心架构剖析

Windows桌面开发的核心基础之一是理解消息机制与图形界面编程原理。MFC(微软基础类库)作为经典的C++框架,封装了Windows API,提供了文档/视图架构、消息映射等关键机制,是深入掌握Windows编程思想的重要途径。其技术价值在于通过清晰的架构分离数据管理与界面呈现,为工业控制软件、专业工具等遗留系统维护提供了稳定基础。在Visual Studio开发环境中,配置MFC项目常涉及平台工具集、字符集与运行库设置,而解决C4996安全函数警告、资源编译错误等常见问题,是确保老项目顺利运行的关键实践

weixin_28834765的博客 278

Windows 资源文件(.rc文件)

在windows下使用Qt时,通常会用到Windows的资源文件(给exe设置图标和版本信息等),比如命名为 main.rc #include "winver.h" IDI_ICON1 ICON "main.ico" IDI_ICON2 ICON "main2.ico" VS_VERSION_INFO VERSIONINFO FILEVERSION 1,0,0,0 PRODUCTVERSION 1,0,0,0 FILEFLAGS 0x

顺其自然~专栏 2万+

避开SAM3安装大坑:手把手教你用国内镜像和Modelscope权重快速跑通Demo

本文详细介绍了如何在国内环境下快速部署SAM3视觉大模型,包括使用国内镜像加速Python包安装、通过Modelscope获取权重文件以及解决CUDA 11.8等低版本适配问题。手把手教你避开常见安装陷阱,实现高效Demo运行。

weixin_30642561的博客 1407

FOC电机控制中电流采样延迟补偿的原理和方法

摘要: FOC电机控制中,电流采样、计算与PWM更新存在固有延迟(约1.5个PWM周期),导致相位滞后,限制电流环带宽。主流补偿方法包括: 一阶前向预测法:基于历史电流值预测未来电流,抵消延迟,工程应用广泛; 相位超前补偿:通过s/z域校正器设计实现等效预测; 状态观测器法(如龙伯格观测器):通过电机模型闭环估计状态,兼具噪声抑制和参数辨识能力,但复杂度高。实际需注意参数敏感性、离散化精度及延迟时间校准,避免过补偿风险。一阶预测法因平衡效果与复杂度成为工业首选。

jifengzhiling的博客 2233

使用RC文件为EXE设置图标及属性

RC文件内容: IDI_ICON1 ICON DISCARDABLE "1.ico" //设置程序图标 //1 24 uac.manifest //增加权限 //在VS编译器增加权限需要在pro文件中加入QMAKE_LFLAGS配置 //QMAKE_LFLAGS += /MANIFESTUAC:\"level=\'requireAdministrator\' u

有志者事竟成 5062

【拯救C盘】一文搞懂Windows修改Anaconda默认的虚拟环境存放路径及其原理

Anaconda创建的虚拟环境可能会默认保存在C盘,但C盘的存储空间很宝贵,由于每个虚拟环境的大小可能达到n个GB,稍不注意就会遇到C盘红色警告。因此有必要做点什么来拯救被虚拟环境占用的大部分空间!!!

Roach007的博客 3万+

Windows程序的资源

说明:本次博客的内容是有关windows程序资源的使用、创建方法,以及在编译过程中windows程序编译器的运作特点。且在 本人讲解完这些内容后完成一个改变了图标、鼠标光标样式、在程序窗口第一次被打开时播放一段话,在这段话之后开始循环播放一段音乐,直到窗口被关闭音乐停止。(这段说明完全是为了看博客的人事先了解内容,避免话费了不必要的时间看了不想看的内容) 废话不多说开始吧!! 本次我们使用的编程工具是VS2017 一.windows程序的资源有哪些 图标(.ico)、光标(.cur)、声音(.wav)、字符

as1312909882的博客 779

Ruoyi-Cloud-Plus新手必看:Gateway启动失败的两种解决方案(Nacos配置空间问题)

本文详细解析了Ruoyi-Cloud-Plus框架中Gateway启动失败的常见原因及解决方案,重点围绕Nacos配置空间问题展开。针对新手开发者,提供了两种实用方案:快速切换到public空间或规范创建dev空间并迁移配置,帮助开发者高效解决网关启动故障,确保微服务项目顺利运行。

weixin_30872499的博客 493

DA14531之如何Debug(在线调试、Jlink仿真、串口打印)

在线调试和串口打印调试。在线调试是Keil软件配合Jlink编译、烧录、仿真为一体的,其操作包括:运行、停止、打断点,单步运行等。而串口打印调试,只需打开相关配置,让arch_printf()函数正常输出串口数据。若想在初始化完成后打印arch_printf(“goto Loop\r\n”);波特率为115200,接收到串口消息goto Loop。连好线后,点击仿真按钮,在线Jlink调试。

hejinwu1314的博客 1792

通用GUI编程技术——Win32 原生编程实战(十三)——图标、光标、位图资源

Win32图标、光标与位图资源摘要 本文深入讲解Win32 GUI编程中的图形资源使用,重点包括: 图标资源: 不同尺寸图标用途(16x16任务栏、32x32快捷方式等) 程序图标与窗口图标的区别 资源文件定义方法(.rc文件中的ICON声明) 资源加载: LoadIcon加载标准尺寸图标 LoadImage通用加载函数,支持: 指定尺寸加载 从文件加载 加载图标/光标/位图 LR_SHARED标志的内存管理注意事项 窗口图标设置: 注册窗口类时设置hIcon和hIconSm 运行时通过WM_SETICON

charlie114514191的博客 381

【RH850/U2A】:HSM与APP通信(中断方式)

HSM与APP通信(中断方式)

1994

使用gcc编译Windows程序并使用资源文件

原文链接:http://blog.163.com/lixiangqiu_9202/blog/static/53575037201272211216317/ 一直灰常灰常喜欢使用vim+gcc组合,但是VS开发环境却又是那么的"先进"那么的人性化,VS让很多东西都变得简单起来,因为它集成了一整套的工具,但是就编辑功能而言与之vim相差甚远,舍不得vim于是进行相关配置后vim也可以变得很强大,

weaver2007的专栏 1978

软考中级-软件设计师 23种设计模式(最详细解析!!)

软考中级-软件设计师 23种设计模式

片言可决讼,半纸能缚龙 2万+

大模型风电功率预测:短期,超短期,中长期的完整实现与代码详解

本文全面介绍了基于深度学习大模型的风电功率预测方法,涵盖超短期(15分钟-1小时)、短期(1-6小时)和中长期(1天-1周)三种时间尺度。文章详细阐述了数据准备与特征工程,包括数据收集、预处理和可视化分析。针对不同时间尺度,分别介绍了Temporal Fusion Transformer (TFT)、Informer和N-BEATS模型的构建、训练与评估方法,并提供了完整的开源代码实现。此外,文章还探讨了模型部署与生产环境集成,包括模型保存与加载、实时预测API以及模型监控与再训练。最后,文章总结了关键创新

专注AI大模型,软件混淆,授权 1892

Windows SDK编程(Delphi版) 菜单资源.rc

转自 不得闲大佬笔记 博客园这两天又见到了语言的争论哈!这次是C#。我一般都不参与这种争论的,就算我蛋疼的不得了,我也不参与。因为这实在没啥意义可言,就像很多很多时候,在语言之争上,一次又一次的将Delphi推上风口浪尖,这个说Delphi不行,那个说Delphi气数已近。在我的博客的回复中也有不少这样的言论的。然而实际上呢,到目前为止Delphi的使用者还是相当的多,虽然不如以前那么如日中天,但是至少不会死掉。而我们作为一个程序员,停留在语言的一味的争论上,实在不是什么明智之举。不若,花点时间多了解一下

全粘工程师 528

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

【Windows】《深入浅出Windows API程序设计:编程基础篇》笔记-Chapter6-菜单和其他资源

通过自定义资源,可以在可执行文件中添加任何格式的数据,可以是二进制数据,也可以是一个磁盘文件。自定义资源的用途非常广泛,例如稍微复杂一点的程序除了有一个主程序,还有动态链接库文件。可以把.dll文件打包到可执行文件中,用户运行程序的时候把它们释放到本地;可以把病毒木马程序嵌入可执行文件中,用户运行程序的时候,释放出来并执行;程序运行过程中,可能需要一些数据,可以作为自定义资源嵌入可执行文件中,需要的时候随时加载,等等。

江湖人称菠萝包 274

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

VS2017安装实战指南:工业控制与遗留系统开发必备

Visual Studio 2017并非过时工具,而是面向Windows 7/8.1、.NET Framework 4.6.1–4.7.2及MSVC v141工具链的稳定开发环境。其核心价值在于对工控SDK、PLC通信库、医疗设备驱动等国产嵌入式生态的官方兼容性保障,尤其适配Windows 10 LTSC 2019、Server 2016等锁版系统。在老旧硬件调试、学校机房部署、国企内网维护等离线或受限场景中,VS2017凭借低系统依赖、高确定性表现成为不可替代的工程选择。本文聚焦真实产线级安装痛点,覆盖离

clt3617的博客 376

.rc文件类型

资源文件,对程序中大量的资源进行管理、如 图片、二进制。,。

m0_46104251的博客 457
上一篇: windows编程笔记【四】事件处理函数和主事件循环
下一篇: windows编程笔记【六】使用菜单和相应菜单事件
崔佳宇_
崔佳宇_ 优质创作者: 嵌入式与硬件开发技术领域 优质创作者: 嵌入式与硬件开发技术领域
博客等级 码龄10年 1万+粉丝 173原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值