Обновление рабочего стола (значки)

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
-=TsA=-
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 142
Зарегистрирован: 21.09.2004 (Вт) 14:32
Откуда: Татарстан, Заинск

Обновление рабочего стола (значки)

Сообщение -=TsA=- » 30.10.2009 (Пт) 15:54

Правкой реестра добавляю/убираю стандартные значки (Мой компьютер, Сетевое окружение, Корзина, и т.д.), какой функцией можно воспользоваться чтобы обновить рабочий стол?

PS. Поиск вернул 2 темы: http://bbs.vbstreets.ru/viewtopic.php?f=1&t=21974 и http://bbs.vbstreets.ru/viewtopic.php?f=1&t=1016 но они обновляют только фоновый рисунок.

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Re: Обновление рабочего стола (значки)

Сообщение Antonariy » 30.10.2009 (Пт) 17:25

Можно воспользоваться уведомлялкой о регистрации файлового расширения, но при этом обновятся все окна Explorer.exe.
Код: Выделить всё
Private Declare Sub SHChangeNotify Lib "shell32.dll" (ByVal wEventId As Long, ByVal uFlags As Long, dwItem1 As Any, dwItem2 As Any)

Const SHCNE_ASSOCCHANGED = &H8000000
Const SHCNF_IDLIST = &H0&

Call SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, 0, 0)
Лучший способ понять что-то самому — объяснить это другому.

-=TsA=-
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 142
Зарегистрирован: 21.09.2004 (Вт) 14:32
Откуда: Татарстан, Заинск

Re: Обновление рабочего стола (значки)

Сообщение -=TsA=- » 30.10.2009 (Пт) 18:05

Спасибо, это то что нужно.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Обновление рабочего стола (значки)

Сообщение Хакер » 30.10.2009 (Пт) 19:52

Только вот код неправильный, не соответствующий документации, и способный когда-нибудь вызвать крах.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

awl100Alex
Постоялец
Постоялец
 
Сообщения: 355
Зарегистрирован: 29.01.2008 (Вт) 15:19
Откуда: Украина

Re: Обновление рабочего стола (значки)

Сообщение awl100Alex » 31.10.2009 (Сб) 23:24

Хакер писал(а):Только вот код неправильный, не соответствующий документации, и способный когда-нибудь вызвать крах.

Ты имеешь в виду некоторые параметры Any на входе в функцию?
Тогда вот так...
Код: Выделить всё
...
Call SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, ByVal 0, ByVal 0)
...

...наверное, будет правильно?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Обновление рабочего стола (значки)

Сообщение Хакер » 31.10.2009 (Сб) 23:32

TDC к нулям бы приписать соответствющие.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

awl100Alex
Постоялец
Постоялец
 
Сообщения: 355
Зарегистрирован: 29.01.2008 (Вт) 15:19
Откуда: Украина

Re: Обновление рабочего стола (значки)

Сообщение awl100Alex » 01.11.2009 (Вс) 0:59

А что означает TDC?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Обновление рабочего стола (значки)

Сообщение Хакер » 01.11.2009 (Вс) 1:01

Type declaration character.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Обновление рабочего стола (значки)

Сообщение iGrok » 01.11.2009 (Вс) 3:09

Обобщим, дабы ни у кого не осталось вопросов: Call SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, ByVal 0&, ByVal 0&).
label:
cli
jmp label

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Re: Обновление рабочего стола (значки)

Сообщение Antonariy » 01.11.2009 (Вс) 11:49

Да-да, буквально в соседней теме на эти грабли наступил.
Лучший способ понять что-то самому — объяснить это другому.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 88

    TopList