Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.07;
Скачать: CL | DM;

Вниз

Есть dll с ресурсами. Подскажите, как можно прочитать строковые   Найти похожие ветки 

 
Alexander ©   (2002-09-24 13:45) [0]

ресурсы и ресурсы меню?


 
MBo ©   (2002-09-24 13:56) [1]

для работы с ресурсами есть куча функций, начиная с FindResource, LoadMenu,LoadString
Кое-что инкапсулировано в TResourceStream


 
Alexander ©   (2002-09-24 14:59) [2]

Спасибо, разобрался. Только вопрос по LoadMenu:
там второй параметр:
Points to a null-terminated string that contains the name of the menu resource. Alternatively, this parameter can consist of the resource identifier in the low-order word and zero in the high-order word. To create this value, use the MAKEINTRESOURCE macro.
По идентификатору ресурса обращаюсь, всё нормально. А вот что за имя ресурса меню? где его можно узнать, чтобы обратиться по имени?


 
MBo ©   (2002-09-24 15:33) [3]

Если сам создавал, имя знаешь, иначе просмотрщиком ресурсов, даже IMAGE Editor из Delphi


 
Alexander ©   (2002-09-24 15:59) [4]

Ладно, по имени не получилось, можно и по индексу.
Ещё вопрос:
вот так выглядит начало этого ресурса меню:

403 MENU
LANGUAGE LANG_RUSSIAN, 0x1
{
POPUP "&Принтер"
{
MENUITEM "Подкл&ючить", 100
MENUITEM SEPARATOR
MENUITEM "&Использовать по умолчанию", 103
MENUITEM "&Настройка печати...", 108
MENUITEM SEPARATOR
MENUITEM "&Приостановить печать", 101
MENUITEM "О&чистить очередь печати", 102
MENUITEM SEPARATOR
MENUITEM "О&бщий доступ...", 104
MENUITEM "Отло&женная печать", 109
MENUITEM SEPARATOR
MENUITEM "Сво&йства", 106
MENUITEM SEPARATOR
MENUITEM "&Закрыть", 107
}

Пишу так (хочу названия всех пунктов прочитать):

hLib := LoadLibrary("printui.dll");
if (hLib <> 0) then
try
hMenu := LoadMenu(hLib, PChar(433));
if (hMenu <> 0) then
try
// здесь номально считал первый пункт
GetMenuString(hMenu, 0, @Str, 256, MF_BYPOSITION);
// узнаю Handle субменю
GetMenuItemInfo(hMenu, 1, True, MII);
// читаю первый пункт подменю, но он оказывается пустой, хотя в MII.hSubMenu нормальный Handle
GetMenuString(MII.hSubMenu, 0, @Str, 256, MF_BYPOSITION);



Страницы: 1 вся ветка

Текущий архив: 2002.11.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
14-21801
Николай Быков
2002-10-11 19:46
2002.11.07
Делаю на заказ програмки абсолютно БЕСПЛАТНО


1-21539
AndreyAG
2002-10-29 09:57
2002.11.07
TStrings


7-21830
Ученик
2002-09-03 18:36
2002.11.07
Владелец Thread-а


3-21355
Nikoly
2002-10-21 16:13
2002.11.07
Вставка записи


1-21603
Stream2k
2002-10-25 18:40
2002.11.07
Как по нажатию SpeedButton загрузщить файл file1.htm в браузер...