Вниз
Скачать: CL | DM;

EnumDisplaySettingsEx - crash   Найти похожие ветки 

 
Psychedelic ©   (2006-09-05 04:14) [0]

Какая -то ерунда. Работаю с KOL.
Объявляю функ. так:

function EnumDisplaySettings(lpszDeviceName: PChar; iModeNum: DWORD;  var lpDevMode: TDeviceMode; dwFlags : DWORD): BOOL; stdcall;  external "user32.dll"
name EnumDisplaySettingsExA";

Пускаю так (i - в цикле for): EnumDisplaySettingsEx(nil,i,DevMode,1); - в результате программный crash. В чем проблема?

EnumDisplaySettings - работает прекрасно...


 
Psychedelic ©   (2006-09-05 04:16) [1]

Вот объявление в msdn -

BOOL EnumDisplaySettingsEx(
 LPCTSTR lpszDeviceName,  // display device
 DWORD iModeNum,          // graphics mode
 LPDEVMODE lpDevMode,      // graphics mode settings
 DWORD dwFlags            // options
);


 
begin...end ©   (2006-09-05 08:54) [2]

Перед вызовом функции в структуре DevMode следует инициализировать поля dmSize и dmDriverExtra:

Before calling EnumDisplaySettingsEx, set the dmSize member to sizeof(DEVMODE), and set the dmDriverExtra member to indicate the size, in bytes, of the additional space available to receive private driver data.
(c) MSDN

И в случае с EnumDisplaySettings нужно поступать так же.


 
Psychedelic ©   (2006-09-05 13:07) [3]

Так и есть . Как говорят провтыкал. Спасибо.
Кстати const EDS_RAWMODE = 2; еле нашел.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.029 c
1-1164716831
DelphiLexx
2006-11-28 15:27
2007.01.21
DBGridEh и EndElipses


2-1167738248
owow1
2007-01-02 14:44
2007.01.21
TEdit + "Вставить"


15-1166814079
Cerberus
2006-12-22 22:01
2007.01.21
Заканчивается год.


4-1158044240
MEV
2006-09-12 10:57
2007.01.21
Можно ли в dll узнать её полное имя, как Application.ExeName?


1-1164619913
AlexSt
2006-11-27 12:31
2007.01.21
Смена курсора при drag and drop от состояния управляющих клавиш




   Наверх