首页 文章

Powershell:通过CreateProcess()调用时某些模块不可用

提问于
浏览
3

在什么条件下某些PowerShell模块不可用?

当我使用 CreateProcess() 和命令行创建进程时

powershell -Command "Get-Module -ListAvailable"

从命令提示符执行相同的语句时,我没有得到所有模块 .

我是否需要在STARTUPINFO或PROCESS_INFORMATION结构中设置任何字段?

2 回答

  • 3

    某些模块在32位版本的PowerShell中不可用 . 在使用PowerShell v1.0的Windows Server 2008 R2上,这些是:

    • ADRMS

    • AppLocker

    • BestPractices

    • ServerManager

  • 2

    可用的模块集由 PSModulePath 环境变量控制 . 这里讨论的两个过程可能有两个不同的 PSModulePath 值,因此您可以看到两组不同的模块 .

    你能检查两种情况下的 Value ,看看它是否有所不同?

相关问题