如何在Powershell脚本中引用C ++枚举

时间:2013-08-23 07:25:16

标签: c++ windows powershell scripting

对PowerShell脚本编写新手。任何人都可以提出简单的方法来引用PowerShell中C ++头文件中定义的枚举/常量吗?提前谢谢。

1 个答案:

答案 0 :(得分:0)

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

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

对于第一个,您可以使用Get-Content逐行读取头文件和-match和/或Select-String来执行正则表达式搜索。对于第二个(我将去的路线),您将需要使用带有/clr开关的cl.exe来生成可以随Add-Type -Path C:\clicpp.dll加载的DLL。一旦在C ++ / CLI中声明了使用头文件中的值的托管枚举,就可以在PowerShell中引用它,如下所示:

[NamespaceName.EnumName]::EnumValue