zapis pliku przy wyłaczaniu komputera

zapis pliku przy wyłaczaniu komputera
  • Rejestracja: dni
  • Ostatnio: dni
0

Chciałbym żeby moja aplikacja która używa memo zapisała jego zawartość do pliku gdy komputer będzie wyłączany.

Jak to zrobić? Proszę o proste wyjaśnienie gdyż jestem trochę zielony.

SI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 184
0

Zobacz tutaj: http://4programmers.net/Forum/Delphi_Pascal/94088-Delphi_zapis_+_zamykanie_systemu

a swój kod wstaw w wierszu 17

Kopiuj
Memo1.Lines.SaveToFile('Plik.txt');
pelsta
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 819
0

Czy wystarczyłoby ten kod wstawić w zdarzenie OnDestroy formy głównej?

_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
0

OnDestroy może okazać się za późno, lepiej OnCloseQuery.

pelsta
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 819
0

Hmm... Wydawało mi się, że sekwencja zakończenia życia formy jest taka:

OnCloseQuery -> OnClose -> OnDeactivate -> OnHide -> OnDestroy

Tylko czy te zdarzenia zostaną wywołane gdy system operacyjny będzie zamykany (bez ręcznego zamknięcia aplikacji).

_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
0

I dokładnie tak jest.
Z tym że niektóre kontrolki zaczynają już się "pakować i zmykać" tuż po OnCloseQuery, więc w OnDestroy możesz liczyć jedynie na te dane które zapisałeś do niezależnych składowych klasy.
Przy zamykaniu komputera z dowolnego powodu na OnCloseQuery dochodzi na 100% nawet jak wciskasz guzik zasilania (na starszych komputerach nie dojdzie bo u nich przycisk zasilania jest tym samym co wyciągnięcie wtyczki) zaś reszta komunikatów już nie koniecznie.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.