Saltar al contenido

Ejecutar automáticamente un script cuando inicio sesión en Windows

Hemos recabado en distintos sitios y así mostrarte la solución para tu duda, en caso de dificultades puedes dejar la pregunta y contestaremos porque estamos para ayudarte.

Solución:

Puede crear una tarea programada que se ejecutará cuando su computadora esté desbloqueada:

  1. Inicio > Herramientas administrativas > Programador de tareas
  2. panel izquierdo: seleccione Biblioteca del programador de tareas
  3. panel derecho: haga clic en Crear tarea… (NOTA: esta es la única forma de obtener el activador correcto)
  4. en el cuadro de diálogo Crear tarea:
    • Pestaña General: proporcione un nombre para su tarea
    • Pestaña Activadores: haga clic en Nuevo… y seleccione En el desbloqueo de la estación de trabajo
    • Pestaña Acción: haga clic en Nuevo… y haga clic en Examinar… para ubicar su secuencia de comandos
    • Pestaña Condiciones: desmarque Iniciar la tarea solo si la computadora está conectada a la alimentación de CA

Además, modifiqué la ruta en el script para leer

echo %USERNAME% logged on at %DATE% %TIME% >> %USERPROFILE%log.txt

Si ya tienes un guión:

Para asignar un script de inicio de sesión a un usuario o grupo

  • Gestión informática abierta.
  • En el árbol de la consola, haga clic en Usuarios.

¿Donde? Herramientas del sistema/Usuarios y grupos locales/Usuarios

  • Haga doble clic en el usuario al que desea asignar un script de inicio de sesión.
  • Haz clic en la pestaña Perfil.
  • En el campo Guión de inicio de sesión, ingrese la ruta y el nombre del guión de inicio de sesión que desea asignar a ese usuario y luego haga clic en Aceptar.

De lo contrario, aquí hay un práctico “HowTo” de Microsoft

Creación de secuencias de comandos de inicio de sesión

Puede usar secuencias de comandos de inicio de sesión para asignar tareas que se realizarán cuando un usuario inicie sesión en una computadora en particular. Los scripts pueden ejecutar comandos del sistema operativo, establecer variables de entorno del sistema y llamar a otros scripts o programas ejecutables. La familia Windows Server 2003 admite dos entornos de secuencias de comandos: el procesador de comandos ejecuta archivos que contienen comandos de lenguaje por lotes y Windows Script Host (WSH) ejecuta archivos que contienen comandos de Microsoft Visual Basic Scripting Edition (VBScript) o Jscript. Puede utilizar un editor de texto para crear secuencias de comandos de inicio de sesión. Algunas tareas comúnmente realizadas por los scripts de inicio de sesión incluyen:

  • Mapeo de unidades de red.
  • Instalación y configuración de la impresora predeterminada de un usuario.
  • Recopilación de información del sistema informático.
  • Actualización de firmas de virus.
  • Actualización de software.
  • El siguiente script de inicio de sesión de ejemplo contiene comandos de VBScript que usan Active Directory
  • Interfaces de servicio (ADSI) para realizar tres tareas comunes basadas en la pertenencia a un grupo de usuarios:

Asigna la unidad H: al directorio de inicio del usuario llamando al método MapNetworkDrive del objeto WSH Network en combinación con la propiedad UserName del objeto WSH Network. Utiliza el objeto ADSI IADsADSystemInfo para obtener el nombre distinguido del usuario actual, que a su vez se utiliza para conectarse al objeto de usuario correspondiente en Active Directory. Una vez que se establece la conexión, la lista de grupos de los que el usuario es miembro se recupera utilizando el miembro del usuario. attribute. La lista multivaluada de nombres de grupos se une en una sola string mediante el uso de la función Unirse de VBScript para facilitar la búsqueda de nombres de grupos objetivo.

Si el usuario actual es miembro de uno de los tres grupos definidos en la parte superior de la secuencia de comandos, la secuencia de comandos asigna la unidad G: del usuario a la unidad compartida del grupo y configura la impresora predeterminada del usuario para que sea la impresora del grupo. Para crear un script de inicio de sesión de ejemplo

  • Abra el Bloc de notas.
  • Copie y pegue, o escriba, lo siguiente:

    Const ENGINEERING_GROUP     = "cn=engineering"
    Const FINANCE_GROUP         = "cn=finance"
    Const HUMAN_RESOURCES_GROUP = "cn=human resources"
    
    Set wshNetwork = CreateObject("WScript.Network")
    wshNetwork.MapNetworkDrive "h:",
    "\FileServerUsers" & wshNetwork.UserName
    
    Set ADSysInfo = CreateObject("ADSystemInfo")
    Set CurrentUser = GetObject("LDAP://" &
    ADSysInfo.UserName)
    strGroups = LCase(Join(CurrentUser.MemberOf))
    
    If InStr(strGroups, ENGINEERING_GROUP) Then
    
        wshNetwork.MapNetworkDrive "g:",
        "\FileServerEngineering"
        wshNetwork.AddWindowsPrinterConnection
        "\PrintServerEngLaser"
        wshNetwork.AddWindowsPrinterConnection
        "\PrintServerPlotter"
        wshNetWork.SetDefaultPrinter
        "\PrintServerEngLaser"
    
    ElseIf InStr(strGroups, FINANCE_GROUP) Then
    
        wshNetwork.MapNetworkDrive "g:",
        "\FileServerFinance"
        wshNetwork.AddWindowsPrinterConnection
        "\PrintServerFinLaser"
        wshNetWork.SetDefaultPrinter
        "\PrintServerFinLaser"
    
    ElseIf InStr(strGroups, HUMAN_RESOURCES_GROUP) Then
    
        wshNetwork.MapNetworkDrive "g:",
        "\FileServerHuman Resources"
        wshNetwork.AddWindowsPrinterConnection
        "\PrintServerHrLaser"
        wshNetWork.SetDefaultPrinter
        "\PrintServerHrLaser"
    
    End If
    
  • En el menú Archivo, haga clic en Guardar como.

  • En Guardar en, haga clic en el directorio que corresponde a la carpeta compartida Netlogon del controlador de dominio (generalmente SystemRootSYSVOLSysvolDomainNameScripts donde DomainName es el nombre de dominio completo del dominio).
  • En Guardar como tipo, haga clic en Todos los archivos.
  • En Nombre de archivo, escriba un nombre de archivo, seguido de .vbs y luego haga clic en Guardar. WSH usa la extensión .vbs para identificar archivos que contienen comandos de VBScript.

La forma más sencilla que se me ocurre sería poner esto en un archivo .bat en su carpeta de inicio.

Una forma más complicada sería agregar el archivo por lotes al registro en el

HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun

registro key.

Aquí puedes ver las reseñas y valoraciones de los usuarios

Si para ti ha sido provechoso nuestro post, te agradeceríamos que lo compartas con otros seniors de este modo contrubuyes a difundir este contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *