Posted By: srnec (permon) on 'CZprogram'
Title:     Re: Killnuti procesu
Date:      Tue Jan 11 10:50:56 2000

> > A ja prave potrebuju nejaky makro reprezentujici: 'C-A-D', 'vybrat ulohu
> > zbylou po Lotus Notes', 'ukoncit ulohu'.

> Urcite pujde udelat nejaky jednorazovy programek, kterej je odstreli, ale 
> nevim, co to pak udela se stabilitou.

 /*
  *  WIN_KILL.C                   v1.1
  *
  *  Likvidator programu bezicich v pseudooknech,
  *  pokud chcete likvidovat vsechny tak mate smulu, protoze pak
  *  uz je jen kernel.
  *  Nicmene, kdyz neco neodpovi na WM_QUIT, tak se to da odstrelit
  *  pomoci TerminateProccess. Problem je, zo to po sobe zanecha
  *  knihovny, ktere nestihne odpojit :-)
  */

 #include <windows.h>
 #include <windowsx.h>
 #include <string.h>

 int PASCAL WinMain(HINSTANCE hCurInstance, HINSTANCE hPrevInstance,
                    LPSTR lpCmdLine, int nCmdShow)
 {
   HWND dwh, swh;
   char text[]="IRMON   char buffer[10];

   dwh=GetDesktopWindow();
   swh=GetFirstChild(dwh);
   while (swh!=NULL) {
     GetWindowText(swh, &buffer, 10);
     if (strcmp(&text, &buffer)==0) {
       PostMessage(swh, WM_QUIT, NULL, NULL);
     }
     swh=GetNextSibling(swh);
   }
   return 1;
 }

/****EOF */

Takze zamenite text za to, co chcete killnout. Se stabilitou to neudela vubec 
nic. Pokud to neni nejakej svinsky napsanej program. Kdo tomu nerozumi, tak 
se to chva tak, ze tomuto pseudooknu zasleme zpravu, ktera je stejna, jako 
kdyz u okna zmacknes Alt+F4. Podle popisu problemu by to melo stacit. Jinak 
opravdu musis pouzit TerminateProcess, nebo TerminateThread. Dotazy smerujte 
na mne.. 

-----------------------------------------
-= Permon * xkopec14@dcse.fee.vutbr.cz =-
-------------==============--------------

Search the boards