Главная категория > Искра(Прим)

Кто может помочь с программированием на C++ Builder?

(1/2) > >>

alexey6522:
Доброго времени суток! Нужна помощь в программировании на C++ builder, вот кусок кода на Delphi функция подключения библиотеки azimuth,
пытаюсь перевести этот код на C++
--- Код: ---

//Delphi

implementation

{$R *.dfm}
//Объявляем функцию подключения к библиотеке
Function OpenDLL(OpName,Psw,DevName:PChar; Baudrate: PChar; FlagOem: Integer): Integer; stdcall; far; external 'azimuth.dll' name 'OpenDLLPlus';
procedure TForm2.FormShow(Sender: TObject);
var Dllka: HMODULE;
StartSeans: function(): integer;
begin
Dllka:=LoadLibrary('azimuth.dll');
If Dllka=0 then Begin
  ShowMessage('Библиотека не найдена!');
  Application.Destroy;
end;
//Подключаем ДЛЛ
OpenDll('', 'AERF', 'COM1', '9600', 0);
StartSeans:=GetProcAddress(Dllka, 'StartSeans');
end;
--- Конец кода ---

drfaust:

--- Код: ---

HMODULE Dllka; /*хэндл*/
int (*StartSeans)(void);/*указка на функцию типа int func(void)*/


Dllka=LoadLibrary('azimuth.dll');
if(Dllka==0)
{ShowMessage('Библиотека не найдена!');
  Application.Destroy(); /*возможно надо Application->Destroy();*/
}


//Подключаем ДЛЛ
OpenDll('', 'AERF', 'COM1', '9600', 0);
StartSeans=GetProcAddress(Dllka, 'StartSeans');/*возможно потребуется приведение типа*/

--- Конец кода ---

Пишу по памяти - мог накосячить.

alexey6522:
А самое важное в этом коде, объявление функции как будет выглядеть

--- Код: ---
Function OpenDLL(OpName,Psw,DevName:PChar; Baudrate: PChar; FlagOem: Integer): Integer; stdcall; far; external 'azimuth.dll' name 'OpenDLLPlus';

--- Конец кода ---

Юр:

--- Цитата: drfaust от 09/09/2014 13:28:53 ---
--- Код: ---
if(Dllka==0)
{ShowMessage('Библиотека не найдена!');
--- Конец кода ---

--- Конец цитаты ---
Наверное, правильнее будет так:
if(Dllka==Null)
?

alexey6522:
Ругается на
  StartSeans=GetProcAddress(Dllka, "StartSeans");/*возможно потребуется приведение типа*/

ОШИБКА
[BCC32 Error] Unit1.cpp(30): E2034 Cannot convert 'int (__stdcall *)()' to 'int (*)()'

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Произошла ошибка благодарности
Думаю...
Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 
Перейти к полной версии