Добрый день!
Есть . А как скомпилировать prg файл в экзешник?
Скачал инструментарий разроботчика для БЭСТ4, по рекомендациям в помощи скопировал проект, и в нужных местах заменил нужные файлы. Компиляция проходит без ошибок, но получаемые программы просто висят ничего не делая, а если запускать из под FAR'a выдается ошибка в стиле бэста:
Error BASE/1132 Переполнение массива: Неверное количество аргументов Arguments:
( [ 1] = Type: A Val: { Array of 34 Items } [ 2] = Type: N Val: 0)
Error at ...: DOSSAVE$(122) in Module: initbest.prg
Вот, а сам код:
Function main()
Local x
// ALTD()
x:="OK"
SayAndWait(x)
RETURN NIL
В консольном приложении не поддерживаются функции разработчика.
Какая задача? Обработка данных или приложение с интерфейсом?
Если второе - то проще строить на базе функций БЭСТа.
Задача для четвертого бэста. Необходимо брать данные из базы и записывать в другой файл. Есть плагин, который все это делает, и необходимо его запускать не из под бэста и не из коммандной строки.
P.S. пример из prg_test работает
Скачал инструментарий разроботчика для БЭСТ4, по рекомендациям в помощи скопировал проект, и в нужных местах заменил нужные файлы. Компиляция проходит без ошибок, но получаемые программы просто висят ничего не делая, а если запускать из под FAR'a выдается ошибка в стиле бэста:
Error BASE/1132 Переполнение массива: Неверное количество аргументов Arguments:
( [ 1] = Type: A Val: { Array of 34 Items } [ 2] = Type: N Val: 0)
Error at ...: DOSSAVE$(122) in Module: initbest.prg
Вот, а сам код:
Function main()
Local x
// ALTD()
x:="OK"
SayAndWait(x)
RETURN NIL
Пожалуйста, наставьте на путь истинный
Если уж скомпилено с БЭСТовскими функциями, то и запускать необходимо в соответствующем окружении, то есть чтобы была папка PRO и запуск производить находясь в главной папке БЭСТ (там где best.bat), и запускать как-то так:
bin\test.exe
Пытался и так запускать, но результат один и тот же
Переписать код можно (надеюсь есть аналоги в харборе бэстовским функциям), но на будущее хотелось бы разобраться как компилить такие плагины и возможно ли это вообще и как нужно их потом запускать.
Если есть необходиость запускать "плагин" как отдельную программу с возможностью диалога с пользователем, то это уже не плагин будет а программа. Для этих случаев и служит инструментарий.
А если плагин требуется для выполнения каких то задач по обработке данных без участия пользователя, то для этого достаточно собрать файлик по примеру prg_test.
По переводу кода для таких задач много вопросов возникнуть не должно.
Много используется функций разработчика для работы с данными? Не думаю.
Use, set order, do while, и т.п. вроде более менее стандартный ряд системных функций.
dbpush() dbpop() в этом случае не нужны.
В каталоге PLL можно подсмотреть исходные коды функций разработчика.
Спасибо за наставления!
А можно еще ? В инструментарии разработчика написано, что стандартный харбор не подойдет для работы с бэстовскими базами и дана ссылка на нужный компилятор, только она не рабочая Где можно достать его?
"Заточенный" для БЭСТа уже лежит в инструментарии.
Создаешь новый каталог, создаешь программный файл, вносишь изменения в батник, собираешь и получишь экзешник. Это если вкратце, а если надо подробнее, то пройди сначала сам и где непонятно - дай знать.