Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> и снова dll, без COM RTTI 
:(
    Опции темы
gonzales
Дата 13.4.2007, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 241
Регистрация: 13.3.2006

Репутация: 1
Всего: 2



Подобный вопрос уже задавался на форуме, но к сожалению внятного ответа я так и не нашел.

имеется библиотека, инициализирующая объект типа TJvHidDeviceController.
У объекта 3 функции, первые две - инициализация hid-устройств, 3я - чтение значений, выдающих hid-устройством. 

Код

type
//{$M+}
 HC = class(TJvHidDeviceController)
  function H_Enumerate(HidDev: TJvHidDevice; const Idx: Integer): Boolean;
  procedure H_HidCtlDeviceChange(Sender: TObject);
  procedure H_Read(HidDev: TJvHidDevice; ReportID: Byte; const Data: Pointer; Size: Word);
end;
//{$M-}

var
cardlist:tstringlist;
h: HC;

procedure PInit;

implementation

procedure HC.H_HidCtlDeviceChange(Sender: TObject);
begin
h.Enumerate;
end;

function HC.H_Enumerate(HidDev: TJvHidDevice; const Idx: Integer): Boolean;
begin
  if HidDev.ProductName <> '' then
      cardlist.Add(HidDev.ProductName);
  h.CheckOutByIndex(HidDev, Idx);
  Result := True;
end;

procedure HC.H_Read(HidDev: TJvHidDevice; ReportID: Byte; const Data: Pointer; Size: Word);
begin
 showmessage('read');
end;

procedure PInit;
begin
cardlist:=tstringlist.Create;
 h:=HC.Create(h);
 h.OnDeviceData:=h.H_Read;
 h.OnEnumerate:=h.H_Enumerate;
 h.OnDeviceChange:=h.H_HidCtlDeviceChange;
end;

export Pinit;



при вызове из внешнего приложения выполняются функции h.H_HidCtlDeviceChange и h.H_Enumerate.
А вот в функцией Read - затык, не переходит к ней управление, и все. 

Хотя в приложении (без библиотеки) все работает.

Подскажите, что делать??? 

ЗЫ, ответы, что нужно использовать COM и RTTI не покатят, так как по логике вещей все должно работать, потому как первые две функции работают безукоризненно. 

--------------------
- мастер, мастер, запорол..., все четыре запорол!!!- я ж тебе только три давал!!!???- да я и образец запорол!!!!
PM MAIL   Вверх
Letov
Дата 25.4.2007, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 321
Регистрация: 22.2.2007
Где: Санкт-Петербург

Репутация: нет
Всего: 4



Код

exports H_Read



--------------------
Не бывает плохих языков программирования. Бывают плохие программисты...

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0403 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.