Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.28;
Скачать: [xml.tar.bz2];




Вниз

Срочно нужна помощь!!! Как встроить в Delphi приложение компилятор Pascal? 


Sound   (2002-03-18 13:06) [0]

Вообщем проблема такова: Есть Delphi-приложение с компонентом Memo в котором находится исходный код на чистом Pascal"е (даже не Object) необходимо что бы при нажатии на кнопку "Компилировать" открывалось консольное окошечко с выполняющейся программой. Другими словами нужно подключить компилятор (лучше достать бы где нибудь компонент). Объясните хотя бы как это сделать?



Song   (2002-03-18 13:08) [1]

запускай dcc32.exe внешним процессом



Sound   (2002-03-18 13:10) [2]

Чуть подробней можно?



Song   (2002-03-18 13:10) [3]

или аналогичный компилятор от TP 7, вроде бы tpc.exe он называется (поздно прочитал, что текст программы на чистом Паскале). Также комадной строкой.



Song   (2002-03-18 13:16) [4]

Подробней?
Сохраняешь содержимое Memo в текстовый файл (например temp.pas) и передаёшь его на компилирование tpc.exe temp.pas
В случае успешного завершения в этом каталоге появится temp.exe, если нет, то выведутся ошибки.
Если нужно отследить какие были ошибки тогда процесс компиляции нужно выводить не на консоль (по умолчанию), а в файл> tpc.exe temp.pas >screen.txt
Тогда в файле screen.txt будет листинг выполнения команды tpc.exe temp.pas. Потом путём анализа этого файла, можно выковорять ошибки , выданные при компиляции (если были). Если файл temp.exe был найден, значит разбор файла screen.txt можно не выполнять, результирующий файл был успешно скомпилирован (только в этом случае перед каждой новой попыткой компиляции его нужно будет удалять во избежание неверного толкования процесса компиляции).
Вот тебе кратко поподрбней.
Мы с тобой идею IDE сейчас рассмотрели. :))



Song   (2002-03-18 13:21) [5]

Я занимался этой идеей. Очень давно ещё на TP7 я написал редактор для программ на ассемблере. Он позволял делать почти всё, что позволяет делать обычная IDE TP7 включая функции поиска, замены, сохранения, открытия, печати и т.д. Ошибки выдирал именно так. Причём asm показывает галочку в той позиции в строке где была ошибка и её номер. Так я переводил курсор в эту позицию и писал сообщение об ошибке, которое asm выявлял.



drpass   (2002-03-18 13:38) [6]

>Sound
Как-нибудь так
WinExec("dcc32.exe -b myprog.dpr", sw_hide);
WinExec(myprog.exe", sw_show);



Sound   (2002-03-18 13:47) [7]

Народ большое Спасибо! Вроде понял, попробую все это дело сейчас реализовать.




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.28;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.019 c
1-90831           AndreyS               2002-03-14 15:34  2002.03.28  
Вопрос по приорететам и компилятору.


1-90858           Brand                 2002-03-16 23:38  2002.03.28  
Много файлов в один проект


3-90766           Malder                2002-02-27 16:58  2002.03.28  
Создание обзоров


1-90905           kronos                2002-03-13 21:03  2002.03.28  
Помогите чайнику!!!


1-90957           AVT                   2002-03-13 17:54  2002.03.28  
Как поднять окно своего приложения поверх всех окон в win2k.