Форум
Написать нам
  • Страница 1 из 1
  • 1
Модератор форума: as-master  
Форум MMB » Всё о программе Multimedia Builder » Общие вопросы по MMB » записать значение при выходе
записать значение при выходе
usermmbuildДата: Четверг, 25 Сентября 2008, 04:55 | Сообщение # 1
Любопытный
Группа: Проверенные
Сообщений: 48
Репутация: 0
Награды: 0
Статус: Offline
Подскажите, вот я хочу, чтобы при завершении windows моя прога успевала записывать значение в реестр, чтобы при следующем запуске прога выдала: мол я завершила в прошлый раз своё существование успешно? Заранее спасибо.
 
DEMBELДата: Четверг, 25 Сентября 2008, 07:31 | Сообщение # 2
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
используй команды SaveVariable и LoadVariable для сохранения и загрузки переменных из реестра
подробнее см. справку




Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
as-masterДата: Четверг, 25 Сентября 2008, 12:08 | Сообщение # 3
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
Quote (usermmbuild)
при завершении windows моя прога успевала...

При принудительном завершении виндовс прога НИЧЁ не будет успевать. Как и другие открытые программы.

Другое дело - при закрытии программы можно создать скрипт с именем CBK_EXIT, который должен лежать на верхнеймастер-странице и будет выполняться всегда при закрытии программы. То есть, когда программу закрывают, выполнится весь сценарий из этого скрипта. Вот в нем и можно прописать запись нужных значений в реестр. А при открытии программы в скрипте старта страницы написать загрузку значений из реестра.

Но... Я бы не советовал юзать реестр пользователя - некоторые могут и обидеться smile Гораздо проще и безопаснее писать нужные параметры в файл настроек, и при загрузке считывать из него. Файл настроек можно сделать со стандартным расширением ini и положить в каталог с программой, а если нужно скрыть его от посторонних глаз - можно запихать в системную папку с любым расширением и именем, так что простому смертному трудно будет догадаться о его существовании.


Да пребудет с вами ММВ!
 
as-masterДата: Четверг, 25 Сентября 2008, 12:52 | Сообщение # 4
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
Насколько я понимаю задачу, если программу закрыли нормально, то она завершилась корректно, а если она завершилась принудительным убитием процесса, то и запись об этом будет другая.

Вот я сделал простой примерчик. Если программу закрыть нормальным способом, то при следующем открытии она выдаст сообщение "Последний сеанс работы завершен успешно". А если же ее убить тасккилом, то при следующем запуске она выдаст мессагу "Программа в последнем сеансе работы завершилась некорректно!".

Пример лови. Кстати, сделан как раз не через реестр, а через файл.

Прикрепления: usermmbuild.mbd (2.6 Kb)


Да пребудет с вами ММВ!
 
usermmbuildДата: Четверг, 25 Сентября 2008, 15:00 | Сообщение # 5
Любопытный
Группа: Проверенные
Сообщений: 48
Репутация: 0
Награды: 0
Статус: Offline
Большое спасибо ! Очень просто biggrin
 
as-masterДата: Четверг, 25 Сентября 2008, 15:26 | Сообщение # 6
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
Quote (usermmbuild)
Очень просто

Гы... да, когда владеешь темой - то просто :)
Вобщем, рад, если помогло.

PS. Кстати, я тут подумал... этот пример и для сайта пригодится.
Почему? Например, при выходе программа должна скриптом CBK_EXIT сохранять
важные данные, нужные для ее следующего сеанса работы. А если работа завершилась
некорректно - типа комп завис - то скрипт этот, естественно, не выполнится. Вот тут-то
данный примерчик и пригодится - он точно проконтролирует, как завершилась работа
приложения. И главное - без насилования рестра.


Да пребудет с вами ММВ!
 
Форум MMB » Всё о программе Multimedia Builder » Общие вопросы по MMB » записать значение при выходе
  • Страница 1 из 1
  • 1
Поиск: