Автор | Сообщение |
|
| |
Пост N: 3
Зарегистрирован: 23.01.07
|
|
Отправлено: 23.01.07 12:00. Заголовок: Запуск внешних программ
Кто-нибудь знает чем можно заменить RUN? Столкнулась с проблемой - пытаюсь создать отчет при пом. FastReport из клиппера, т.е. win-приложение из dos-приложения. В харборе не получается. М.б. кто-нибудь это победил?
|
|
|
Ответов - 10
[только новые]
|
|
|
| |
Пост N: 619
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.01.07 13:36. Заголовок: Re:
|
|
|
|
| |
Пост N: 12
Зарегистрирован: 15.12.06
|
|
Отправлено: 23.01.07 13:57. Заголовок: Аналогичная проблема
Я как раз хотел спросить то же самое. Мне не понравился hbmake - какой-то сложный и не гибкий. Хотел бы написать свой аналог rmake (чтобы из него можно было запускать, грубо говоря, что угодно). При запуске harbour через rmake код возврата 12.
|
|
|
|
| |
Пост N: 86
Зарегистрирован: 28.06.05
|
|
Отправлено: 23.01.07 14:13. Заголовок: Re:
~ 90% - слишком длинная строка параметров для компилятора. в ОС (XP) реальное ограничение для 16-разрядного RMAKE - около 80-100 символов (точно не помню). Сам я собираю проект через RMAKE
|
|
|
|
| модератор
|
Пост N: 415
Зарегистрирован: 25.05.05
|
|
Отправлено: 23.01.07 14:18. Заголовок: Re:
|
|
|
|
| постоянный участник
|
Пост N: 232
Зарегистрирован: 12.09.06
|
|
Отправлено: 23.01.07 15:08. Заголовок: Re:
AM пишет: цитата: | Мне не понравился hbmake - какой-то сложный и не гибкий |
| Чем не понравился ? Классная вещь, минимум содержания и носить проекты между компами одно удовольствие. Надо, залез внутрь, подправил ключи или скопировал их в новую строчку, т.е. "забэкапил" старые и все. А когда делаешь болшие проекты разбросанные по нескольким папкам, то одно удовольствие делать проект. ОН САМ ЗА ТЕБЯ ВСЕ СДЕЛАЕТ. Прицепил к МЕ 6.0 (досовскому) вызов проекта и работай как с Клипером. Короче минимум изучения для перехода под Харбор.
|
|
|
|
| постоянный участник
|
Пост N: 233
Зарегистрирован: 12.09.06
|
|
Отправлено: 23.01.07 15:19. Заголовок: Re:
lena пишет: цитата: | пытаюсь создать отчет при пом. FastReport из клиппера, т.е. win-приложение из dos-приложения. В харборе не получается. М.б. кто-нибудь это победил? |
| Это делается просто: если Win98 то делаем RUN ("start winword x:\xxx\mydoc.doc") если Win2000/XP - RUN ("cmd /c start winword x:\xxx\mydoc.doc") Будет запускаться отдельное окно с Вордом. И еще одно, слишком длинный путь нельзя делать. Сколько не помню, но если не вызывается Ворд, то укорачивайте путь или делайте вызов MYBAT.BAT, а в нем все что угодно.
|
|
|
|
| |
Пост N: 13
Зарегистрирован: 15.12.06
|
|
Отправлено: 23.01.07 15:21. Заголовок: Re:
Нет, Григорий, не то, опять сложно. Мне бы запускать из батника, с любимым редактором (me 7) и проч. Я в основном это сделал (решил и проблемы с русификацией и с кодировкой, могу поделиться). Очень удобно, но хорошо бы компилировать не всё, а то, что надо. SergeJa пишет: цитата: | ~ 90% - слишком длинная строка параметров для компилятора |
| Действительно, длинная, хотя надо подумать, как сократить.
|
|
|
|
| |
Пост N: 14
Зарегистрирован: 15.12.06
|
|
Отправлено: 23.01.07 15:35. Заголовок: Re:
Andrey пишет: цитата: | Прицепил к МЕ 6.0 досовскому вызов проекта иработай как с Клипером. |
| А можно пример? Хотя вызывать из ME компилятор я когда-то пробовал, но отказался, наверно, оттого, что нужна не одна компиляция, а и компоновка (а переходить в редактор надо при ошибках и того и другого). А в Харборе ещё ВСС, да у меня ещё в начале запускается программа перекодировки DOS->Windows (м.б., кто-то будет смеяться. Кстати, как ты это решил?).
|
|
|
|
| постоянный участник
|
Пост N: 234
Зарегистрирован: 12.09.06
|
|
Отправлено: 23.01.07 19:16. Заголовок: Re:
Я в МЕ (оказывается 7.0) вызываю меню Ctrl+Enter, там клав. Ins создаешь строку запуска на компиляцию: Description: ............. Command line: ............ Program type: ............ и т.д. Потом еще создаешь строку запуска на выполнение. Потом запускашь на компиляцию свой проект, если все нормально, то запускаешь на выполнение. МЕ позволяет считывать ошибки при компиляции и устанавливать курсор на них. У меня это сделано под клипер и работает нормально. С Харбором я не стал заморачиваться использую стандартный HBMAKE, там в случае ошибок вылазиет стандартный EDIT, хотя это тоже можно переделать. Кодировку использую DOS, не хочу пока заморачиваться. Хотя в твоем случае можно сделать батник и запускать его на перекодировку, компиляцию и выполнение. Передача параметров в комадной строке к батнику /DMYTEST и другие .... а там анализировать, у меня на клипере я одним RMAKE собираю несколько задач. Но в Харборе решил отказаться от этого, потому что имея несколько папок с проектами в одном каталоге можно хранить общие процедуры в одной папке, а остальные в других папках. В корне храню несколько project.bc и когда нужно собрать новый проект выбираю из МЕ какой собирать.
|
|
|
|
| |
Пост N: 15
Зарегистрирован: 15.12.06
|
|
Отправлено: 24.01.07 12:58. Заголовок: Re:
Andrey пишет: Andrey пишет: цитата: | МЕ позволяет считывать ошибки при компиляции и устанавливать курсор на них. |
| Нет, это я знаю, и когда-то пытался использовать. Не очень помню, почему отказался. М.б.,из-за ошибок компоновки, которые также требуют изменения программы (типично - перепутал имя функции). Других ошибок компоновки обычно не бывает, если проект сформирован. А установка курсора на строку с ошибкой не так уж нужна, ведь ошибки обычно бывают там, где только что ковырял, а у ME есть STATUS.ME (хотя в 9-й версии вроде уже нет, если правда выкинули, то это сверхмаразм, штука-то гениальная). Andrey пишет: цитата: | Кодировку использую DOS, не хочу пока заморачиваться. |
| Я так понял, это для терминальной программы. А мне же (пользователю) надо с GUI. Так что использую программу перекодировки (сам написал, хотя такие наверняка есть). Она переделывает .PRG в .WIN и компилятор уже берёт .WIN А rmake действительно работает! Спасибо, SergeJa надоумил укоротить строки (сейчас у меня max 109 символов,работает). В результате получился такой батник: rmake project if errorlevel 1 goto :err allan goto :end :err del allan.exe d:\me7\me :end и такой проект project.rmk: .prg.win: d:\programm\clipper\convert\convert $* .win.c: d:\programm\harbour\bin\harbour $< /n/kx/Q -id:\PROGRAMM\harbour\include;c:\harbour\minigui\include >O.O .c.obj: c:\borland\bcc55\bin\bcc32 -DHB_API_MACROS -c -O2 -OS -tW -Ic:\harbour\minigui\harbour\include $< >O.O .obj.exe: C:\BORLAND\BCC55\BIN\ILINK32 -Gn -aa -tpe -Lc:\harbour\minigui\harbour\lib;C:\BORLAND\BCC55\LIB @B32.BC >o.o allan.win: allan.prg d:\programm\harbour\am_main\allan.ch allan.c: allan.win allan.obj: allan.c INT_sl.win: INT_sl.prg INT_sl.c: INT_sl.win INT_sl.obj: INT_sl.c exT_sl.win: exT_sl.prg exT_sl.c: exT_sl.win exT_sl.obj: exT_sl.c allan.exe: allan.obj (o.o - файл ошибок, постоянно присутствует в редакторе наряду с программами) А программы в разных папках могут быть,можно в проекте указать файлы и с путями (вроде только с полными, конструкций типа "..\" rmake не понимает). Так что вот - свой rmake можно пока не писать. Были ещё проблему с русификацией в окне редактора - если кому интересно, напишу. Наверно, можно сделать и по-другому, но главное - программировать стало НЕ МЕРЗКО. Для меня очень важно, чтобы после изменения программы .exe получался легко (и желательно быстро) Если имя батника однобуквенное, то всего 2 нажатия! Я выдвинул лозунг - УРА!
|
|
|
|