Microsoft似乎正在将大量配置和查询功能转移到PowerShell(可从C#或托管C ++访问),同时弃用甚至删除旧的API(可访问C或非托管C ++)。我们这些拥有无法切换到托管C ++的大量非托管C ++程序的人可能需要调用PowerShell cmdlet(至少我现在有一个) - 我们怎么能这样做?
有人建议反向PInvoke(托管/非托管thunking)可以做一些事情,但我希望有一种比从PowerShell脚本中解析或解析文本输出更好的方法。
[注意:这是一个过于专业化的经过重新设计和推广的query I made yesterday。]
答案 0 :(得分:2)
MS的建议可能是在你的普通非托管C ++应用程序中编译特定的类/模块作为托管代码(使用/ clr编译单个文件),并让IJW转换代码管理对它的调用(并调用PowerShell) API来自托管位)。我被告知(来自MS VC ++人员),这是为大型非托管应用程序添加托管调用的预期方法。
希望有所帮助。