powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите подключить dll
5 сообщений из 5, страница 1 из 1
Помогите подключить dll
    #32689344
johnnybo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго дня всем!
Помогите подключить dll к проэкту написаному на VB6.
Суть в чем - есть программа написаная для работы с базой даных.
Возникла идея с нее печатать сразу на кассовый апарат. Апарат уже куплен Datecs FP3530t, с ним эсть длл для работы с ним. Она не ком.

Так как я не очень силен в ВБ (больше админ чем програмер, програмирование так хобби, а делать нужно), то столкнулся с одной проблемой, может это и елементарно, но я к сожелению ответа не нашел. Может кто посоветует сслылку какую то или книгу. А проблема вот в чем.
Формат функций из этой длл почти одинаковый
int CALLBACK dllFunction (HWND hwnd,void (CALLBACK *Fn),LPARAM UI,...)
HWND hwnd - всегда используется NULL
LPARAM UI - всегда 0L
void (CALLBACK *Fn) - функция которую вызывает библиотека после того как фискальный регистратор завершает выполнение команды.
Формат таков
Borland C++ BUilder
void CALLBACK _export PrinterResults(struct RetData far &rtd)
{
......
}

внутри библиотеки функция определена как
typedef void (PASCAL FAR *RetCallback) (struct RetData &);

struct RetData {
int Count;
int CmdCode;
LPARAM UserData;
LPARAM Status;
LPSTR CmdName;
LPSTR SendStr;
LPSTR Whole;
LPSTR RetItem[20];
unsigned char OrigStat[6]
}

Как правильно описать эти функции в ВБ.
Буду рад любой помощи, совету.
Зарание спасибо
...
Рейтинг: 0 / 0
Помогите подключить dll
    #32689865
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Действительно, задачка напрягает. Можно, конечно методом проб и ошибок поэкспериментировать, но результат негарантирован. Я бы в такой ситуации поступил бы проще - сбацал бы по-быстрому на C-Builder'e или Delphi другую DLL c более дружественным интерфейсом, который легко пристыковать к VB-проект, и которая внутри себя бы вызывала уже ту дикую DLL.
Сильно настораживает модификатор вызова PASCAL. Все dll, подключаемые к VB через Declare должны иметь модификатор вызова stdcall.

--------------
Свет в конце тонеля временно потушен по техническим причинам.
...
Рейтинг: 0 / 0
Помогите подключить dll
    #32690058
johnnybo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Фактически void (CALLBACK *Fn) - здесь функция которую я должен сам
написать в соем приложении,
но как я понимаю это CALLBACK функция, а как ее реализовать на вб я не знаю.

Если ничего не выйдет - дейтвительно придется писать свою длл на vc++, которая бы вызывала эту, но как то некрасиво.
...
Рейтинг: 0 / 0
Помогите подключить dll
    #32690162
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ыз MSDN

Create a new Standard EXE project in Microsoft Visual Basic 5.0

Add a Command button to Form1.
Add the following declare statement to the General Declarations section of Form1:
Код: plaintext
1.
      Private Declare Sub ExecuteCallback Lib "vcvbdll" ( _
         ByVal pFunc as Long)


Add the following code to the Click event of the Command button:
Код: plaintext
     Call ExecuteCallback(AddressOf MyCallback)

Add a new module to the project, and add the following code to the module.
Код: plaintext
1.
2.
3.
    Sub MyCallback(ByVal parm as String)
         MsgBox "You are inside the VB callback function!"
         MsgBox "Parameter passed in was: " & parm
      End Sub
...
Рейтинг: 0 / 0
Помогите подключить dll
    #32690238
Processor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
johnnyboМожет кто посоветует сслылку какую то или книгуЕсли есть возможность, найди книгу:
ISBN 5-94074-102-9
Роман С.
Программирование в Win32 API на Visual Basic.
Пер. с англ. - М.: ДМК Пресс, 2001. - 480 с.:ил.
(Серия "Для программистов").
В ней подробно разобрана (не всегда очевидная) технология формирования параметров для передачи их в API.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите подключить dll
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]