Главная страница
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.026 c
4-1075291361
FireMan_Alexey
2004-01-28 15:02
2004.04.04
Осуществить перехват АПИ функции на Делфи


1-1079637510
maxXP
2004-03-18 22:18
2004.04.04
Как определить запущена ли программа...


3-1078512059
dma_database
2004-03-05 21:40
2004.04.04
TTable TDataBase


3-1078484408
SergeyV
2004-03-05 14:00
2004.04.04
Как вставить чек-бокс в грид ?


6-1074506958
SeNtiMeL
2004-01-19 13:09
2004.04.04
Простенький вопрос по определению MAC адреса устройства по IP