Problema:
Desea que PowerChute Network Shutdown active un ejecutable de Windows.
Producto:
PowerChute Network Shutdown
Entorno:
Todos los sistemas operativos Windows compatibles que ejecuten PowerChute Network Shutdown versión 4.4.x y superiores.
Solución:
Para ejecutar un script PowerShell desde PowerChute, debe crear dos scripts: un archivo .bat o .cmd y un script PowerShell .ps1.
Para ejecutar un script de Windows PowerShell desde PowerChute, debe crear dos scripts: un archivo .bat o .cmd y un script de PowerShell .ps1. Recomendamos utilizar Notepad++ para evitar guardar los archivos como .txt en Notepad o WordPad.
PowerChute ejecutará un .bat, por lo que creamos Trigger.bat. Ese archivo consiste en
"%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe" -ExecutionPolicy Unrestricted -NoProfile -NonInteractive C:'\Temp\MyPowerShellScript.ps1'
Es necesario que ejecute el archivo Trigger.bat.
Necesitará verificar o actualizar la ruta a PowerShell.exe y modificar la ruta a MyPowerShellScript.ps1. Además, todos los archivos de comandos y script PowerChute Network Shutdown 4.4.x y superiores deben almacenarse en
C:\Archivos de Programa\APC\PowerChute\user_files para sistemas Windows
/opt/APC/PowerChute/user_files/ para sistemas Linux
El segundo archivo es el archivo .ps1. En el siguiente ejemplo, hemos hecho que PowerShell dispare mi.exe
Iniciar-Proceso "C:Archivos de Programa"mi.exe"
Necesitará verificar o cambiar la ruta del .exe
El archivo de comandos se ejecuta utilizando la cuenta local del sistema. Es posible que tenga que modificar la configuración de la cuenta para permitir que se ejecute el script. Para cambiar la cuenta, vaya a Panel de control-Herramientas administrativas-Servicios. En el ejemplo siguiente, el usuario se ha cambiado a wkadmin.
NOTA: PowerChute no puede ejecutar programas que requieran interacción con el escritorio; sólo se admiten programas habilitados para línea de comandos. Por ejemplo, si intenta ejecutar el Bloc de notas, fallará. En versiones anteriores de Windows, todos los servicios se ejecutaban en la Sesión 0 junto con las aplicaciones. Esta situación supone un riesgo para la seguridad. En Windows Vista y versiones posteriores de Windows, el sistema operativo aísla los servicios en la Sesión 0 y ejecuta las aplicaciones en otras sesiones. PowerChute se ejecuta en la Sesión 0, por lo que si un archivo de comandos lanza un .exe, ese .exe se lanzará en la Sesión 0 y no será visible para los usuarios conectados. Para verificar que el .exe se ha lanzado, abra el Administrador de Tareas y revise la lista de Procesos en ejecución. Puede encontrar más información sobre la Sesión de Windows en http://blogs.technet.com/b/askperf/archive/2007/04/27/application-compatibility-session-0-isolation.aspx