Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
[C++]Selbstzerstörung
- Ersteller J!0X
- Erstellt am
pfORchT
Ensign
- Registriert
- Juli 2005
- Beiträge
- 213
Du lässt von deinem Programm eine Bat-Datei schreiben, die solange versucht deine exe zu löschen, bis es geht - und sich anschließend selber löscht (bei BATs gehts ja)
hier der Inhalt der Bat, die dein Programm schreiben muss:
Sobald sich deine Exe zerstören will:
1) Bat schreiben (natürlich mit angepassten pfaden)
2) Bat ausführen (>Bat versucht zu löschen, geht aber nicht - aber läuft weiter)
3) Programm beenden
4) Bat kann löschen, löscht exe und dannach sich selbst
Fertig
hier der Inhalt der Bat, die dein Programm schreiben muss:
Code:
@echo off
:Marke
Del "c:\SelfDestruct.exe"
If Exist "c:\SelfDestruct.exe" Goto Marke
Del "c:\Kill.bat"
Sobald sich deine Exe zerstören will:
1) Bat schreiben (natürlich mit angepassten pfaden)
2) Bat ausführen (>Bat versucht zu löschen, geht aber nicht - aber läuft weiter)
3) Programm beenden
4) Bat kann löschen, löscht exe und dannach sich selbst
Fertig
pfORchT
Ensign
- Registriert
- Juli 2005
- Beiträge
- 213
Ich hab keine Ahnung, wie das in C++ geht - ich kann sowas nur in VB.
Aber wozu willst du die verstecken - das geschieht alle schneller als eine sekunde - so schnell ist der explorer garnicht aktualisiert, dass die bat datei überhaupt angezeigt wird.
Aber wozu willst du die verstecken - das geschieht alle schneller als eine sekunde - so schnell ist der explorer garnicht aktualisiert, dass die bat datei überhaupt angezeigt wird.
Hallo,
ich glaube eher nicht das man eine Batch Datei verstecken kann. In C++ und sicher auch VB kann man die Taskbar anweisen keinen Eintrag anzuzeigen. Analog zum Taskmanager, siehe Menüpunkt "ausblenden wenn minimiert", sowie das eigene Fenster unsichtbar machen.
MfG
Arnd
ich glaube eher nicht das man eine Batch Datei verstecken kann. In C++ und sicher auch VB kann man die Taskbar anweisen keinen Eintrag anzuzeigen. Analog zum Taskmanager, siehe Menüpunkt "ausblenden wenn minimiert", sowie das eigene Fenster unsichtbar machen.
MfG
Arnd
Zuletzt bearbeitet:
pfORchT
Ensign
- Registriert
- Juli 2005
- Beiträge
- 213
in VB lässt sich das Batch-Programm komplett versteckt (d.h. das einzige was von dem Batch zu sehen ist, ist ein ganz kurzer Eintrag unter Taskmanager-Prozesse) folgendermaßen starten:
Shell("Batchdatei.bat", vbHidden)
...wie es in C++ geht, weiß ich net - aber geht bestimmt mit nem API aufruf, etc.
Shell("Batchdatei.bat", vbHidden)
...wie es in C++ geht, weiß ich net - aber geht bestimmt mit nem API aufruf, etc.
Das geht in C++ auch mit ShellExecute. Da gibt es den Parameter SW_HIDE bei nShowCmd.
Muss aber eben selber programmiert werden.
Dann würde ich aber keine Batchdatei mehr nehmen sondern selber was programmieren.
Wenn Dein Programm gelöscht werden soll, wird zuerst mit ShellExecute ein zweites Programm gestartet das unsichtbar ist.
Danach beendet sich das zu löschende Programm.
Dann kann das soeben gestartete Programm das jetzt nicht mehr laufende Programm problemlos löschen.
MfG
Arnd
Muss aber eben selber programmiert werden.
Dann würde ich aber keine Batchdatei mehr nehmen sondern selber was programmieren.
Wenn Dein Programm gelöscht werden soll, wird zuerst mit ShellExecute ein zweites Programm gestartet das unsichtbar ist.
Danach beendet sich das zu löschende Programm.
Dann kann das soeben gestartete Programm das jetzt nicht mehr laufende Programm problemlos löschen.
MfG
Arnd
Zuletzt bearbeitet:
Die Frage ist halt warum er das ganze überhaupt machen will und ob es um ein komplettes Aufräumen geht.
Eine Deinstallation macht man eigentlich über die Systemsteuerung.
Oder soll das ein Kopierschutz werden?
Die Bat Datei hat sicher den Vorteil das man sie einfach zur Laufzeit erzeugen kann.
Aber man sieht es eben auch, das da was gemacht wird.
Aber man kann ja beide Ansätze mischen.
Die Bat Datei wird einfach mit Shellexecute und Parameter SW_HIDE gestartet.
Dann geht beides.
MfG
Arnd
Eine Deinstallation macht man eigentlich über die Systemsteuerung.
Oder soll das ein Kopierschutz werden?
Die Bat Datei hat sicher den Vorteil das man sie einfach zur Laufzeit erzeugen kann.
Aber man sieht es eben auch, das da was gemacht wird.
Aber man kann ja beide Ansätze mischen.
Die Bat Datei wird einfach mit Shellexecute und Parameter SW_HIDE gestartet.
Dann geht beides.
MfG
Arnd
Ähnliche Themen
- Antworten
- 7
- Aufrufe
- 1.916
- Antworten
- 11
- Aufrufe
- 1.352
- Antworten
- 3
- Aufrufe
- 347