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

Вниз

Как прочитать из commdlg.dll текстовый ресурс   Найти похожие ветки 

 
Alexander ©   (2004-01-20 15:04) [0]

Сначала пытаюсь LoadLibrary("commdlg.dll");
выдаёт: Приложение или библиотека C:\WINNT\system32\commdlg.dll не является образом программы для Windows NT. Проверьте назначение установочного диска.

Когда пытаюсь hLib := LoadLibraryEx("commdlg.dll", 0, LOAD_LIBRARY_AS_DATAFILE)
то hLib = 0
GetLastError=193 (ERROR_BAD_EXE_FORMAT) то есть то же самое, но eXeScope его открывает.
Что я не так делаю?


 
Agent13 ©   (2004-01-20 15:15) [1]

Я попробовал у себя сделать то же самое - вылезла эта же ошибка. Единственное, что приходит в голову - commdlg.dll - библиотека под вин 3.1, т.е 16-битная. Ума не приложу, почему LoadLibrary её не понимает, но вызов 32-битной библиотеки:

LoadLibrary("comdlg32.dll")

проходит корректно.


 
Alexander ©   (2004-01-21 08:26) [2]

Порылся в интернете, нашёл инфу, что с 16-ти битовыми dll нужно работать через недокументированные функции винды: LoadLibrary16 и FreeLibrary16
Что-то типа того:
function LoadLibrary16(LibFileName: PAnsiChar): Cardinal; stdcall; external kernel32 index 35;
function FreeLibrary16(hLib: Cardinal): Cardinal; stdcall; external kernel32 index 36;
Но не пашет :(
Может у кого получалось?


 
Agent13 ©   (2004-01-21 15:06) [3]


> function LoadLibrary16(LibFileName: PAnsiChar): Cardinal;
> stdcall; external kernel32 index 35;

Это пашет (ну в том смысле, что эксепшены не вылетают, а насчёт работы с бибилиотекой - то не знаю, не пробовал).
И вообще - тебе это жизненно важно, юзать именно "commdlg.dll"?
"commdlg32.dll" никак не подойдёт?


 
Alexander ©   (2004-01-21 18:03) [4]

В comdlg32.dll нет нужных мне текстовых ресурсов.
Может задача решается иначе?
Мне нужно для задания на печать, которое находится в очереди, получить размер бумаги. В файле commdlg.dll все эти значения присутсвуют (ну например A4 210 x 297 мм для русской винды, а в английской я получу на английском эту строку).
И файл присутсвует во всех версиях Windows - значит сама винда именно его и использует.



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

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

Наверх




Память: 0.47 MB
Время: 0.021 c
1-1079080296
Yakudza
2004-03-12 11:31
2004.04.04
Как запретить Paste в TEdit ?


1-1079122076
ZaKaZ
2004-03-12 23:07
2004.04.04
TMemo не грузит весь файл...


6-1075506534
tchn1
2004-01-31 02:48
2004.04.04
определить подключение к интернету


14-1078637875
Rouse_
2004-03-07 08:37
2004.04.04
C Днем Рождения 7 Марта


3-1078875784
Anarki
2004-03-10 02:43
2004.04.04
Как загрузить все данные одного поля в Combobox?