網站首頁 編程語言 正文
Windows下vs中對DLL、exe文件添加屬性信息
- 1. 建立一個動態庫項目
- 2. 給DLL文件添加屬性信息
- 2.1 使用vs添加資源文件
- 2.1.1 添加版本屬性資源文件
- 2.1.2 修改、更新信息
- 2.2 自建rc文件及宏定義文件
- 2.2.1 新建一個version.h的頭文件(這個頭文件的名字可以是任意的)
- 2.2.2 新建rc文件,并添加到項目中
- 2.3 查看效果
一直以來發布的SDK或可執行文件,版本控制都是在內部函數實現,偶然發現居然可以通過右鍵屬性直接查看版本等信息,頓時覺得很不專業,慚愧慚愧。
這里主要針對動態庫DLL文件,exe文件也是一樣的。
1. 建立一個動態庫項目
這里用的是vs2015,直接使用模板創建項目即可
- 添加新項目
- 選擇動態庫DLL
- 創建完直接編譯即可,生成的DLL文件,屬性中可以看到,信息是空的
2. 給DLL文件添加屬性信息
這里有兩種方法:
- 使用vs新建資源文件rc,然后直接在vs資源視圖中修改屬性信息。
- 自己創建rc資源文件,手動寫入信息;(這里可以創建一個頭文件,用于存放宏定義信息)
推薦使用第二種方法
2.1 使用vs添加資源文件
2.1.1 添加版本屬性資源文件
【右鍵項目】——【添加】——【資源】——【Version】——【添加】
會生成文件"test_version.rc"
2.1.2 修改、更新信息
在vs中,打開rc文件,直接可以修改信息。
2.2 自建rc文件及宏定義文件
之所以說是自建rc文件,是因為vs添加的資源文件,查看代碼內容,不是很清晰,還不如在外部創建rc文件再添加進工程的好。
2.2.1 新建一個version.h的頭文件(這個頭文件的名字可以是任意的)
#pragma once
#define MAJOR_VERSION 1
#define MINOR_VERSION 1
#define REVISION_VERSION 0
2.2.2 新建rc文件,并添加到項目中
- 這里新建說的是在文件夾中右鍵,新建文本文件,改后綴名為.rc
- 【右鍵工程】——【添加】——【現有項】,選擇剛才新建的rc文件
- 【右鍵rc文件】——【查看代碼】
- 可以看到目前rc文件內容是空的,我們加入想要的信息
#include <windows.h>
#include "version.h"
VS_VERSION_INFO VERSIONINFO
FILEVERSION MAJOR_VERSION, MINOR_VERSION, REVISION_VERSION, 0
PRODUCTVERSION MAJOR_VERSION, MINOR_VERSION, REVISION_VERSION, 0
BEGIN
BLOCK"StringFileInfo"
BEGIN
BLOCK"040904E4"
BEGIN
VALUE"CompanyName", "xxx"
VALUE"FileDescription", "xxx sdk"
VALUE"FileVersion", MAJOR_VERSION, MINOR_VERSION, REVISION_VERSION, 0
VALUE"LegalCopyright", "Copyright 2020-2022 xxx"
VALUE"OriginalFilename", "xxx"
END
END
BLOCK"VarFileInfo"
BEGIN
VALUE"Translation", 0x409, 1252
END
END
2.3 查看效果
編譯完成后,右鍵DLL文件,即可看到。
原文鏈接:https://blog.csdn.net/ShareProgress/article/details/125042240
相關推薦
- 2024-03-01 微信小程序,uniapp觸底加載、自動請求接口合并數據
- 2022-11-12 CSS單標簽實現復雜的棋盤布局_經驗交流
- 2022-07-31 C++超詳細講解引用和指針_C 語言
- 2023-02-15 Python?PyWebIO提升團隊效率使用介紹_python
- 2022-07-07 Python中的列表條件求和方法_python
- 2022-12-14 React懶加載實現原理深入分析_React
- 2022-07-08 Python實現超快窗口截圖功能詳解_python
- 2022-12-31 一文初探Go語言中的reflect反射包_Golang
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支