![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как изменить иконку для какого-либо диска в проводнике?
Alexander © (2002-06-09 01:39:00)?
Севостьянов Игорь (2002-06-10 13:43:00) [1]Небольшая поправка... Надо выставить значения бита в 0 для диска у которого должна быть обработана инфа из autorun.inf
Лучше выставить значение 0 - то есть обрабатывать для всех типов устройств
Севостьянов Игорь (2002-06-10 13:13:00) [2]Да это та, но есть одно но...
Насколько я смог разобраться все зависит от одного ключика в реестре... Вот статья http://support.microsoft.com/support/kb/articles/q136/2/14.asp
Так вот там говориться что в ключе HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\"NoDriveTypeAutoRun"
содержиться бинарное значение для каких дисков отображать эту инфу из autorun.inf
Type Bit
DRIVE_UNKNOWN 0
DRIVE_NO_ROOT_DIR 1
DRIVE_REMOVABLE 2
DRIVE_FIXED 3
DRIVE_REMOTE 4
DRIVE_CDROM 5
DRIVE_RAMDISK 6
Стандарт значение 0x95 (149) это биты 0, 2, 4 and 7 are therefore set, which means that drive types DRIVE_UNKNOWN, DRIVE_REMOVEABLE, and DRIVE_REMOTE don"t use AutoPlay information (Bit 7 is set to cover future device types.)
Если поставить значение для 5 бита, то увидете, что для CD-ROM изменилась иконка (если авторан присутствовал)...
И еще надо послать мессагу WM_DEVICECHANGE, что изменилась кофигурация для Device - смотри:
The WM_DEVICECHANGE device message notifies an application of a change to the hardware configuration of a device or the computer.
A window receives this message through its WindowProc function.
LRESULT CALLBACK WindowProc(
HWND hwnd, // handle to window
UINT uMsg, // WM_DEVICECHANGE
WPARAM wParam, // device-change event
LPARAM lParam // event-specific data
);
Вот такие дела - если я не прав... Докажите это...
Alexander (2002-06-10 09:50:00) [3]я так пробовал на Windows 2000 и Windows XP - не работает!
Dmitry Sheenok (2002-06-10 04:43:00) [4]создаёшь в корне диска autorun.inf:
[autorun]
icon=icon.ico