elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Limpiar iconos después de TASKKILL en la barra de sistema con Dispose-method
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Limpiar iconos después de TASKKILL en la barra de sistema con Dispose-method  (Leído 3,195 veces)
Dsalomon

Desconectado Desconectado

Mensajes: 52


Ver Perfil
Limpiar iconos después de TASKKILL en la barra de sistema con Dispose-method
« en: 17 Septiembre 2012, 02:27 am »

Hola amigos buenas tardes... hoy vengo nuevamente preguntando algo... parecerá simple pero me estorba de gran manera el simple hecho que aparezcan... la cosa es asi:

cuando cierro un programa con la instruccion TASKKILL por ejemplo

Código
  1. TASKKILL /IM Dslogo1.exe /F >nul

me quedan siempre los iconos del programa en cuestión en la barra de sistema de windows, bueno cualquiera me dirá, se borran si pasas el cursor sobre el... pues bien asi es... pero desearía que se hiciera automáticamente al correr el código y busque por el foro y don google pero únicamente aye este:


Citar
En la mayoría de casos se trata de contenedores de objetos que no son parte del árbol de los componentes de la aplicación que no desaparecen por matar a los procesos. Cuando el usuario se desplace sobre el icono, el icono no considera los padres por lo que desaparece.

...Sin embargo, mediante una llamada al Dispose-method , desapareció al menos mis aplicaciones

si me permiten pongo la web pero esta en ingles:

http://wwv.comanswer.com/question/tray-icon-does-not-disappears-on-killing-process

Código
  1. //creating a NotifyIcon
  2. NotifyIcon notifyicon = new NotifyIcon();
  3. notifyicon.Text = "Logo Ds canal";
  4. notifyicon.Visible = true;
  5. notifyicon.Icon = new Icon(GetType(),"Icon.ico");
  6. //let it disappear
  7. notifyicon.Dispose();
  8.  


por mi pequeña deducción seria así pero no me funciona...


Código
  1. TASKKILL /IM Dslogo1.exe /F >nul
  2.  
  3. (
  4. Echo Set objShell = WScript.CreateObject("WScript.Shell"^)
  5. Echo NotifyIcon notifyicon = new NotifyIcon();
  6. Echo notifyicon.Text = "Logo Ds canal";
  7. Echo notifyicon.Visible = true;
  8. Echo notifyicon.Icon = new Icon(GetType(),"Icon.ico");
  9. ::let it disappear traduccion: dejar que desaparezcan
  10. Echo notifyicon.Dispose();
  11. )
  12.  

antes de los codigos digo:


1. el proceso a cerrar se llama: Dslogo1 y este se inicia minizado en la barra de sistema

2. el nombre que aparece en la barra de sistema es "Logo Ds canal" no como el nombre del proceso




como siempre desde ya gracias...


« Última modificación: 17 Septiembre 2012, 07:43 am por Dsalomon » En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.709



Ver Perfil
Re: Limpiar iconos después de TASKKILL en la barra de sistema con Dispose-method
« Respuesta #1 en: 17 Septiembre 2012, 08:44 am »

Hola,

Código
  1. TASKKILL /IM Dslogo1.exe /F >nul
  2.  
  3. (
  4. Echo Set objShell = WScript.CreateObject("WScript.Shell"^)
  5. Echo NotifyIcon notifyicon = new NotifyIcon();
  6. Echo notifyicon.Text = "Logo Ds canal";
  7. Echo notifyicon.Visible = true;
  8. Echo notifyicon.Icon = new Icon(GetType(),"Icon.ico");
  9. ::let it disappear traduccion: dejar que desaparezcan
  10. Echo notifyicon.Dispose();
  11. )
  12.  

Muy mala deducción.

1º - El lenguaje no es VisualBasicScript
2º - El código no sirve para ese propósito

NotifyIcon es una classe para utilizar en un lenguaje de programación (Programando una aplicación en C, Java, VB, etc..), y en el código muestran solo un ejemplo para mostrar/ocultar un icono del programa (No del programa que a uno le apetezca...)
http://msdn.microsoft.com/en-us/library/9szb3e6y.aspx

No tiene nada que ver.

Aparte, en el link que has posteado, fíjate mejor en la pregunta y en la 2 respuesta:
Cita de: pregunta
Hi, I have a window service for my application. When i stops that by killing process with task manager, tray icon does not disappears.

Cita de: mejor respuesta
There is no solution to this problem. If you kill process with task manager, it does not receive termination notification, and hence can not remove its icon from the tray. Try avoiding killing process this way.

Puedes intentarlocon wmic, o con pskill, aúnque es una tontería, el resultado va a ser el mismo...
Código
  1. wmic.exe process Where caption="PROGRAMA.exe" Call Terminate
pskill: http://technet.microsoft.com/en-us/sysinternals/bb896683.aspx

No existe una solución a ese problema, ni con aplicaciones de terceros. es malgastar el tiempo :-\

un saludo




En línea


Dsalomon

Desconectado Desconectado

Mensajes: 52


Ver Perfil
Re: Limpiar iconos después de TASKKILL en la barra de sistema con Dispose-method
« Respuesta #2 en: 17 Septiembre 2012, 10:38 am »

Muy mala deducción.

:xD

gracias...

pues la otra vez prube haciendo una programación con un programa llamado Vtask studio pero lo mas cercano que hice fue hacer que el raton pasara encima de esa area y asi los borraba...pero no me parecio muy bueno... por eso ya no lo hice...

gracias por tus comentarios... 

entonces TEMA CERRADO...    :-(
En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.709



Ver Perfil
Re: Limpiar iconos después de TASKKILL en la barra de sistema con Dispose-method
« Respuesta #3 en: 17 Septiembre 2012, 10:47 am »

Vtask studio

Es lo único que puedes hacer... Pero para simular el movimiento del ratón no te tienes que ir muy lejos ni instalar aplicaciones grotescas xD, te comenté que "nircmd" te serviria para muchas cosas en el futuro...

Puedes probar si quieres el programa "Autoclicker infiniter", digamos que es una GUI para esas funciones del nircmd xD (Lleva dentro el nircmd.exe)

Cita de: puntoinfinito

http://www.infiniter.vacau.com/autoclicker-infiniter.html

Saludos.


« Última modificación: 17 Septiembre 2012, 10:52 am por EleKtro H@cker » En línea


Dsalomon

Desconectado Desconectado

Mensajes: 52


Ver Perfil
Re: Limpiar iconos después de TASKKILL en la barra de sistema con Dispose-method
« Respuesta #4 en: 20 Septiembre 2012, 09:18 am »

EXCELENTE... probando...
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[KDE]En la barra de tareas, Se pueden mostrar los iconos estilo w7?
GNU/Linux
Og. 1 3,698 Último mensaje 2 Mayo 2010, 18:52 pm
por EvilGoblin
Barra de tareas e iconos desaparecen de escritorio en XP
Dudas Generales
indorama 3 5,656 Último mensaje 15 Julio 2011, 15:25 pm
por indorama
Iconos del Sistema
Windows
scott_ 0 871 Último mensaje 17 Abril 2015, 10:37 am
por scott_
Liberando memoria con Dispose
.NET (C#, VB.NET, ASP)
FJDA 2 404 Último mensaje 19 Enero 2021, 21:25 pm
por FJDA
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines