Als ik mijn GUI laad, laad hij ook de supervisor (een dll die het programma coordineerd). Nou is er ook een moment dat de supervisor het hele programma wil afsluiten. Maar hoe doe ik dat? dus vanuit de DLL de EXE waarin de supervisor is gedefinieerd te sluiten, dus het hele programma af te sluiten
Erm de DLL draait in de context van de EXE dus zaagt z'n eigen poten onder z'n stoel vandaan. Kan dus niet. Je zult die supervisor in een apart proces moeten draaien via COM, een service, of een eigen slimme executable.
Verwijderd
Een vraagje dat hierop ingaat:
Hoe kan ik een EXE patchen vanuit zichzelf? Of op een of andere manier een update van dll, van exe uitvoeren, van binnen in het programma?
Ook via COM?
En wat bedoel je juist met slimme executable?
Hoe kan ik een EXE patchen vanuit zichzelf? Of op een of andere manier een update van dll, van exe uitvoeren, van binnen in het programma?
Ook via COM?
En wat bedoel je juist met slimme executable?
werkt PostQuitMessage (0) niet gewoon?
of anders ExitProcess ()
of anders ExitProcess ()
[ Voor 28% gewijzigd door .oisyn op 10-03-2003 12:43 ]
Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.
Een exe kan zichzelf niet patchen, het bestand is locked tijdens executie. Tevens zijn alle gebruikte DLL's locked tijdens executie tot het moment dat alle references vrijgegeven zijn.Verwijderd schreef op 10 March 2003 @ 12:39:
Een vraagje dat hierop ingaat:
Hoe kan ik een EXE patchen vanuit zichzelf? Of op een of andere manier een update van dll, van exe uitvoeren, van binnen in het programma?
Zie bijvoorbeeld WinAmp dat 2 processen in taskmgr heeft lopen: winamp.exe en winampa.exe. De 2e (met de A van Agent) houdt hotkeys in de gaten die Winamp zelf kunnen starten, draait een notifyicon in de systray etc. Omdat het een ander proces is kan het probleemloos de exe van winamp zelf updaten indien nodig en zo.En wat bedoel je juist met slimme executable?
Verwijderd
Hmmm ja, dus zoals ik het altijd al gedaan heb
een updater die (als het andere process lopende is) het andere process killed. Patched & dan herstart.
Het is al gelukt, heb de supervisor met WithEvents gedeclareerd.
Maar ik wil me nu verdiepen in com+/dcom. Als ik binary compatible mode en remote server files gebruik i VB, si dat dat com+ of gewoon com??
Ik wil via netwerk werken dus com+ gebruiken (das nieuwste).
Weet iemand hier een goede tutorial over? Ik had heir al een voorbeeld gevonden, die de server tijd zou weergeve en de lokale tijd. Alleen die werkte bij mij al iet want server tijd kreeg ik zelfde tijd als locale tijd.
Maar ik wil me nu verdiepen in com+/dcom. Als ik binary compatible mode en remote server files gebruik i VB, si dat dat com+ of gewoon com??
Ik wil via netwerk werken dus com+ gebruiken (das nieuwste).
Weet iemand hier een goede tutorial over? Ik had heir al een voorbeeld gevonden, die de server tijd zou weergeve en de lokale tijd. Alleen die werkte bij mij al iet want server tijd kreeg ik zelfde tijd als locale tijd.
Je zit niet toevallig op een computer die al automatisch z'n tijd synchroniseert tegen de domain controller of een andere NTP-server?robbertb schreef op 10 March 2003 @ 13:43:
Alleen die werkte bij mij al iet want server tijd kreeg ik zelfde tijd als locale tijd.
Pagina: 1