casa
Top.Mail.Ru Yandeks.Metrika
Forum: "Principale";
Archivio attuale: 2002.01.08;
Scarica: [xml.tar.bz2];

giù

KillSelf Trova rami simili


T2   (2001-12-14 03:22) [0]

Come si commette il suicidio di un programma? La corrente non è al riavvio, ma in tempo reale!



KilkennyCat   (2001-12-14 04:12) [1]

Suicidio - significa rimuovere dalla vite?
Deve solo vivere nella memoria, da dove si cancella con calma dalla vite, e poi dice a se stessa: vicina.



T2   (2001-12-14 04:32) [2]

Sì, rimozione dalla vite. Ma lui non vuole cancellare se stesso - il file grit è bloccato (ovviamente, non è tutto nella sua memoria, ma lo carica e lo tiene aperto) :(



KilkennyCat   (2001-12-14 04:37) [3]

Beh, certo! Se non urgentemente, scriverò come (ora occupato), fino a quando non mi ricorderò degli avanzi di opzioni dosovsky dalla "battaglia nella memoria".



T2   (2001-12-14 05:32) [4]

Ok, ci sarà tempo, lanciare a gu-gu-gu2@mtu-net.ru o scrivere qui.



Milz   (2001-12-14 09:31) [5]

Non ricordo dove ho scavato, completa il programma e lo rimuove dalla vite.
Dimmi come funziona, in particolare sono interessato a come si verificano le chiamate api, il software ha dimostrato che non è solo una transizione a un indirizzo di funzione, ma alcune perversioni in kernel32, e quindi viene chiamato api stesso, e così via con ciascuna di esse. Cos'è e come vengono trasmessi i parametri?

usa
finestre;

procedura DeleteSelf;
var hModule: THandle;
szModuleName: array [0..MAX_PATH] di char;
hKrnl32: THandle;
pExitProcess, pDeleteFile, pFreeLibrary, pUnmapViewOfFile: pointer;
ExitCode: UINT;
iniziare
hModule: = GetModuleHandle (nil);
GetModuleFileName (hModule, szModuleName, sizeof (szModuleName));
hKrnl32: = GetModuleHandle ("kernel32");
pExitProcess: = GetProcAddress (hKrnl32, "ExitProcess");
pDeleteFile: = GetProcAddress (hKrnl32, "DeleteFileA");
pFreeLibrary: = GetProcAddress (hKrnl32, "FreeLibrary");
pUnmapViewOfFile: = GetProcAddress (hKrnl32, "UnmapViewOfFile");
ExitCode: = system.ExitCode;
se ($ 80000000 e GetVersion ()) <> 0 allora
// Win95, 98, Me
asm
lea eax, szModuleName
spingere exitcode
spingere 0
spingere eax
spingere pExitProcess
spingere hModule
spingere pDeleteFile
spingere pFreeLibrary
macerare
fine
altro
iniziare
CloseHandle (THANDLE (4));
asm
lea eax, szModuleName
spingere exitcode
spingere 0
spingere eax
spingere pExitProcess
spingere hModule
spingere pDeleteFile
spingere pUnmapViewOfFile
macerare
fine
fine
fine;



Andrey   (2001-12-14 10:34) [6]

Signori, perché tanti trucchi, :) contattate le FAQ su http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988621694&n=15



paul_shmakov   (2001-12-15 01:14) [7]

2 Andrey:
Le domande frequenti non sono corrette Milz ha preso la decisione giusta. qui nel forum WinApi, abbiamo preso in considerazione questa decisione in dettaglio.



А вот   (2001-12-15 01:41) [8]

sulla "correttezza" - necessità di consultare con Digitman. A mio parere, si è interessato a questo e ha scavato più a fondo. Se IMHO vuole condividere. Quello che personalmente dubito, perché l'argomento è "scivoloso".



paul_shmakov   (2001-12-16 02:13) [9]

2 E qui:
:) Bene, se Digitman non vuole condividere, condividerò.

http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1004956210&n=5

vedi il link, beh, molto dettagliato per winnt / 2k



Pagine: 1 tutto il ramo

Forum: "Principale";
Archivio attuale: 2002.01.08;
Scarica: [xml.tar.bz2];

al piano di sopra









Memoria: 0.84 MB
Ora: 0.082 c
4-22477
Arte
2001-10-31 12:17
2002.01.08
Come vedere tutti i processi che eseguono tutti i programmi?


14-22408
FLIZ
2001-11-08 15:24
2002.01.08
È un errore in Delphi ?! : ((


14-22330
Alexey T.
2001-11-02 13:25
2002.01.08
AIUTO IL MIO !!!


3-21966
ZG
2001-12-03 12:42
2002.01.08
PERCHÉ QUESTO HA FATTO TUTTE LE MIE DOMANDE. Dovremo ripetere Come cercare il tipo nel campo: i soffitti sono scritti e ho bisogno di trovare


6-22295
Mamed
2001-10-10 09:15
2002.01.08
Importa da Excel





afrikaans albanese Arabic armeno Azero basco bielorusso Bulgarian catalano Cinese (semplificato) Cinese (tradizionale) croato Ceco danese Dutch Inglese estone filippina Finnish Francese
galiziano georgiano Tedesco greco Creolo haitiano ebraico hindi ungherese islandese Indonesian irlandese Italiano Giapponese Korean lettone lituano macedone Malay maltese Norwegian
persiano polacco Portoghese rumeno Russian serbo Slovak sloveno Spagnolo swahili Swedish Thai turco ucraino Urdu vietnamita gallese yiddish bengalese bosniaco
Cebuano esperanto Gujarati Hausa Hmong Igbo giavanese kannada khmer lao latino maori marathi mongolo nepali punjabi somalo tamil telugu Yoruba
zulù
Английский Francese tedesco italiano portoghese russo spagnolo