Вот такой вопросик, может кто знает:
Меняю (через рееестр, ветку HKCR, там где надо) иконку ассоциированного файла, ну допустим - sha.
Она как бы меняется, но проводник её ещё не видит, предпологая, что стоит прежняя. Если завершить его принудительно или перезапустить ОС - всё в поряде. Так вот, многие программы так делают, когда при смене ассоциации и смене, соответственно, его иконки - они делают некое обновление Explorer.
Так вот, название темы случайно не эта комманда, которую нужно послать системе, чтобы та обновилась? Если да, то, подскажите пожалуйста, кто знает, как это сделать. Если нет, то анологично
Этот топик читают: Гость
Ответов: 278
Рейтинг: 4
|
|||
карма: 0 |
|
Ответов: 278
Рейтинг: 4
|
|||
Ребят, ну не таите, пожалуйста, знаю, что вы знаете, что как-то можно..
|
|||
карма: 0 |
|
Ответов: 1305
Рейтинг: 29
|
|||
Как уведомить все приложения, что реестр был изменён?
Для этого можно послать в систему широковещательное сообщение WM_WININICHANGE, указав в нём, что изменения касаются реестра. Большинство приложений, работа которых связана с реестром, должны реагировать на сообщение WM_WININICHANGE. Пример:
PS: судя по заголовку топика, ты об этом и сам уже знаешь |
|||
карма: 0 |
| ||
файлы: 1 | code_8082.txt [150B] [634] |
Ответов: 278
Рейтинг: 4
|
|||
v258, я понимаю, что иногда я очень странный тип (уж какой есть), но не понимаю почему этот код не обновляет ассоциации?
1. IC - пишу: ... procedure THiAsmClass.doWinRefresh; begin SendMessage(HWND_BROADCAST,WM_WININICHANGE,0,LongInt(PChar('HKEY_CLASSES_ROOT\uufile'))); end; 2. Меняю параметр, который в текущем ключе задан по-умолчанию. 3. Смотрю при этом на проводник в упор на эту ассоциацию -> ничего, обновляю его по F5 -> ничего... Вопрос: что я делаю не так? |
|||
карма: 0 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Vanchila писал(а): Вопрос: что я делаю не так?Все. Начиная с того момента, когда стал думать, что написанного тобой достаточно, чтобы сделать то же самое у себя на компе Такой ход мыслей, действительно странный Vanchila писал(а): я очень странный тип (уж какой есть)А кому от этого хуже, интересно Ты чего-то делаешь Получаешь "не работает" Мы этого повторить не можем, недельные изыскания на предмет "угадать" - просто не хочется Ну и славненько |
|||
карма: 9 |
|
Ответов: 278
Рейтинг: 4
|
|||
Galkov писал(а): Ну и славненькоЭто не ответ |
|||
карма: 0 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Это ответ.
Для тех, кто в танке, поясняю: он дословно означает - "а вопроса-то и не было" Будет вопрос, можно будет говорить. Galkov писал(а): Мы этого повторить не можем, недельные изыскания на предмет "угадать" - просто не хочется |
|||
карма: 9 |
|
Ответов: 2125
Рейтинг: 159
|
|||
Vanchila писал(а): иконку ассоциированного файла...
комманда, которую нужно послать системе, чтобы та обновилась? Видимо
Не всё так просто оказалось... Вот рабочий пример:
------------ Дoбавленo: Можно, наверное, только эксплореру посылать сообщения - быстрее должно получиться. |
|||
карма: 1 |
|
Ответов: 278
Рейтинг: 4
|
|||
tsdima, спасибо тебе, брат, понял меня, в отличии от некоторых (недельные изыскания, "угадать"). Немножко "Педальный вариант", конечно, получился (/2, Notify, back, Notify), НО - работает А это как раз то, о чём я просил
v258, непонял с 'RegistrySection' и не работает, но всё равно благодарю Ну и конечно господин - Galkov, пожалуйста, извини меня за мою глупость, я понял свою ошибку, в следующий раз сразу выложу исходный пример (обычно я так и делал, но в этот раз предположил, что меня поймут и на словах (некоторые так и сделали)). |
|||
карма: 0 |
|
9