Nach Hause
Top.Mail.Ru Yandeks.Metrika
Forum: "Haupt";
Aktuelles Archiv: 2002.01.08;
Herunterladen: [xml.tar.bz2];

Nach unten

KillSelf Finden Sie ähnliche Zweige


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

Wie lässt man ein Programm Selbstmord begehen? Der Strom ist nicht beim Neustart, sondern in Echtzeit!



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

Selbstmord - bedeutet, von der Schraube zu entfernen?
Sie muss nur noch in Erinnerung bleiben, von wo sie sich ruhig von der Schraube wischt und dann zu sich selbst sagt: Schließen.



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

Ja, von der Schraube entfernen. Aber er will sich nicht selbst löschen - die Sanddatei ist gesperrt (offensichtlich ist nicht alles in seinem Speicher, aber sie lädt und hält sie offen) :(



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

Na natürlich! Wenn nicht dringend, dann schreibe ich als (jetzt beschäftigt), bis ich mich nur noch an die Reste der dosovsky-Optionen aus dem "Kampf im Gedächtnis" erinnere.



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

Ok, es wird Zeit sein, werfen Sie es an gu-gu-gu2@mtu-net.ru oder schreiben Sie es hier.



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

Ich kann mich nicht erinnern, wo ich ausgegraben habe, beendet das Programm und entfernt es von der Schraube.
Erzählen Sie mir, wie es funktioniert, insbesondere interessiert mich das Auftreten von API-Aufrufen. Die Software hat gezeigt, dass es sich nicht nur um einen Übergang zu einer Funktionsadresse handelt, sondern um einige Verzerrungen in kernel32, und dann wird api selbst aufgerufen, und so weiter. Was ist das und wie werden die Parameter übertragen?

verwendet
Fenster;

Prozedur DeleteSelf;
var hModule: THandle;
szModuleName: Array [0..MAX_PATH] von char;
hKrnl32: THandle;
pExitProcess, pDeleteFile, pFreeLibrary, pUnmapViewOfFile: Zeiger;
ExitCode: UINT;
beginnen
hModule: = GetModuleHandle (null);
GetModuleFileName (hModule, SzModuleName, Größe von (SzModuleName));
hKrnl32: = GetModuleHandle ("Kernel32");
pExitProcess: = GetProcAddress (hKrnl32, "ExitProcess");
pDeleteFile: = GetProcAddress (hKrnl32, "DeleteFileA");
pFreeLibrary: = GetProcAddress (hKrnl32, "FreeLibrary");
pUnmapViewOfFile: = GetProcAddress (hKrnl32, "UnmapViewOfFile");
ExitCode: = system.ExitCode;
if ($ 80000000 und GetVersion ()) <> 0 dann
// Win95, 98, Me
asm
lea eax, szModuleName
Exitcode drücken
drücke 0
drücken Sie eax
pExitProcess drücken
hModule drücken
Drücken Sie pDeleteFile
pFreeLibrary drücken
ret
Ende
sonst
beginnen
CloseHandle (THANDLE (4));
asm
lea eax, szModuleName
Exitcode drücken
drücke 0
drücken Sie eax
pExitProcess drücken
hModule drücken
Drücken Sie pDeleteFile
pUnmapViewOfFile drücken
ret
Ende
Ende
end;



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

Meine Herren, warum so viele Tricks? :) wenden Sie sich an die FAQ unter http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988621694&n=15



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

2 Andrey:
FAQ ist nicht richtig. Milz hat die richtige Entscheidung getroffen. Hier im WinApi-Forum haben wir diese Entscheidung ausführlich betrachtet.



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

über die "Richtigkeit" - müssen Sie sich mit Digitman beraten. Meiner Meinung nach hat er sich dafür interessiert und tiefer gegraben. Wenn IMHO möchte er teilen. Was ich persönlich bezweifle, weil das Thema "rutschig" ist.



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

2 Und hier:
:) Nun, wenn Digitman nicht teilen will, werde ich es teilen.

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

Siehe den Link für Winnt / 2k



Seiten: 1 ganze Branche

Forum: "Haupt";
Aktuelles Archiv: 2002.01.08;
Herunterladen: [xml.tar.bz2];

nach oben









Speicher: 0.84 MB
Zeit: 0.025 c
1-22196
T2
2001-12-16 07:18
2002.01.08
Desktop aus


14-22374
Nikols
2001-11-01 16:03
2002.01.08
Wie ruhen sich Programmierer aus? Und wann


4-22473
amamed_3071
2001-11-02 13:46
2002.01.08
Epson Printer-Befehle


3-21964
Nickolaus
2001-12-05 22:09
2002.01.08
Mit BatchMove.batUpdate-Fehler.


1-22049
Greenrul
2001-12-17 18:34
2002.01.08
Как





Afrikanisch Albanien Arabisch Armenisch Aserbaidschanisch Baskisch Weißrusse Bulgarian katalanisch Chinesisch (vereinfacht) Chinesische Tradition) kroatisch Tschechisch Dänisch Dutch Englisch estnisch Philippinisch Finnish Französisch
Galicisch Georgisch Deutsch Griechisch haitian Creole Hebräisch Hindi ungarisch isländisch Indonesian irisch Italian Japanisch Koreanisch lettisch litauisch Makedonisch Malay Maltesisch Norwegian
persisch Polnisch Portugiesisch Rumänisch Russisch serbisch Slovakisch Slowenisch Spanisch Suaheli Swedish Thai Türkisch Ukrainisch Urdu Vietnamesisch Walisisch Jiddisch Bengalisch bosnisch
cebuano Esperanto Gujarati Hausa Hmong igbo Javanisch kannada khmer Laotisch Lateinisch Maorisch Marathi Mongolisch nepali Pandschabi Somalisch Tamilisch Telugu Yoruba
Zulu
Английский Französisch Deutsch Italienisch Португальский Russisch Spanisch