Seite 1 von 1

ExE selbst löschen

Verfasst: 25.02.2005 18:53
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?

Verfasst: 25.02.2005 19:07
von benny
Hast Du schon mal bei PureArea gesucht :?:

Vielleicht hilft Dir das :

http://www.purearea.net/pb/german/sr_vi ... OwnExe1.pb

Verfasst: 26.02.2005 04:12
von nco2k
hmm... bei mir passiert da nix. :?

c ya,
nco2k

Verfasst: 26.02.2005 19:22
von JanFredi
Hi
In der Demo 3.90 von PureBasic geht der Code nicht.
:(

Verfasst: 26.02.2005 19:36
von Franky
Mit der Demo kann man keine Apis (also funktion_( )) nutzen

Verfasst: 26.02.2005 22:37
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 ;).