visual-studio - iconos - visual studio code highlight closing tag
Hacer referencia a system.management.automation.dll en Visual Studio (8)
El ensamblaje que viene con Powershell SDK (C: / Program Files / Reference Assemblies / Microsoft / WindowsPowerShell / v1.0) no viene con los tipos específicos de Powershell 2.
La edición manual del archivo csproj resolvió mi problema.
Estoy empezando a analizar el modelo de PowerShell y el desarrollo de complemento. Lo primero que noto es hacer referencia a System.management.automation.dll. Sin embargo, en Visual Studio, la pestaña .NET no tiene ese ensamblaje, y tampoco se puede navegar hasta
C:/windows/assembly/GAC_MSIL/System.Management.Automation/1.0.0.0__31bf3856ad364e35/System.Management.Automation.dll
para hacer una referencia basada en archivos.
¿Me veo obligado a copiar el archivo manualmente para hacer una referencia fácil ?
No pude instalar el SDK correctamente (algunos de los archivos parecían no firmados, algo así). Encontré otra solución here y parece funcionar bien para mí. No requiere la instalación de nuevos archivos. Básicamente, lo que haces es:
Edite el archivo .csproj en un editor de texto y agregue:
<Reference Include="System.Management.Automation" />
a la sección relevante.
Espero que esto ayude.
Se instala una copia de System.Management.Automation.dll cuando instala el SDK de Windows (una versión adecuada y reciente de todos modos). Debería estar en C: / Archivos de programa / Conjuntos de referencia / Microsoft / WindowsPowerShell / v1.0 /
Si no desea instalar el SDK de Windows, puede obtener el dll ejecutando el siguiente comando en powershell:
Copy ([PSObject].Assembly.Location) C:/
También puede usar nuget: https://www.nuget.org/packages/System.Management.Automation/ Es quizás una mejor opción.
Usé el menú VS Project Reference y busqué en: C: / windows / assembly / GAC_MSIL / System.Management.Automation y agregué una referencia para el dll y Runspaces dll.
No necesité hackear el archivo .csprj y agregar la línea de referencia mencionada anteriormente. No tengo instalado el SDK de Windows.
Hice la copia Powershell mencionada anteriormente: Copiar ([PSObject] .Assembly.Location) C: /
Mi prueba con un comando Get-Process Powershell funcionó. Usé ejemplos de Powershell para desarrolladores Capítulo 5.
si es 64bit ellos - C: / Archivos de programa (x86) / Assemblies de referencia / Microsoft / WindowsPowerShell ** 3.0 **
y la versión podría ser diferente
System.Management.Automation en Nuget
Actualización: el paquete ahora es propiedad de PowerShell Team. ¡Hurra!