Tavoitteena siinä tilanteessa, kun sovelma heitetään ulos väkisin tehtävien hallinnan kautta, on saadaan tehtyä silti tietyt asiat, kuten vapautettua lukot. Miten se olisi hyvä toteuttaa? Formien FormClosing, jota käytämme muuten, ei tunnu noteeraavan tilannetta.
Nämä väkisin alasajot tullee pääsääntöisesti tilanteissa, joissa sovelma jää jumiin sen käyttämien palvelujen kohdalla (asiakkaan mukaan esim. käytetty verkkokirjoitin ei olekaan verkossa tai sovelmaan integroitu toinen ohjelma on poissa pelistä).
Toinen, miten olen yrittänyt ajatella ratkaisua, mutten ole päässyt siinä pidemmälle, olisi, jos käsittelemättömät virhetilanteet saataisiin edes application-tasolla kiinni ja siinä tilanteessa tehtäisiin pakolliset jutut ja käynnistettäisiin sovelma uudelleen. Onko tästä ajatuksia?
eventit eivät triggaa, koska ohjelmasi on juuri suljettu.
konsoliproggiksessa triggaa CTRL_CLOSE_EVENT, windows puolella WM_CLOSE.
voithan tehdä vaikka wrapperin softallesi, eli käynnistät ohjelmasi processina, jolloin näät Process.Exited:stä onko ohjelma pakkosuljettu.
groovyb kirjoitti:
konsoliproggiksessa triggaa CTRL_CLOSE_EVENT, windows puolella WM_CLOSE.
Windows puolella tuo viesti taitaa tehtävien hallinnan kautta suljettaessa olla WM_DESTROY.
Eikös se riipu siitä suljetaanko tehtävienhallinnan kautta taustaprosessi vai applikaatio (WM_DESTROY ja WM_CLOSE)?
Aihe on jo aika vanha, joten et voi enää vastata siihen.