![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Изменения в Win.ini [D7, Win95/98]
dataMaster © (2003-06-09 12:06:00)Всем привет! Кто подскажет, каким образом можно послать в Windows сообщение об изменениях в файле win.ini, чтобы ОС его перечитала и изменения вступили в силу? Если можно, приведите примерчик. Спасибо.
Игорь Шевченко (2003-06-09 15:28:00) [1]The system sends the WM_SETTINGCHANGE message to all top-level windows when the SystemParametersInfo function changes a system-wide setting. The system sends this message only if the SystemParametersInfo caller specifies the SPIF_SENDCHANGE flag.
An application can send WM_SETTINGCHANGE to all top-level windows when it makes changes to system parameters. For example, you can send this message after a call to the WriteProfileString, WriteProfileSection, or SetLocaleInfo functions, or after making changes to system parameters in the registry.
The WM_SETTINGCHANGE message is the same as the older WM_WININICHANGE message.
WM_SETTINGCHANGE
wParam = wFlag; // system-wide parameter flag
lParam = (LPARAM) (LPCTSTR) pszSection; // name of changed section or registry
Song (2003-06-09 15:01:00) [2]Надо дать всем окнам сообщение о том, что win.ini обновился, и те, котором он нужен перечитают его автоматически. На этом основан и принцип смены обоев. Меняется параметр в реестре и подаётся сообщение о том, что параметр изменён. После этого explorer автоматически перечитывает это значение.
dataMaster (2003-06-09 14:05:00) [3]2Digitman © (09.06.03 12:34)
>каждая строчка которой обрабатывается строго индивидуальным образом только на стадии инимциализации ОС
Но ведь через панель управления можно оперативно менять язык, режим отображения календаря и т.д. и изменения тут же входят в силу. ОС изменяет настройки и записывает их в ini-файл, а затем перечитывает его.
2Song © (09.06.03 12:43)
>См. SystemParametersInfo()
Посмотрел. Нашел на http://www.dore.ru/msdn/read_msdn.pl/f/0/n/SystemParametersInfo/t/f/x/index.htmlподробное описание параметров. Там есть возможность переинициализации win.ini, но она для wallpaper"а, про что и в FAQ"ах написано. А про обычное перечитывание win.ini я что-то ничего не обнаружил. Или я что-то недосмотрел...
Помогите, пожалуйста...
Song (2003-06-09 12:43:00) [4]См. SystemParametersInfo()
Digitman (2003-06-09 12:34:00) [5]никаким образом.
win.ini содержит абсолютно разнородную инф-цию, каждая строчка которой обрабатывается строго индивидуальным образом только на стадии инимциализации ОС.