问题标签 [versioninfo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1492 浏览

assemblies - 修改已构建的 .NET 程序集的版本信息

有没有更好的方法来修改我当前使用的.NET程序集的版本信息。

我目前的方法如下。

我确实用ildasm拆卸了组件:

这还将生成一个 Riolo.WebUI.res 编译的资源文件,然后我使用 Visual Studio 的用户界面打开并修改它,然后我使用ilasm重新组装程序集:

这个过程有各种各样的问题,主要是我感觉像用大炮射蚊子,然后因为我不知道如何用命令行将文件反编译.res.rc文件,我不能使用命令行脚本,因为我必须打开 Visual Studio 来修改.res文件,这意味着它非常耗时且容易出错,最后但并非最不重要的一点是,我确实觉得往返程序集很可能最终会丢失信息,即使是在不经意间,因此我担心我会在一些尚未预料到的情况下早晚被咬。

0 投票
1 回答
1822 浏览

.net - tlbimp.exe 可以生成具有自定义版本信息的互操作程序集吗?

Microsoft 类型库导入器工具( tlbimp.exe) 生成互操作程序集,但没有某些版本信息,即没有公司、没有版权、没有商标,并且版本号始终设置为 1.0.0.0。是否可以获得该工具来生成具有自定义版本信息的互操作程序集?

这与我在 SO 上提出的另一个问题松散相关:Modify the version info of a built .Net assembly

0 投票
1 回答
2783 浏览

windows - 设置 EXE 版本信息

我通过VerQueryValue收到的有关版本 Exe 文件的信息。是否有可以注册(建立或更改)此类信息的反函数(WinApi 或 Delphi)?例如,这里有一个程序可以做到这一点。它是如何工作的(http://www.angusj.com/resourcehacker)?

0 投票
5 回答
6360 浏览

delphi - Delphi XE2如何跨平台管理版本信息

我正在将项目从 XE 迁移到 XE2,我注意到我缺少手动输入的版本信息,例如公司名称、产品版本等。创建一个简单的空 VCL 表单应用程序我看到在“所有配置”下输入的版本信息数据- 当您随后选择“发布配置 - 32 位 Windows 平台”时,所有平台会消失。我想我可以通过平台重新输入我的信息,但这里发生了什么?人们会期望“所有配置 - 所有平台”信息在所有平台上传播,除非被覆盖,就像编译器选项等一样,或者我错过了什么?

进一步说明 - 当我进一步调查时,我发现有一个使用DDevExtensions的解决方法,它在“项目”下添加了一个菜单选项。如果您选中底部“应用到选定”和“将版本信息应用到所有平台”的框,那么您可以将显示的版本信息复制到所有平台,而不会影响您组中的其他项目。

0 投票
1 回答
511 浏览

winapi - 如何使用 x86 汇编程序制作包含资源和特定 VERSIONINFO 信息的 Win32 PE 可执行文件?

我将使用什么工具来创建包含特定资源(.rsrc 数据)和特定 VERSIONINFO 数据(例如“CompanyName”和“FileDescription”)的 Windows 95 和 NT 兼容可执行文件并组装 x86 代码?

FASM 会起作用吗?

编辑:感谢您的更正,Jens。问题已编辑。

0 投票
1 回答
375 浏览

c# - 使用 CodeDom 编译,但不包含“VERSIONINFO”Win32 资源

我正在使用 CodeDom 编译 C# 代码。即使没有指定资源,它仍然会编译一个名为“VERSIONINFO”的 Win32Resource。我知道我可以在编译后使用 BeginUpdateResource 将其删除,但这会在文件中留下“PADDINGXXPADDINGXX”,这是我不想要的。有没有办法在没有任何资源的情况下将 C# 代码编译为 .exe?

0 投票
5 回答
7256 浏览

c# - 空字符串是空引用吗?

为什么这段代码(在我的表单_Load()事件中):

...给我以下错误消息什么时候VersionInfo == ""是真的?

System.NullReferenceException 未处理消息=对象引用未设置为对象的实例。*

0 投票
1 回答
17344 浏览

powershell - Powershell get-item VersionInfo.ProductVersion 不正确/不同于 WMI

我试图理解为什么 Powershell 会为 DLL 文件返回与 Windows 资源管理器中的文件属性页面和 WMI 查询显示的不同的版本号。(如果这不能正确地作为编码问题,我提前道歉。)

场景:

运行以下 powershell 命令:

这将返回以下内容:

6.1.7600.16385

但是,此版本号不正确。从 Windows 资源管理器检查版本信息时,您会看到以下版本(抱歉,我尝试发布它的小屏幕截图,但我没有足够的代表;我是新来的):

6.1.7601.17767

此外,WMIC 查询显示与 Windows 资源管理器相同的结果:

WMIC 结果:

版本

6.1.7601.17767

我真的不明白为什么他们会有所不同。我真的很想使用 Powershell 返回这个值,但现在我不确定我是否只是忽略了某些东西,或者我是否遇到了某种奇怪的错误,但是这两种方法之间的版本不匹配令人困惑。需要注意的是,我已经在 Powershell 中运行了一些变体以将其取回(例如 Get-ItemChild 和 Get-ItemProperty),但我得到了相同的错误版本结果。

关于为什么的任何想法?

0 投票
1 回答
1350 浏览

visual-studio-2010 - 命令行为 rc.exe ms 资源编译器定义以在 VersionInfo 中设置版本值

我正在尝试配置我们的资源构建以在命令行上获取版本信息

rc.exe /DVERCSV=8,0,0,0 /DVERDOT="8.0.0.0"

我以为它开始工作,但似乎有一些小故障。

在资源管理器中查看时,我似乎遇到了损坏 - 在 ProductVersion 字符串中显示垃圾,但是打开 exe 或 res 文件会正确显示字符串值

但是,如果将值直接存储在 rc 中,或者在 visualstudio 资源编辑器中将其编辑为“相同”值(进行细微更改以保存)(编译为 .res 之后),则资源管理器能够显示所需的值

我已经尝试了很多其他的事情来解决

  • 缺少尾随空?
    • 值“ProductVersion”,VERDOT“\0”
    • \DVERDOT="8.0.0.0\0"
  • 命令
  • 其他翻译
  • 代码页的更改
  • #pragma code_page(1200)
  • 文件中的二级#define
  • 使用 #VERDOT 在字符串周围添加引号
  • 改为使用 CSV 值
0 投票
0 回答
340 浏览

windows - 何时设置 Windows VERSIONINFO PrivateBuild?

我应该什么时候在 Windows资源中设置PrivateBuild标志?Microsoft 文档说我需要在以下情况下使用它VERSIONINFO

“文件不是使用标准发布过程构建的。如果给出了这个值,则 StringFileInfo 块必须包含 PrivateBuild 字符串。”

例如,我发布了一个定制的 Python 版本,并进行了一些修改,但文件名仍然是python27.dll. 我应该将其标记为私有构建吗?