【问题标题】:Perl: Get minimum supported operating system for a binaryPerl:获取二进制文件的最低支持操作系统
【发布时间】:2011-11-02 16:54:38
【问题描述】:

是否有一个 Perl 命令可以让我获得任何给定二进制文件的最低支持操作系统?

您可以通过运行“link /dump /headers [binaryFile]”并查找“子系统版本”链接来手动获取该信息。我不想使用它,因为它的性能非常糟糕。

谢谢

【问题讨论】:

  • 呃,既然 Perl 是一种解释型语言,那么“Perl 中的二进制文件”是什么意思?您的意思是通过 PAR::Packer (search.cpan.org/~rschupp/PAR-Packer-1.010/lib/PAR/Packer.pm) 之类的方式与解释器打包在一起的 Perl 程序吗?
  • 感谢您的反馈。问题已更新

标签: windows perl version portable-executable subsystem


【解决方案1】:

如果您在 Windows 上需要此功能,请使用 Win32::Exe 中的 get_manifest。您需要先安装它。

【讨论】:

【解决方案2】:

如果有一个命令可以得到你想要的,为什么不直接运行那个命令呢?

您可以在 Perl 中使用backticks or qx// 来获取命令的输出

例如:

my $output = `command arg1 arg2 ...`;

或者,如果你想要一个行数组:

my @lines = `command arg1 arg2 ...`;

然后您可以使用 Perl 的常规工具来扫描您感兴趣的模式的输出。

另外,您的命令看起来像是针对 Windows 的 - 是这样吗?如果是这样,您应该添加一个 Windows 标记。

【讨论】:

  • 我尝试了链接命令,但性能真的很差,这就是为什么我正在寻找替代方法
猜你喜欢
  • 1970-01-01
  • 2020-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-20
  • 2018-07-02
  • 1970-01-01
相关资源
最近更新 更多