Powershell: algunos módulos no disponible cuando se llama a través de CreateProcess ()
-
28-09-2019 - |
Pregunta
Bajo qué condiciones lo hacen algunos módulos PowerShell dejan de estar disponibles?
Cuando creo un proceso con CreateProcess()
y la línea de comandos
powershell -Command "Get-Module -ListAvailable"
No se deje todos los módulos que recibo al ejecutar la misma declaración de un símbolo del sistema.
¿Hay alguna campos que tienen que establecer dentro de la STARTUPINFO o estructuras PROCESS_INFORMATION?
Solución
Algunos módulos no están disponibles en la versión de 32 bits de PowerShell. En Windows Server 2008 R2 con PowerShell v1.0 estos son:
- ADRMS
- AppLocker
- BestPractices
- ServerManager
Otros consejos
El conjunto de los módulos disponibles se controla mediante la variable de entorno PSModulePath
. Es posible que los dos procesos en cuestión aquí tienen 2 valores diferentes para PSModulePath
y por lo tanto se ven 2 conjuntos diferentes de módulos.
¿Se puede comprobar el valor en ambos casos y ver si es diferente?