PDA

Ver la Versión Completa : Evitar aparecer en Alt+Tab


DarkByte
27-12-2003, 01:14:20
Hola, en Trucomanía existe un truco para evitar que se muestre nuestra aplicación en Cntr+Alt+Sup, pero no aparece nada sobre cómo evitar que aparezca en Alt+Tab. ¿Alguana idea

Nota: He intentado buscar en los foros pero como ni Alt ni Tab tienen 4 letras no me lo ha aceptado, he probado con Tabulador y no he encontrado nada de interés.

Gydba
08-01-2004, 18:52:16
Me quede muy interesado con tu inquietud puesto que los trucos comunes no funcionan en WinXP, y llegue a esto:

program Project1;

uses
Forms,
Windows,
Unit1 in 'Unit1.pas' {Form1};

{$R *.res}
var
ExtendedStyle : LongInt;
begin
Application.Initialize;
// Hide app from taskbar
Application.Title := '';
Application.CreateForm(TForm1, Form1);
// Hide app from alt-tab
ExtendedStyle := GetWindowLong(application.Handle, GWL_EXSTYLE);
SetWindowLong(Application.Handle, GWL_EXSTYLE, ExtendedStyle or WS_EX_NOACTIVATE);
// Hide form alt-tab (But with not comun titlebar)
ExtendedStyle := GetWindowLong(Form1.Handle, GWL_EXSTYLE);
SetWindowLong(Form1.Handle, GWL_EXSTYLE, ExtendedStyle or WS_EX_TOOLWINDOW);
Application.Run;
end.

El problema está en la barra de título, pero eso te lo dejo a vos :)

StartKill
22-01-2004, 17:56:59
Hola, Probe el codigo y no funciona :(
estoy utilizando el windows98

Your Friend

StartKill :cool:
Lima-Perú

Gydba
23-01-2004, 01:44:37
Perdón, yo lo había probado con el WinXP SP1 y me funciona con el error de la barra de título que mencioné.

Tendrías que ver de adaptarlo un poco, porque las llamadas a las apis son válidas, o eso pienso, para win98.

madman
24-01-2004, 15:04:21
Para windows 98 esta el truco 441 de Trucomania.

www.q3.nu/trucomania

Y para WinXP y Win2000 Professional, usa la busqueda de los foros hace tiempo se retoco este tema muchas veces.

http://www.clubdelphi.com/foros/showthread.php?t=2003&highlight=ALT%2BTAB

Te sorprenderas de lo que encuentran si usan el buscador.

DarkByte
24-01-2004, 15:12:56
Ahmmm, muchas gracias, probaré y daré una respuesta.

StartKill
26-01-2004, 16:49:57
Estimado Madman :cool: ,

:p El truco que haces referencia de trucomania es para desahabilitar la combinacion ALT+TAB (solo para WIN95) pero la idea es no desactivar la combinacion sino esconder la aplicacion.

Si no me explico bien... :D al presionar ALT+TAB se ven las aplicaciones cargadas en ese momento como por ejemplo WORD, EXCELL, DELPHI Y MyAplication.... lo que se quiero es que no se vea MyAplication.

Your friend

StartKill :cool:
Lima-Perú
Nota: Estoy utilizando Guindos98

madman
29-01-2004, 07:52:09
DEberias seguir buscando en Trucomania, no recuerdo el numero del truco donde, escondes tu aplicacion en la barra de tareas a un lado del reloj. :rolleyes:

Con unos ajustes al codigo proporcionado por RadiKal, omites el muestreo del icono y tu aplicacion quedara solo en memoria, y no se vera con ALT+TAB. :p

Suerte!

leury
14-03-2004, 07:53:06
Oigan, alguno de ustedes me podria decir como evitas que una ventana se sierre con "Alt+F4"

jachguate
14-03-2004, 19:44:50
Hola Leury. Bienvenido(a) a los foros. Te recomiendo la lectura de la guía de estilo (vínculo en mi firma) y específicamente que utilices la busqueda de los foros (el actual y el antiguo), ya que este tema se ha tratado en multiples ocasiones y seguro encontras bastante información con tu duda.

Si no la encontraras, entonces, abrí un hilo nuevo, ya que se trata de una nueva pregunta que nada tiene que ver con el tema del hilo donde la has colocado.

Enhorabuena y que tu experiencia en los foros sea enriquecedora para vos y para la comunidad en general.

Hasta luego.

;)

DarkByte
24-03-2004, 21:49:14
Muchas gracias Gydba, se me olvidó comentar que me funcionó perfectamente :p , respondo tarde... pero respondo.

El problema está en la barra de título, pero eso te lo dejo a vos :)
Ya, eso ya lo arreglo yo, ya has hecho de sobra, muchas gracias!! :)

StartKill
15-06-2004, 01:14:21
Wnas a todos,

Hace buen tiempo se me presentó el problema de esconder mi aplicación del alt+tab y "por motivos de la vida" :D nuevamente renace la necesidad.

Debo señalar que he buscado en trucomania "441" el cual no surte el efecto esperado.

He intentado colocar un titulo en blanco en mi aplicación si bien es cierto ya no hay titulo que delate el programa pero el icono sigue alli con alt+tab.

He colocado un icono vacio, y a la hora de presionar alt+tab, no se ve el titulo ni el icono pero se visualiza un marco del tamaño del supuesto icono indicando la existencia del programa en memoria.

He leido el ultimo mensaje de DarkByte (donde me parece que el encontró la solución) o que la iba a buscar :confused:

Desde luego estoy volviendo a encender este hilo y debo suponer que a lo mejor muchos de ustedes tienen la respuesta a esto y me gustaria que compartieran este "truquito" para todos nosotros los que estamos empezando con Delphi :cool: .

Ojo: Trabajo con Windows 98SE y tengo una aplicación con un formulario donde existen componentes como listbox, memos, sockets y otros, trabajo con delphi7.0

Gracias, se despide

Your Friend,

StartKill
Lima-Perú

roman
15-06-2004, 17:08:33
Pues ¿qué no la respuesta de Gydba resuelve esto?

En todo caso un simple

Application.ShowMainForm := false;

esconde la aplicación de la barra y del alt-tab, y de hecho no muestra la ventana principal pero ¿qué caso tiene tratar de esconder la aplicación el alt-tab si de cualquier forma se muestra su ventana?

// Saludos

StartKill
15-06-2004, 20:04:18
Hola foro.

Bueno amigo con respecto al comentario de nuestro moderador "roman"
Pues ¿qué no la respuesta de Gydba resuelve esto?


Gydba comentaba...
...yo lo había probado con el WinXP SP1 y me funciona con el error de la barra de título que mencioné.

Tendrías que ver de adaptarlo un poco, porque las llamadas a las apis son válidas, o eso pienso, para win98.


Traté de adaptar el código, pero mis bajos conocimientos con el api me hicieron desistir y mori en el intento :rolleyes:

moderador Roman dice:
En todo caso un simple
Application.ShowMainForm := false;


Pos amigo te digo que eso No Funciona :confused: ,,j,j,j,j, es una broma mi estimado, SI funciona y a la perfección y es lo que buscaba, Gracias...

Solo por comentar - la linea a la que haces referencia la lei en otro lado "escrita por ti, donde indicabas que lo haga en el dpr" pero tuve la mala idea de colocarla en el evento del click de un boton.... y no me dio resultado y crei que no funcionaba....

moderador Roman dice:
...esconde la aplicación de la barra y del alt-tab, y de hecho no muestra la ventana principal pero ¿qué caso tiene tratar de esconder la aplicación el alt-tab si de cualquier forma se muestra su ventana?


Claro tu pregunta es concordante a una aplicacion normal y visible... lo que pasa es que en el formulario tengo varios componentes y si le das un releida hago referencia a los componentes sockets.....

Mi aplicación es un pequeño servidor y mi deseo es que no vea con ctrl-alt-del(solucionado), ni con el alt+tab y invisible(solucionado) "como resultado que sea un poco dificil sacarlo de memoria" :D . Espero haber satisfecho tu curiosidad :)

Me despido del foro hasta la proxima, no sin antes pedir disculpas por haber vuelto a encender este hilo cuando la respuesta ya estaba dada.

Your friend

StartKill
Lima-Perú

DarkByte
16-06-2004, 12:15:42
A mi el truco me funcionó. Dejé para luego el responder y como que ahora ya me daba cosa de revivir el hilo sólamente para decir que funcionó y dar las gracias.

:p Ahora sí, me funcioncó perfectamente, sin error ninguno. Muchísimas gracias

marto
16-06-2004, 13:02:42
Mi aplicación es un pequeño servidor y mi deseo es que no vea con ctrl-alt-del(solucionado), ni con el alt+tab y invisible(solucionado) "como resultado que sea un poco dificil sacarlo de memoria" :D . Espero haber satisfecho tu curiosidad :)


Estoooooooooooo ¿y por qué no lo programas como un servicio? :confused: :confused:

brakdag
12-02-2005, 20:48:12
Si vos tenes haces un programa y no queres que
se vez al presionar control +alt +supr o alt+tab pero que
si se vean los otros programas tenes que usar la funcion
de la API GetCurrentProcessId para obtener el id
del proceso local y RegisterServiceProcess con 0 y 1 como
parametros y listo... investiguen... !!! es facil

roman
12-02-2005, 21:34:53
Jajaja me parece raro que ho se hayan dado cuenta


Es que en ese entonces no contábamos con tu infinita sabiduría.

Y hago mención para quien esté interesado en RegisterServiceProcess, que únicamente funciona en Win9x. La función ya no existe en WinNT/2000/XP.

// Saludos