ExE selbst löschen

Für allgemeine Fragen zur Programmierung mit PureBasic.
Gubbie247
Beiträge: 32
Registriert: 10.10.2004 13:23

ExE selbst löschen

Beitrag von Gubbie247 »

Hallo.
Ich möchte eine Botschaft a la "Mission Impossible"(diese Nachricht zerstört sich nach 5 Sekunden selbst) machen. Gibt es eine Möglichkeit. Das Programm zu löschen?
Benutzeravatar
benny
Beiträge: 383
Registriert: 29.08.2004 09:18
Wohnort: Am Ende des www's
Kontaktdaten:

Beitrag von benny »

Hast Du schon mal bei PureArea gesucht :?:

Vielleicht hilft Dir das :

http://www.purearea.net/pb/german/sr_vi ... OwnExe1.pb
So long,
benny!
.
nur t0te f1sche schw1mmen m1t dem str0m - 00100 !
Benutzeravatar
nco2k
Beiträge: 892
Registriert: 08.09.2004 23:13

Beitrag von nco2k »

hmm... bei mir passiert da nix. :?

c ya,
nco2k
~|__/
..o.o.. <--- This is Einkaufswagen. Copy Einkaufswagen into your signature to help him on his way to world domination.
JanFredi
Beiträge: 44
Registriert: 25.02.2005 19:49
Wohnort: Dortmund
Kontaktdaten:

Beitrag von JanFredi »

Hi
In der Demo 3.90 von PureBasic geht der Code nicht.
:(
Benutzeravatar
Franky
Beiträge: 1132
Registriert: 29.08.2004 16:31
Wohnort: Münsterland
Kontaktdaten:

Beitrag von Franky »

Mit der Demo kann man keine Apis (also funktion_( )) nutzen
Falsch zugeordnetes Zitat des Tages: "O'zapft is" - Edward Snowden :)
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

Wenn du die die alte GetExeName() Prozedur mit dieser hier austauscht:

Code: Alles auswählen

Procedure.s GetExeName()
    DefType.l libKernel32, ModulhWnd
    DefType.s AppName
    
    libKernel32 = OpenLibrary(#PB_Any, "kernel32.dll")
    If libKernel32 <> 0 
        AppName   = Space(256) 
        ModulhWnd = CallFunction(libKernel32, "GetModuleHandleA", 0)
        CallFunction(libKernel32, "GetModuleFileNameA", ModulhWnd, @AppName, 256) 
        CloseLibrary(libKernel32)

        ProcedureReturn AppName
    EndIf
EndProcedure
Müsste es sogar mit der Demo funktionieren. Mit dieser Funktion öffnest du die DLL Kernel32.dll, in der die meisten APIs stehen und rufst dann die 2 Funktionen manuel auf. Das ist zwar etwas langsamer, als wenn das PB macht aber es dürfte reichen ;).
Bild
Antworten