Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];

Вниз

Как прочитать из 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 вся ветка

Форум: "WinAPI";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.035 c
1-1079424786
Noway
2004-03-16 11:13
2004.04.04
shift: TShiftState;


4-1074532367
pavel_k
2004-01-19 20:12
2004.04.04
Получение выделенного участка текста


1-1079632852
senya
2004-03-18 21:00
2004.04.04
Удаление компонентов в Run-Time


14-1079076635
-=гость=-
2004-03-12 10:30
2004.04.04
Как писать хелп?


1-1079253255
Новичек
2004-03-14 11:34
2004.04.04
Процедура обработки события.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский