Control Panel applet
- From
- Alex Martinov (2:5030/1228.11)
- To
- All ()
- Date
- 2001-08-03T18:17:42Z
- Area
- SU.WINDOWS.NT.PROG
* Originally in SU.WIN32.PROG
* Crossposted в SU.WIN95.PROG
* Crossposted в SU.WINDOWS.PROG
* Crossposted в SU.WINDOWS.NT.PROG
Как поживаете, All ?
Возникли проблемы при создании сабжа. А именно - не получается загрузить ресурсы из cplки. Пробовал строку и диалог - LoadString и DialogBox. Пробовал им передавать Hinstance полученный в DllEntryPoint и инстанс полученный как GetModuleHandle("my.cpl"). Они кстати совпадают. Также пробовал подсовывать 0 и GetWindowLong(hwndCPl, GWL_HINSTANCE). Результат тот же. LoadString возвращает ощибку 1814, DialogBox - -1. При этом если я делаю обычный экзешник, то все отрабатывает нормально. Далее, было замечено, что инстанс модуля первый раз при запуске панели управления равен 4XXXXXXX, а потом, при открытии моей иконки он равен 8XXXXXX, те адрес загрузки модуля на порядок ниже. Видимо с этим и связано то, что ресурсы не грузяться. В МСДН нашел раздел про эти аплеты, там они выводят диалог при помощи DialogBox и инстанс модуля содержащего шаблон диалога получают как GetModuleHandle.
Данные результаты были получены в Win98 и в Win2000. В WinNT4 панель управления в упор не нашла моего аплета, хотя он был скопирован не только в System32, но и раскидан по всем подходящим каталогам ж-)
Ну вот вроде проблему вполне осветил.
Поможите чем можете плс ж_)
C уважением, Alex Martinov.
--- УТВЕРЖДАЮ. MSG-редактор капитан 2.5 ранга Голд Дедович фор ДОС
* Origin: У кого что сбоит, тот о том и говорит (2:5030/1228.11)