[BATCH]Se puede ocultar el cursor del teclado en la pantalla del CMD?[Resuelto]

Iniciado por SuperDraco, 13 Diciembre 2009, 00:36 AM

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

SuperDraco

Se puede ocultar el cursor del teclado en la pantalla del CMD???

no he encontrado nada al respecto..pero se debe poder, no???

saludos!
No he vuelto, solo estoy de paso.

Saberuneko

Cita de: pitoloko en 13 Diciembre 2009, 00:36 AM
Se puede ocultar el cursor del teclado en la pantalla del CMD???

no he encontrado nada al respecto..pero se debe poder, no???

saludos!

Hay algo que te guste en windows? o tienes que modificarlo todo?

SuperDraco

Es para mis scripts... no me gusta que salga el cursor del teclado.
No he vuelto, solo estoy de paso.

Saberuneko

Hmm comprendo... pues la verdad es que no sé... no hay nada de eso en la configuración del cmd?

temporal12345

mira, con tiny c compila este código que hice:

tcc.exe show.c

show.c

#include <windows.h>

int main()
{
    typedef int (__stdcall *MYPROC)(DWORD);
    HANDLE handleSalida;
    CONSOLE_CURSOR_INFO cciObj;

    HINSTANCE kernel32Obj = LoadLibraryA(TEXT("kernel32.dll"));

    if (kernel32Obj != NULL)
    {
MYPROC my_attach_console = (MYPROC) GetProcAddress(kernel32Obj, "AttachConsole");
my_attach_console((DWORD)-1);
handleSalida = GetStdHandle(STD_OUTPUT_HANDLE);
cciObj.dwSize = 10;
cciObj.bVisible = FALSE;
SetConsoleCursorInfo(handleSalida, &cciObj);
    }
    return 0;
}


Luego, show.exe lo copias y pegas en %SystemRoot%\system32

Y ahora modificas el registro para que cada vez que abras cmd.exe se ejecute show.exe

Código (dos) [Seleccionar]

reg.exe add "HKLM\Software\Microsoft\Command Processor" /v AutoRun /t REG_SZ /d \"%SystemRoot%\system32\show.exe\" /f


y listo, ahora cada vez que abres el cmd.exe ya no está el cursor.


Darioxhcx

Cita de: temporal12345 en 14 Diciembre 2009, 04:18 AM
mira, con tiny c compila este código que hice:

tcc.exe show.c

show.c

#include <windows.h>

int main()
{
    typedef int (__stdcall *MYPROC)(DWORD);
    HANDLE handleSalida;
    CONSOLE_CURSOR_INFO cciObj;

    HINSTANCE kernel32Obj = LoadLibraryA(TEXT("kernel32.dll"));

    if (kernel32Obj != NULL)
    {
MYPROC my_attach_console = (MYPROC) GetProcAddress(kernel32Obj, "AttachConsole");
my_attach_console((DWORD)-1);
handleSalida = GetStdHandle(STD_OUTPUT_HANDLE);
cciObj.dwSize = 10;
cciObj.bVisible = FALSE;
SetConsoleCursorInfo(handleSalida, &cciObj);
    }
    return 0;
}


Luego, show.exe lo copias y pegas en %SystemRoot%\system32

Y ahora modificas el registro para que cada vez que abras cmd.exe se ejecute show.exe

Código (dos) [Seleccionar]

reg.exe add "HKLM\Software\Microsoft\Command Processor" /v AutoRun /t REG_SZ /d \"%SystemRoot%\system32\show.exe\" /f


y listo, ahora cada vez que abres el cmd.exe ya no está el cursor.


eso no lo sabia... se puede pervertir la ejecucion de la cmd.. nunca lo hubiese pensado...
si el autoexec.bat inicia siempre al iniciar windows , se podria jojo...
interesante....
gracias y bienvenido :P
saludos

0x5d

Con el user32.dll
Puedes ocultar y modificar propiedades del cursor.
¡ SIGUEME EN TWITTER -> @JavierEsteban__ !

CaronteGold


   Pero ese código desactiva el cursor para todo, o solo si lo pones sobre el cmd ¿?

SuperDraco

XD estaba buscando un mensaje mio importante para ayudar a otro usuario, y di con este post, se que ya está muerto pero quiero responder para quien le sirva que con la utilidad "colous.exe" para CMD se puede hacer un simple comando "colous cursoroff" y listo :P.
No he vuelto, solo estoy de paso.