:: |
Autor |
Poruka |
Doktor ~Sanjicino*slculence~
![~Sanjicino*slculence~ ~Sanjicino*slculence~](/images/ranks/stars_orange.gif)
![](images/avatars/1176565723449c4a8bc1d54.jpg) |
Godine: 38
Datum registracije: 17 Nov 2005 Poruke: 4264 Mesto: Novi Sad
![blank.gif](images/flags/blank.gif)
|
|
Ova mala funkcija služi za “ubijanje” nekog DLLa koji je aktivan u memoriji računara. Navodjenjem imena dinamičke biblioteke koju želite da eliminišete traženi DLL se briše iz memorije a njegovo izvršavanje automatski zaustavlja.
U slučaju da traženi DLL ne postoji, tj. nije u operativnoj memoriji, funkcija vraća kao režultat False, u svakom drugom slučaju funckija je korektno izvršena a na njenom izlazu imamo logičku vrednost True!
Praktična upotreba ove funkcije je višestruka a najviše je koriste sistemski programi, zaštite i anti virusi. Postoje još neke mogućnosti ali to nije u skladu sa pravilima ovog foruma pa ću Vam to objasniti na PP ili mailom.
Code: |
function KillDll(aDllName: string): Boolean;
var
hDLL: THandle;
aName: array[0..10] of char;
FoundDLL: Boolean;
begin
StrPCopy(aName, aDllName);
FoundDLL := False;
repeat
hDLL := GetModuleHandle(aName);
if hDLL = 0 then
Break;
FoundDLL := True;
FreeLibrary(hDLL);
until False;
if FoundDLL then
MessageDlg('Uspelo je!', mtInformation, [mbOK], 0)
else
MessageDlg('DLL nije pronadjen!', mtInformation, [mbOK], 0);
end;
|
|
_________________ ~*~Vojim svoje srculence najvise na svetu ~*~ :322:
![](http://www.domaci.de/sanjica_021/doktor/banner.gif) |
|
|
|
![](templates/subDomaci/images/spacer.gif) |
|
|
Vi ne možete otvarati nove teme u ovom forumu Vi ne možete odgovarati na teme u ovom forumu Vi ne možete menjati Vaše poruke u ovom forumu Vi ne možete brisati Vaše poruke u ovom forumu Vi ne možete glasati u anketama u ovom forumu Vi ne možete postavljati fajlove u ovom forumu Vi ne možete preuzeti fajlove sa ovog foruma
|
|