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

Вниз

Передача данных в DLL   Найти похожие ветки 

 
StarCon   (2003-03-19 12:21) [0]

DLL написана на С++, в качестве параметра нужен указатель на структуру, например
typedef struct {
char enq_type[10];
long enqid;
} GEN_ENQ;
пробовал сделать такой же record и передать указатель на него - не получилось. Причем если используется структура из одних char-ов - подходит просто указатель на string. Внимание вопрос: как передать структуру, содержащую разные типы данных (хотя бы char и long)


 
Clickmaker ©   (2003-03-19 12:25) [1]

#pragma pack(1)
typedef struct {
char enq_type[10];
long enqid;
} GEN_ENQ;
#pragma pack()

type TGenEnq = packed record
enq_type: array[0..9] of char;
enqid: longint;
end;

Это чтобы не зависеть от настроек выравнивания структур компиляторов


 
StarCon   (2003-03-19 12:31) [2]

хм, вот оно как бывает.... :))
спасибо! буду пробовать.


 
REA ©   (2003-03-19 12:46) [3]

А вот еще неизвестно какое там выравнивание стоит...


 
StarCon   (2003-03-25 07:30) [4]

что-то работает не совсем правильно...
а что насчет выравнивания?
как это можно проверить или поменять?



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
3-19425
Liris
2003-03-18 11:39
2003.04.07
1С и Delphi ???


1-19611
АлеКо
2003-03-25 09:08
2003.04.07
Работа с CharToOEM


1-19518
AlexeyMir
2003-03-26 14:30
2003.04.07
Проблемы с PChar


14-19870
SiJack
2003-03-21 16:11
2003.04.07
Люди нужен ли Java


6-19735
_MAD_
2003-02-08 23:31
2003.04.07
TIdTCPServer и TServerSocket