3.31.2009

Esconder la barra de tareas en Windows CE .NET

En los dispositivos tipo PNA (PDA con GPS incorporado) que no tienen windows mobile es muy común poder hacer algún hack para poder acceder al sistema que hay por debajo. En ese windows ce se pueden ejecutar aplicaciones normalmente sin ningún tipo de limitación, aunque algunos limitan el acceso al GPS o bluetooth.

Si quieres crear una aplicación a pantalla completa (para, por ejemplo, una applicación 3D) queda muy mal la minúscula barra de tareas de windows ce .net, lo ideal es quitarla, para ello el siguiente código:

void HideTaskbar()
{
TCHAR* window_names[] = { _T("menu_worker"), _T("HHTaskBar"), _T("Shell_TrayWnd"), _T("Tray") };
for(int i = 0; i < sizeof(window_names)/sizeof(window_names[0]); ++i)
{
HWND hwndCB = ::FindWindow( window_names[i] , _T("") );
if(hwndCB)
::ShowWindow( hwndCB, SW_HIDE );
}
}


Se basa en buscar la ventana de la barra de tareas y ocultarla, así de simple. Realmente es una tontería, pero me costó un rato dar con ello y así lo tengo localizado :). Hay 4 nombres porque me he encontrado diferentes nombres en diferentes tipos de PNA, así que así me aseguramo.

NOTA: El formateo de código no es mi fuerte como podeis comprobar, alguna herramienta para blogger?

3 comentarios:

Jeús Q. Jambo dijo...

Seguro que me sirve en un futuro...
¡¡Gracias!! Claro y conciso, impresionante.

Anónimo dijo...

Hola
tengo un navegador customizado con windows ce 4.2, el caso es que, al arrancar un programa la barra de tareas de Windows ce se vuelve inestable o al terminar el programa la barra desaparece ¿sabes si hay alguna solución?

Anónimo dijo...

Necesito saber donde coloco ese codigo!!!