Форум OlegON > Компьютеры и Программное обеспечение > Операционные системы и программное обеспечение > Программирование

как в Delphi 6 использовать DLL, созданный в Visual Basic : Программирование

29.03.2024 9:22


06.03.2012 17:07
student
 
Цитата:
Janek Где эту длл-ку найти? TWSWTCP.DLL
попытаться найти в хранилище форума либо на сайте с+ - Digi_driver_TWSWTCP.zip - ее будет достаточно для выполнения поставленной задачи, причем совершенно бесплатно, т.е. даром :)

длл-ку я не посмотрю - исходников на нее нет, есть только вызовы ф-ций через предварительный adressoff - т.е. динамически (поэтому она и не регистрится автоматом - типа закат солнца вручную), что надо сказать, очень грамотно сделано :)
06.03.2012 17:28
Janek
 
Ответ Олегу - владельцу форума.
Если Visual Basic может открыть эту scload.dll без регистрации в регистрах, то почему Дельфи не может?

Добавлено через 2 минуты 55 секунд
Студенте - Вы хотите сказать, что этот TWSWTCP.DLL содержит ту же информацию, что и ScLoad.dll?
06.03.2012 17:41
student
 
Цитата:
Janek Ответ Олегу - владельцу форума.
Если Visual Basic может открыть эту scload.dll без регистрации в регистрах, то почему Дельфи не может?

Добавлено через 2 минуты 55 секунд
Студенте - Вы хотите сказать, что этот TWSWTCP.DLL содержит ту же информацию, что и ScLoad.dll?
насчет дельфей - не знаю (давно не спец в них) - скорее всего из-за динамического размещения и его взаимоувязки в разных компонентах всего проекта - типа защита такая, а насчет инфы - да - формируется файлик стандартного типа - проще Вам самим посмотреть - там и доки есть по формату файлика, и немного модифицированный ехе (типа того что в Вашем проекте) тоже :)

ps
возможно, что при получении Вами всех нужных адресов в памяти после запуска User Licence - у Вас получится обратиться к функциям длл-ки и получить от них ответ :)
06.03.2012 17:57
akonev
 
Цитата:
Janek ...Моя задача состоит в разработке приложения, из которого весам будет отправляться информация о товарах...
Есть какие-то религиозные или политические препятствия к использованию давно написанного поставщиком Digi (сервис-плюс) прогрузчика QLoad?

Если нет - задача сводится к выгрузке товаров в текстовый файл.

Если есть, то можно все-таки пользовать TWSWTCP.dll, но файл во внутреннем формате весов (описан в документации к twswtcp.exe) придется собрать самому.

sm500 поддерживаются. но если хочется полной и абсолютной уверенности, то в комплекте с twswtcp.dll идет тестовая программа.
06.03.2012 19:15
Janek
 
Вопрос Олегу - владельцу форума. Утилита TDUMP.EXE, просмотрев этот злополучный SCLOAD.DLL, показала, что
Exports 00000000 00000000
Imports 000107E0 0000004B
Resources 00014000 00000870
Exceptions 00000000 00000000
Security 00000000 00000000
Fixups 00016000 0000000C
Debug 00012000 0000001C
Description 00000000 00000000
Global Ptr 00000000 00000000
TLS 00000000 00000000
Callbacks 00000000 00000000
Bound Imports 00000000 00000000
Import Addr Table 00002000 00000008
Delayed Imports 00000000 00000000
COM Runtime 00002008 00000048
reserved 00000000 00000000

О чем это говорит?
07.03.2012 09:22
OlegON
 
Цитата:
Janek О чем это говорит?
Об этом и говорит. Я должен догадаться, какой от меня ответ ожидается?
07.03.2012 09:59
Pyatak
 
Чет прочитал все страницы темы и не понял в чем сложность. Просто вызвать функцию dll из делфи не получается?

Код:
type
TOperation = (UPLOAD, DOWNLOAD, ERASEPLULIST, ERASEOBJECT);
TOperationResult = (NON_ERROR, OPEN_FILE_ERR, READ_FILE_ERR,
  WRIT_FILE_ERR, NETWORK_OPEN_ERR, NETWORK_READ_ERR, NETWORK_WRIT_ERR,
  MACHINE_READ_ERR, MACHINE_WRIT_ERR, MACHINE_NOREC_ERR,
MACHINE_SPACE_ERR, MACHINE_UNDEF_ERR);


function execute(AOperation: TOperation; AScaleIP: PChar; AFileName: PChar; ACommand: BYTE): TOperationResult; stdcall; external 'digiTCPdrv.dll';
Это было нужно?

Только всё это справедливо для dll-ки которая из этого архива... (ага, а ссылку-то я вставить не могу, спасибо некоторым борцам за мотивацию. Чтобы помочь - надо вставить ссылку, а чтобы вставить ссылку - надо помогать, замкнутый круг получается) (Автору: ищи тогда самостоятельно на сайте СервисПлюса где-то в разделе "Документация, драйверы, сервисное программное обеспечение")
В этом же архиве doc файл с описанием чего и как надо вызывать и тестовая программа на делфи, правда без исходников.
07.03.2012 10:59
student
 
Цитата:
Pyatak Чет прочитал все страницы темы и не понял в чем сложность. Просто вызвать функцию dll из делфи не получается?
с этой длл-кой как раз никаких сложностей и нет :) про это и написано, автору наоборот надо походу обязательно заюзать платный вариант - scload.dll - а оно достаточно хитро организовано и просто так не пускает к себе, хотя результаты что у платного что у бесплатного вариантов одинаковы - файл на выходе и транспорт в весы

ps
кстати, как вариант - можно попробовать зарегать ее через компонет сервис - создав новое приложение сом - как для компа с отсутсвующей 1С v8 на котором надо с ней работать

:( попробовал - не создается - чего то еще не хватает
07.03.2012 18:13
Janek
 
Студент, ты здесь? Ты открыл спискок этих функций и процедур из scload.dll?
Я хотел спросить тебя, как добраться до процедуры PLUHEXFILE ИЗ PLU.
Ты прав, что эта длл-ка хитро построена - эти подчинения классов и методов.
09.03.2012 09:57
student
 
Цитата:
Janek Студент, ты здесь? Ты открыл спискок этих функций и процедур из scload.dll?
Я хотел спросить тебя, как добраться до процедуры PLUHEXFILE ИЗ PLU.
Ты прав, что эта длл-ка хитро построена - эти подчинения классов и методов.
на основе tlb файла описание ф-ций просмотрел, но это не дает возможности до них добраться без правильного объявления - не стоит огород городить - юзай транспорты напрямую на базе библиотек от дижи как уже здесь неоднократно писали
Часовой пояс GMT +3, время: 09:22.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.