ubiquitour.com

Cómo ejecutar una programación de Visual Basic dentro de Powershell

PowerShell permite programadores manipular el sistema operativo de Windows desde la línea de comandos. Con PowerShell, puede acceder a objetos de la net como sistema de archivos de la ventana. Un script de PowerShell reutilizable se llama un "cmdlet". Se puede combinar cmdlets para crear secuencias de gran alcance que usted puede compartir con otros usuarios. Visual BASIC (VB) es un lenguaje de programación utilizado en la net que te permite llamar a scripts de PowerShell desde dentro de su código administrado. Esto a su vez le permite crear una interfaz de usuario atractiva que comenzando los usuarios puede utilizar para ejecutar cmdlets en lugar de la línea de comandos.

Instrucciones

1 Inicie Visual Studio. Abra el proyecto VB que desea utilizar para ejecutar un cmdlet de PowerShell.

2 Haga clic en el nombre de su proyecto desde el directorio de archivo en la esquina superior derecha de la pantalla. Haga clic en "Agregar referencia", luego haga clic en el botón "Examinar". Haga clic en "System.Management.Automation.dll" y el botón "OK".

3 Haga doble clic en el archivo VB que desea utilizar para ejecutar el cmdlet de PowerShell, luego coloque el código siguiente en la parte superior del archivo:

Las importaciones System.Text

Las importaciones de System.IO

Importaciones System.Management.Automation

Las importaciones System.Collections.ObjectModel

Importaciones System.Management.Automation.Runspaces

4 Cree un método para ejecutar el script de PowerShell:

Función privada ExecuteMyPowerShellScript(ByVal scriptText As String) As String

End Function

5 Crear una instancia de un objeto de PowerShell Runspace y ábralo. Crear un objeto de canalización de PowerShell y ejecute su método "AddScript()", utilizando el texto de secuencia de comandos como argumento.

Dim RunspaceSample As Runspace = RunspaceFactory.CreateRunspace()

RunspaceSample.Open()

Dim PipelineSample As Pipeline = MyRunSpace.CreatePipeline()

PipelineSample.Commands.AddScript(scriptText)6

Ejecutar el script de PowerShell y ciérrelo:

Dim resultados como Collection(Of PSObject) = PipelineSample.Invoke()

RunSpaceSample.Close()