Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
vic7tar писал(а): ↑14 Июль 2019, 19:32А зачем при вызове сишных функций дополнительно необходимо указывать её же адрес?
Так здесь же нет прямого линкования DLL (точнее LIB) при сборке приложения.
DLL загружается в процессе выполнения и адреса вызова функций в ней определяются динамически по наименованию.
vic7tar писал(а): ↑14 Июль 2019, 20:21Линкование прямое.
Это же сишное объявление для линкования DLL. Можно создать LIB и в Clarion прилинковать вызовы функций из внешней DLL.
Тогда объявления в MAP будут такие же … Например так сделано в проекте XLSXLibWriter, только без DLL программа не запустится.
Посмотрим, что Admin скажет, в Хабаровске уже светает …
vic7tar писал(а): ↑14 Июль 2019, 20:52А где в XLSXLibWriter есть что-то аналогичное, т.е. для запуска функции ещё необходим её адрес в библиотеке?
Как раз там и не требуется указывать адрес функции в DLL, т.к. он определяется на этапе линковки приложения
и не может быть изменён в процессе работы приложения (статический). Т.е. это другой вариант работы с внешней DLL.
На это можно только повторить ответ и надеяться, что Вы его прочитаете …
Игорь Столяров писал(а): ↑14 Июль 2019, 20:42Это же сишное объявление для линкования DLL. Можно создать LIB и в Clarion прилинковать вызовы функций из внешней DLL.
Тогда объявления в MAP будут такие же … Например так сделано в проекте XLSXLibWriter, только без DLL программа не запустится.
Open(DWindow)
...
If Atol.FlagLoaded
If Atol.OpenDialog(DWindow{Prop:Handle}) = LIBFPTR_ERROR ! 1 = cancel, LIBFPTR_OK, LIBFPTR_ERROR
MESSAGE(Atol.ErrorDescription(),Atol.ErrorCode())
RETURN
end
end
Чего бы я туда не передавал - всегда ОШИБКА 6 (INTERNAL ERROR).
finsoftrz писал(а): ↑12 Июль 2019, 23:52А никто не пробовал libfptr_util_form_nomenclature для формирование ктн для табака? Вот такой код возвращает пустое значение:
Читать тут и пробовать с саппортом на форуме общаться. Попробовал вашу тему. Тоже получается пустая строка.
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
finsoftrz писал(а): ↑12 Июль 2019, 23:52А никто не пробовал libfptr_util_form_nomenclature для формирование ктн для табака? Вот такой код возвращает пустое значение:
Читать тут и пробовать с саппортом на форуме общаться. Попробовал вашу тему. Тоже получается пустая строка.
Это я читал уже. У вас ккм зарегина? Может, все таки от этого зависит. Я уже не удивлюсь.
Игорь Столяров писал(а): ↑15 Июль 2019, 6:17Вроде бы по описанию - можно.
Тоже не работает.
Но я вообще на это окно не завязывался.
У меня порт и тип аппарата заранее известен и т.д.
У меня тоже не взлетело. Если вызывать окно настроек без хэндла, то работает, но оно модальное и открывается на заднем фоне. Кстати, тип ккм можно ставить в автоопределение, если это атоловский аппарат.