使用 Python 从 DLL 中提取程序集版本

发布于 2024-11-17 12:57:25 字数 610 浏览 4 评论 0原文

我正在尝试使用 python 从 DLL 中提取一些版本信息。我读过这个问题: Python windows 文件版本属性

这很有帮助,但我还需要获取“程序集” DLL 中的“版本”。当我右键单击并查看版本选项卡时,它就在那里,但不确定如何使用 python 提取它。

在此页面上: http://timgolden.me.uk/python/win32_how_do_i/get_dll_version.html

蒂姆·戈尔登 说:

你可以使用稍微凌乱一点的 演示中与语言相关的代码 pywin32 附带来查找 字符串位于其下方的框中。

有人可以指出我可能有用的示例吗?我查看了 win32api 目录,但没有任何明显的东西。我能在那里找到解决方案吗?

I'm trying to extract some version information from a DLL using python. I read this question:
Python windows File Version attribute

It was helpful, but I also need to get the 'Assembly version' from the DLL. It's there when I right click and look on the versions tab, but not sure how I extract this with python.

On this page:
http://timgolden.me.uk/python/win32_how_do_i/get_dll_version.html

Tim Golden says:

You can use the slightly more messy
language-dependent code in the demos
which come with pywin32 to find the
strings in the box beneath it.

Can someone point me to the example that might be useful? I looked in the win32api directories but there's nothing obvious. Would I find a solution there?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

从﹋此江山别 2024-11-24 12:57:25

如果您不想引入对 Python.Net 的依赖,也可以直接使用 win32 api:

from win32api import GetFileVersionInfo, LOWORD, HIWORD

def get_version_number (filename):
   info = GetFileVersionInfo (filename, "\\")
   ms = info['FileVersionMS']
   ls = info['FileVersionLS']
   return HIWORD (ms), LOWORD (ms), HIWORD (ls), LOWORD (ls)

来源: http://timgolden.me.uk/python/win32_how_do_i/get_dll_version.html

If you would rather not introduce a dependency on Python.Net, you can also use the win32 api directly:

from win32api import GetFileVersionInfo, LOWORD, HIWORD

def get_version_number (filename):
   info = GetFileVersionInfo (filename, "\\")
   ms = info['FileVersionMS']
   ls = info['FileVersionLS']
   return HIWORD (ms), LOWORD (ms), HIWORD (ls), LOWORD (ls)

Source: http://timgolden.me.uk/python/win32_how_do_i/get_dll_version.html

千纸鹤带着心事 2024-11-24 12:57:25

我不确定您是否可以使用本机代码获取此信息。获取程序集信息的常用方法是运行.Net 代码(例如C#)。所以我猜测为了能够从 python 中执行相同的操作,您需要运行一些 .Net python 解释器。请参阅示例 http://pythonnet.github.io/

I'm not sure you can get at this information by using native code. The usual way of obtaining the assembly info is by running .Net code (e.g. C#). So I'm guessing in order to be able to do the same from python you'll need to run some .Net python interpreter. See for example http://pythonnet.github.io/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文