3

我是 powershell 脚本的新手。任何人都可以建议简单的方法来引用 powershell 中 C++ 头文件中定义的枚举/常量吗?提前致谢。

4

1 回答 1

0

没有像使用 .NET 枚举那样直接的方法。您要么必须:

  • 解析头文件,自己找值。
  • 合成一个 C++/CLI cpp 文件,该文件执行头文件的#include 并通过 .NET 类型公开 enum/const。

首先,您可以使用 Get-Content 逐行读取头文件,并使用 -match 和/或 Select-String 进行正则表达式搜索。对于第二个,(我要走的路线),您需要使用 cl.exe 和/clr开关来生成一个 DLL,然后可以使用Add-Type -Path C:\clicpp.dll. 一旦你在 C++/CLI 中声明了一个托管枚举,它使用头文件中的值,你可以像这样在 PowerShell 中引用它:

[NamespaceName.EnumName]::EnumValue
于 2013-09-29T20:11:35.547 回答