[BATCH] Logon Background Changer 0.4 (Click derecho en el menú contextual)

Iniciado por Eleкtro, 4 Noviembre 2011, 21:00 PM

0 Miembros y 1 Visitante están viendo este tema.

Eleкtro

NUEVA VERSIÓN, SCRIPT ACTUALIZADO! 21/07/2012

v0.4
-----
  • Corregido un error al intentar establecer una imagen cuyo nombre de archivo lleva los caracteres de parentesis ( )
  • Corregido un fallo en la instalación del script... No me di cuenta, la versión 0.3 no podia funcionar porque puse la ruta mal en el script xD
  • Añadida una opción en el bat para instalar el script donde uno quiera

    v0.3
    -----
  • Aumentada las extensiones soportadas : BMP GIF EMF JPG JPEG PCX PBM PGM PPM PNG TGA TIF TIFF
  • Ya no es necesario usar el archivo de registro, Se pueden añadir extensiones editando el script.
  • El bat se puede usar con el parámetro "ADD" para añadir las claves del registro, O el parámetro "DELETE" para eliminar la instalación de las claves:
    LogonBackgroundChanger.bat ADD
    LogonBackgroundChanger.bat DELETE


    v0.2
    -----
    Código optimizado:
  • Ya no necesita usar hex2dec.exe
  • Mejorada la obtención de la resolución




    Hola,

    L.B.C. Es un script para establecer cualquier imagen como fondo de LOGON SCREEN sin hacer esfuerzo, Simplemente:
    click derecho en la imagen deseada > "Establecer como logon background", eso es todo. Sin tener que abrir programas de terceros...y luego buscar el archivo...y luego que no se configure bien la imagen... esas cosas que suelen pasar.



    Funciona con imagenes BMP, JPG, JPEG y PNG.

    Requisitos:
              Mediainfo (32 bit)
              irfanview (solamente el exe, i_view32.exe)

    (Todo va incluido en el RAR, Listo para instalar y usar.)






    ¿Que es lo que hace exactamente el script?

    1. Identifica la resolución del monitor.
     2. Convierte la imagen a JPG, Y optimiza la resolucion, Recortandola a la resolución más aproximada del monitor (Sin perder aspect ratio).
      3. Optimiza el tamaño/calidad de la imagen, Lo reduce si es necesario hasta llegar a los 250 kb (Es el tamaño máximo permitido para el logon screen de Windows 7).



    Notas: Ha sido testeado bajo windows 7 (Con pantalla sola, y Dual Screen).

    Un saludo.






    Aquí tienen el BAT (No funciona sin los programas de terceros mencionados antes, Todo está en el instalador de arriba):

    Código (dos) [Seleccionar]
    @echo off
    Title Logon Background Changer v0.4 - by Elektro H@cker
    Mode con cols=60 lines=4
    Nircmd Win center ititle "Logon Background Changer v0.4 - by Elektro H@cker" 2>NUL
    color 7

    :: CONFIGURACIÓN  :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: ::
    ::
    Set Extensions=BMP GIF EMF JPG JPEG PCX PBM PGM PPM PNG TGA TIF TIFF
    Set Keyname=Establecer como Logon background
    Set QUALITY=80
    Set "Install_Dir=%Programfiles%\elektro h@cker Software\mouse menu\Logon Background Changer.bat"
    :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: ::

    IF Not exist "%INSTALL_DIR%" (Copy %0 "%INSTALL_DIR%")
    If    "%~1" EQU ""        Exit /b 1
    If /I "%~1" EQU "ADD"     Call :Extensions_%~1 %~1
    If /I "%~1" EQU "DELETE"  Call :Extensions_%~1 %~1

    Echo+
    Echo: "%~nx1"
    Echo: Estableciendo la imagen como Logon background...

    REM Activar el Logon background customizado de Windows 7
    Reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background" /V "OEMBackground" /T "REG_DWORD" /D "00000001" /F >nul
    mkdir "%WINDIR%\System32\oobe\Info\backgrounds" >nul 2>&1

    REM Identificar resoluciones
    FOR /F %%A in ('%WINDIR%\system32\wbem\wmic.exe DESKTOPMONITOR get ScreenHeight ^| FINDSTR "[1-9]"') do (SET HEIGHT=%%A)
    FOR /F %%B in ('%WINDIR%\system32\wbem\wmic.exe DESKTOPMONITOR get ScreenWidth ^| FINDSTR "[1-9]"') do (SET WIDTH=%%B)

    :: NOTA:
    :: EL TAMAÑO MÁXIMO PERMITIDO PARA EL LOGON BACKGROUND ES DE "250 Kb"

    REM OPTIMIZANDO LA RESOLUCIÓN DE LA IMAGEN...
    :CONVERT
    %windir%\system32\i_view32.exe %1 /resize=(%WIDTH%,%HEIGHT%) /aspectratio /resample /convert="%TEMP%\backgroundDefault.jpg" /jpgq=%QUALITY%

    REM OPTIMIZANDO LA CALIDAD DE LA IMAGEN...
    %windir%\system32\mediainfo.exe "%TEMP%\backgroundDefault.jpg" "--Inform=General;%%FileSize/String%%" | Find "MiB" >nul && SET /A QUALITY-=5&& Goto :CONVERT
    For /F "Tokens=1 delims=. " %%a in ('%windir%\system32\mediainfo.exe "%TEMP%\backgroundDefault.jpg" "--Inform=General;%%FileSize/String%%"') do (Set KB=%%a)
    IF %KB% GTR 249 (SET /A QUALITY-=5& Goto :Convert) ELSE (move /Y "%TEMP%\backgroundDefault.jpg" "%WINDIR%\System32\oobe\Info\backgrounds\" >NUL)

    :FIN
    Echo+
    Echo: "%~nx1"
    Echo: Imagen establecida correctamente como Logon background.
    DEL /Q "%TEMP%\HEIGHT.txt","%TEMP%\WIDTH.txt" >nul 2>&1
    ping -n 3 localhost >NUL
    Exit

    :Extensions_ADD
    For %%a in (%EXTENSIONS%) DO (
    Reg %~1 "HKCR\SystemFileAssociations\.%%a\shell\%KEYNAME%" /F >NUL 2>&1
    Reg %~1 "HKCR\SystemFileAssociations\.%%a\shell\%KEYNAME%" /v "icon" /d "%WINDIR%\system32\shell32.dll,301" /F >NUL 2>&1
    Reg %~1 "HKCR\SystemFileAssociations\.%%a\shell\%KEYNAME%" /v "position" /d "TOP" /F >NUL 2>&1
    Reg %~1 "HKCR\SystemFileAssociations\.%%a\shell\%KEYNAME%\Command" /d "\"%Install_Dir%\" \"%%1\"" /F >NUL 2>&1
    )
    Exit

    :Extensions_DELETE
    For %%a in (%EXTENSIONS%) DO (Reg %~1 "HKCR\SystemFileAssociations\.%%a\shell\%KEYNAME%" /F) >NUL 2>&1
    Exit








Geormarsch

"Comentar el código es como limpiar el cuarto de baño; nadie quiere hacerlo, pero el resultado es siempre una experiencia más agradable para uno mismo y sus invitados"

Eleкtro

NUEVA VERSIÓN, SCRIPT ACTUALIZADO! 19/07/2012

Código optimizado:
  • Ya no necesita usar hex2dec.exe
  • Mejorada la obtención de la resolución








Eleкtro

NUEVA VERSIÓN, SCRIPT ACTUALIZADO! 21/07/2012

v0.3
-----
  • Aumentada las extensiones soportadas : BMP GIF EMF JPG JPEG PCX PBM PGM PPM PNG TGA TIF TIFF
  • Ya no es necesario usar el archivo de registro, Se pueden añadir extensiones editando el script.
  • El bat se puede usar con el parámetro "ADD" para añadir las claves del registro, O el parámetro "DELETE" para eliminar la instalación de las claves:
    LogonBackgroundChanger.bat ADD
    LogonBackgroundChanger.bat DELETE








Eleкtro

NUEVA VERSIÓN, SCRIPT ACTUALIZADO! 21/07/2012

v0.4
-----
  • Corregido un error al intentar establecer una imagen cuyo nombre de archivo lleva los caracteres de parentesis ( )
  • Corregido un fallo en la instalación del script... No me di cuenta, la versión 0.3 no podia funcionar porque puse la ruta mal en el script xD
  • Añadida una opción en el bat para instalar el script donde uno quiera