首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

AssemblyInfo属性如何映射到Win32 VERSIONINFO?

在软件开发中,AssemblyInfo 属性通常用于存储程序集元数据,例如版本号、文件版本号、商标、产品名称等。而 Win32 VERSIONINFO 则是一种资源文件,用于存储应用程序或 DLL 的版本信息、私有资源、产品版本等。

AssemblyInfo 属性可以通过以下方式映射到 Win32 VERSIONINFO:

  1. 在程序集的 AssemblyInfo.cs 文件中,可以定义以下属性:
代码语言:csharp
复制
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("My Product")]
[assembly: AssemblyCopyright("Copyright © 2021")]
[assembly: AssemblyTrademark("My Trademark")]
  1. 使用 Windows 资源文件编辑器(如 Resource Hacker)打开应用程序的资源文件(如 MyApp.rc),并在其中添加以下代码:
代码语言:csharp
复制
1 VERSIONINFO
FILEVERSION 1,0,0,0
PRODUCTVERSION 1,0,0,0
FILEFLAGSMASK 0x3fL
FILEOS 0x40004L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
    BLOCK "StringFileInfo"
    BEGIN
        BLOCK "040904B0"
        BEGIN
            VALUE "FileDescription", "My Product"
            VALUE "FileVersion", "1.0.0.0"
            VALUE "InternalName", "My Product"
            VALUE "LegalCopyright", "(C) 2021"
            VALUE "OriginalFilename", "MyApp.EXE"
            VALUE "ProductName", "My Product"
            VALUE "ProductVersion", "1.0.0.0"
        END
    END
    BLOCK "VarFileInfo"
    BEGIN
        VALUE "Translation", 0x0804 0x04b0
    END
END
  1. 使用 Windows 资源编译器(如 windres)将资源文件编译为目标程序集的资源文件。

通过以上步骤,可以将 AssemblyInfo 属性映射到 Win32 VERSIONINFO,从而在应用程序中同时使用这两种方式来存储版本信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

dotnet 如何更改应用在任务管理器显示的进程名 AssemblyTitle 的值

本文来告诉大家如何更改 AssemblyTitle 的值 在旧版本的 Franken-proj 格式的 csproj 格式里面,在项目都有一个 Properties\AssemblyInfo.cs 文件...在更新到新的 VS 2017 的 SDK Style 的 csproj 格式,默认没有给 Properties\AssemblyInfo.cs 文件,如果此时大家自己创建一个 Properties\AssemblyInfo.cs...如果想要加上 Properties\AssemblyInfo.cs 文件,就需要在 csproj 上设置不要自动生成 AssemblyInfo.cs 文件 <GenerateAssemblyInfo...,可以在输出的程序集右击属性,在文件属性详细里面看到文件说明就是对应这个属性的内容 这是一个用来给人类友好的属性,因此可以使用空格和中文等 那么这个值最终会放入到输出的 PE 格式的 exe 文件的哪里...其实是放在 Win32 的 Resource 里面 通过 FileAlyzer 工具的辅助,可以在 Reousrce 里面找到 FileDescription 属性 ?

2.3K20

.NET SDK-Style 项目(Core、Standard、.NET5)中的版本号

.NET SDK-Style 项目(Core、Standard、.NET5)中的版本号 独立观察员 2020 年 12 月 24 日 之前 .NET Framework 时,项目版本号等信息是存储在 AssemblyInfo.cs...文件中,通过程序集特性进行设置: .NET Core 之后,.NET 项目采用了新式的 SDK-Style 模式,将这些版本信息之类的也包含在项目文件里了,默认不再生成和使用 AssemblyInfo.cs...虽然也有方法来恢复以前使用 AssemblyInfo.cs 的方式,但正所谓入乡随俗,既然人家改了模式,还是按规范来吧。...图形操作上和以前差不多,在 属性 - 打包 中有 “包版本”、“程序集版本” 和 “程序集文件版本”: 编辑后就会在项目文件中出现,项目文件可通过在项目上右键 - 编辑项目文件 打开(此操作也是 SDK-Style...AssemblyInformationalVersionAttribute)attributes[0]).InformationalVersion; } } /// /// Win32

43110

Redis源码在windows下的成功编译(附cmake工程配置)

如何高效读源码 分享下网友总结的高效的方法,在此表示感谢!文末有原文链接。 阅读源码的经验心得,总结一下这 7 个步骤。...4、找到核心主线: 找到整个项目中最核心的主线逻辑,以此为目标,了解各模块为了完成这个功能,是如何协作和组织的。...(比如linux下的fork进程(备份机制在fork进程执行),在windows下是使用win32的api进行模拟) 因此cmake的源码包含路径里,需把几个linux下才能用到的文件排除掉。...luac.c) 还有_off_t重定义问题,因为微软团队发现redis在Posix体系下,off_t被定义成64位,而在windows下被sys\types.h文件定义成32位,所以windows团队就在工程属性里定义了...{MY_VERSIONINFO_RC}) #add_executable(${PROJECT_NAME} WIN32 ${SRC_FILES}) add_executable(${PROJECT_NAME

1.8K30

如何合理的在项目中运用Redis

对于访问缓存和数据库都不存在的数据,如何应对这种恶意的频繁请求? 01 — 如何使用缓存 一:缓存热点数据 我们首先来看一下第一个问题:什么数据放到Redis中比较合适?...("user", "versionInfo")); versionVO = redisCache.getHash("user", "versionInfo");...} else { logger.info("赋值:user-versionInfo"); versionVO = userService.versionInfo...同时也是对第三个问题的解答:对于访问缓存和数据库都不存在的数据,如何应对这种恶意的频繁请求?...2.布隆过滤器拦截 简单来讲就是使用多个hash函数将一个key映射到一个很长的二进制向量的多个比特位中,类似于hash set。 存在问题:维护复杂,建议只在海量数据的情况下使用。

40410

Python - mmap 共享内存

简介 共享内存 内存共享是两个不同的进程共享内存的意思:同一块物理内存被映射到两个进程的各自的进程地址空间。这个物理内存已经被规定了大小(大小一定要比实际写入的东东大)以及名称。...mmap mmap是一种虚拟内存映射文件的方法,即将一个文件或者其它对象映射到进程的地址空间,实现文件磁盘地址和进程虚拟地址空间中一段虚拟地址的一一对关系。...np # 创建内存映射文件句柄 fd = os.open('tmp/mmaptest', os.O_CREAT | os.O_TRUNC | os.O_RDWR) # 建立内存缓冲区 # not win32...numpy as nps # 创建内存映射文件句柄 fd = os.open('share_memory/tmp/mmaptest', os.O_RDONLY) # 建立内存缓冲区 # not win32...buf = mmap.mmap(fd, mmap.PAGESIZE, mmap.MAP_SHARED, mmap.PROT_READ) # win32 buf = mmap.mmap(fd, 67108864

1.7K30

IIncrementalGenerator 增量 Source Generator 生成代码入门 判断程序集之间的 InternalsVisibleTo 关系

本文告诉大家如何在使用 IIncrementalGenerator 进行增量的 Source Generator 生成代码时,如何判断两个程序集之间是否存在 InternalsVisibleTo 关系...在 Lib2 里面添加一个 AssemblyInfo.cs 文件,在 AssemblyInfo.cs 文件里面记录 InternalsVisibleTo 给到 App 程序集,如以下代码。...netstandard2.0 是为了同时让 VisualStudio 和 dotnet 开森 详细关于以上 csproj 项目文件代码里的 EnforceExtendedAnalyzerRules 的属性...,请参阅 Roslyn 分析器 EnforceExtendedAnalyzerRules 属性的作用 以上的 LangVersion 属性设置为 latest 表示使用最新的语言版本,详细请参阅 VisualStudio...compilation, token) => { ... // 忽略代码 }); } } 通过 compilation 的 SourceModule 属性

20820

客2020年报:转型的主动与被动

另外,客在盈利方面也有不错的表现。财报显示,客2020全年的利润为2亿元,较去年同期大幅增长了285%,并且实现了连续6年的盈利。 同样,在用户层面客的成长也可圈可点。...财报显示,截至2020年12月31日,客产品应用的月活用户达到3647万,同比2019年的2981万增长22%。这主要是因为在过去的一年中,客不断加强自身的产品属性,用以增强用户粘性。...被迫转型的客 其实客早在2018年就开始为转型做起了准备,在2019年收购社交APP积目则可以视为客转型的正式开始,2020年也可以看作是成果的检验期。...玩转泛娱乐,客路还长 但是对于客来说,尽管发力社交并不是一马平川的大道,也必须要继续发展下去,因为社交对于客来说,是构建自身泛娱乐生态的关键一步。...随着消费者需求的日益精细化,对于娱乐和社交同样也提出了更高的需求,如何精准把握用户的真实所想,成了客长期需要重视的问题。但是这也需要长期的投入,对技术、人力、财力都是一项长期的考验。

37370

在直播市场证明自己后,客做“新娱乐”是一步好棋吗?

客相关负责人对媒体表示,5.0大改版是客从直播向“新娱乐”战略转型的开始。那么,客下一步的战略“新娱乐”究竟要做什么? ?...客过去所有的动作包括产品的功能都是围绕直播进行,这一次改版表明了客“轻直播,重映客”发展思路,这似乎意味着高逼格的客要迎来新的蝶变。...客上的内容创作者有很强的娱乐内容生产能力,模特、舞蹈、嘻哈、游戏等重点频道的属性都非常娱乐。...客的“新娱乐”战略与阿里、腾讯的有所不同,客是基于直播向娱乐延伸拓展,更专注于视频形态和娱乐方式以及娱乐内容的创造。所以,客新娱乐战略是有很大的野心的,关键还是要看如何落地。...客会如何落地新娱乐战略?

86070

『互联网架构』软件架构-mybatis体系结构(16)

四种的对比 分类| 优点| 缺点 | :-: | :-: jdbc| 简单、纯粹| 1、需要手动关闭链接 2、结果集不能自动谢 jdbcTemplate| 简单、纯粹、自动会话管理、结果集谢| 1、...谢而非完整的ORM,需要自己编写sql 语句,这是其优点也是缺点。..."/> 三种设置方式: 1.构建sessionFactory 时传递 (优先级:高) 2.基于resource 属性加载 或 url 加载 (优先级:中) 3.基于属性设置...pooled: 连接池模式,所有连接从连接池当中获取,由连接池来来进行连接的建立与回收关于等操作,除支持unpooled属性外还支持属性如下: • poolMaximumActiveConnections...• delete – 映射删除语句 • resultMap 用来描述如何从数据库结果集中来加载对象。 • cache – 给定命名空间的缓存配置。

1.6K21

世界杯刚过,百度引发“Grace效应”

Grace扮演这个超能小女神,无论在剧情的网民迎合度,还是Grace和女主角吴洁的人群匹配度都让传统电视剧们很“涨姿势”。 如何从大数据中来?...百度数据研究中心总监杨骏表示:“这个数据的飙升,醒目且值得关注,我们很有兴趣在百度数据生态中用机器学习和自然语言处理等算法,对Grace的网民物理属性以及用户行为进行挖掘。”...百度搜索风云榜上女主角吴洁的搜索关键词热度分布是一切诱因。网民关注吴洁“超能力”相关信息占比达到整体关注度的25%以上。...对比后,这一数据与吴洁也十分匹配。吴洁出演的《懒人美食日记》《陆贞传奇》等多部剧集都与美食相关,其健康丰润的脸庞让网友一直惊呼看着就十分有食欲。...未来“结果”与“窄门”将在数字世界中更加突出,不过,当导演看到大数据挖掘的各种窄门时,是否选择跨进,如何跨进,则是成功的关键环节。

71880

世界杯刚过,百度引发“Grace效应”

Grace扮演这个超能小女神,无论在剧情的网民迎合度,还是Grace和女主角吴洁的人群匹配度都让传统电视剧们很“涨姿势”。 如何从大数据中来?...百度数据研究中心总监杨骏表示:“这个数据的飙升,醒目且值得关注,我们很有兴趣在百度数据生态中用机器学习和自然语言处理等算法,对Grace的网民物理属性以及用户行为进行挖掘。”...百度搜索风云榜上女主角吴洁的搜索关键词热度分布是一切诱因。网民关注吴洁“超能力”相关信息占比达到整体关注度的25%以上。...对比后,这一数据与吴洁也十分匹配。吴洁出演的《懒人美食日记》《陆贞传奇》等多部剧集都与美食相关,其健康丰润的脸庞让网友一直惊呼看着就十分有食欲。...未来“结果”与“窄门”将在数字世界中更加突出,不过,当导演看到大数据挖掘的各种窄门时,是否选择跨进,如何跨进,则是成功的关键环节。

66740

桌面程序用什么语言开发好

image.png Language - en-US (英文) image.png Language - zh-CN (中文) 一、使用LocBaml工具 这是微软MSDN给出的一种解决方案,请参见如何...设置默认语言环境 项目文件LocalizationDemo.csproj添加en-US,程序集文件AssemblyInfo.cs中把[assembly: NeutralResourcesLanguage...,Header(None Readable Modifiable)设置Header属性可读可写需要实现本地化,更多本地化特性细节请参见本地化特性和注释。...它显示为一种示例,该示例使用某些本地化 API 并演示如何编写本地化工具。点击下载LocBaml)复制到应用程序的 bin\debug 文件夹,即创建主应用程序集的位置。..." Binding="{Binding No}"/> 附:实现MessageBox支持多语言 另外,和其他元素不同的是,MessageBox的确定(OK),是(Yes),否(NO)等按钮是直接调用系统Win32

1.8K20
领券