Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Написание оболочки и отладчика 
:(
    Опции темы
AlexashKa
Дата 24.11.2008, 18:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 24.11.2008

Репутация: нет
Всего: нет



Здравствуйте! 
мне необходима помощь в решении задачи.
Есть такой мини язык "Milan", мне для него нужно написать оболочку, а также пошаговый отладчик. 
ничего подобного никогда не делал, пытаюсь разбираться, но тяжело получается. приходилось решать только стандартные задачки для обучения.


На данном этапе пытаюсь состряпать какую-никакую оболочку в C++ Builder. Так вот, не знаю, как к кнопкам привязать действия.
"Open" - Нужно, чтобы считывалась информация из текстового файла и вставлялась в элемент в окно оболочки(Memo в "Standart")
"Save" - копирование из окна Memo, с последующим сохранением в файл.
"New" - очистка окошка.

сам язык написан на паскале. Код пишется в текстовике, сохраняется, затем запускается этот Милан.


Далее все нужно скомпилировать и запустить. Здесь все сложно, кое-какие мысли есть, но пока не буду их расписывать.

Надеюсь на вашу помощь!

Присоединённый файл ( Кол-во скачиваний: 8 )
Присоединённый файл  milan.rar 97,36 Kb
PM MAIL   Вверх
Dmi3ev
Дата 25.11.2008, 01:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1698
Регистрация: 28.11.2007

Репутация: 16
Всего: 41



для того, чтобы загружать в Memo что-то из файла, сохранять в файл, очищать его есть соответствующие методы:
LoadFromFile();
SaveToFile();
Clear();
Компилятор писать сложнее  smile 


--------------------

PM MAIL   Вверх
AlexashKa
Дата 25.11.2008, 23:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 24.11.2008

Репутация: нет
Всего: нет



Цитата(Dmi3ev @ 25.11.2008,  01:20)
для того, чтобы загружать в Memo что-то из файла, сохранять в файл, очищать его есть соответствующие методы:
LoadFromFile();
SaveToFile();
Clear();

а где можно найти подобную информацию?
и сложно ли реализуется выбор открываемого файла  и место и имя его сохранения?

Добавлено @ 23:41
а вот на счет запуска и компиляции. какой метод реализует запуск другого приложения?

Это сообщение отредактировал(а) AlexashKa - 25.11.2008, 23:44
PM MAIL   Вверх
Dmi3ev
Дата 26.11.2008, 00:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1698
Регистрация: 28.11.2007

Репутация: 16
Всего: 41



Код

Memo1->Lines->LoadFromFile("D:\\power.txt");

вот так загружать из файла, аналогично сохранять
Код

Memo1->Lines->SaveToFile("D:\\power.txt");

чистить
Код

Memo1->Lines->Clear();


Добавлено через 4 минуты и 41 секунду
если заранее не известно, какой файл, то:
Код

if (OpenDialog1->Execute())
 {
   if (OpenDialog1->FileName!="")
    Memo1->Lines->LoadFromFile(OpenDialog1->FileName);
 }

писал прям тут, но вроде все верно

Добавлено через 5 минут и 50 секунд
Код

ShellExecute(NULL , "open", "D:\\power.txt", NULL, NULL,  SW_RESTORE);

а вот так можно запускать все, что угодно


--------------------

PM MAIL   Вверх
Artemon
Дата 26.11.2008, 08:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


а ты мне нравишься
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 24.2.2004
Где: Челябинск

Репутация: 7
Всего: 20



AlexashKa, не о том беспокоитесь (это я про открытие файла и т.д.)

На вашем месте я бы прочел вот это: 

http://www.google.com/search?client=opera&...-8&oe=utf-8


--------------------
Контроль топлива на топливозаправщиках, мониторинг автотранспорта, расчет зарплаты водителей www.rscat.ru
PM MAIL   Вверх
AlexashKa
Дата 26.11.2008, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 24.11.2008

Репутация: нет
Всего: нет



спасибо.
По поводу отладчика...не знаю за что браться. не посоветуете что-нибудь? где черпать информацию?
PM MAIL   Вверх
AlexashKa
Дата 26.11.2008, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 24.11.2008

Репутация: нет
Всего: нет





значит как я думал компилировать и запускать прогрмму:
набираем код програмки в окошке оболочки, затем, при нажати на кнопочку "Run", код сохраняется в файле, далее запускается этот консольный язык. 
Но не знаю как, в таком случае, привязать отладчик. Пососветуете что-нибудь?
 

Это сообщение отредактировал(а) AlexashKa - 26.11.2008, 18:48
PM MAIL   Вверх
Severyanin
Дата 27.11.2008, 06:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Исследователь
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 31.7.2007
Где: Россия, Омск

Репутация: нет
Всего: 9



Вообще, отладчик реализуется обычно следующим способом: если это отладчик уровня ядра, то в регистре флагов процессора устанавливатся флаг трассировки T, позволяющий выполнять останов после выполнения каждой команды и сохранять текущее состояние регистров. помимо этого надо будет реализовать точки программного останова, позволяющие реализовать выполнение нескольких машинных команд, соответствующих одной команде языка. Так что предстоит вам еще много веселья))))

Добавлено через 43 секунды
Плюс надо будет написать интерфейс для всего этого, чтобы выводить пользователю


--------------------
"Звонким вереском скроются наши следы, и не вспомнят о них. Кто поверит нам, рыцарям павшей звезды из отвергнутых книг? Пусть в узоре времен ни стихов. ни имен, но напомнит забывшим их полуночный крик." Тэм Гринхилл
"Ужели суслик твоего коварства нагадит в плов доверья моего?". Л.Филатов 
PM MAIL WWW ICQ   Вверх
AlexashKa
Дата 27.11.2008, 11:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 24.11.2008

Репутация: нет
Всего: нет



все предыдущие вопросы отменяются)
необходимо прилепить оболочку к коду языка на Delphi,
чтобы все было в одной кучи и компилирование выполнялось не вызовом из оболочки другого приложения. 

Решение перевести язык на Си - слишком сложное. прийдется редактировать язык на делфи.



Это сообщение отредактировал(а) AlexashKa - 27.11.2008, 14:26
PM MAIL   Вверх
xvr
Дата 27.11.2008, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 48
Всего: 223



Цитата(AlexashKa @ 27.11.2008,  11:57)
все предыдущие вопросы отменяются)
необходимо прилепить оболочку к коду языка на Delphi,

Delphy
Цитата

чтобы все было в одной кучи и компилирование выполнялось не вызовом из оболочки другого приложения. 
Delphy 
Цитата

Решение перевести язык на Си - слишком сложное. 
C++ Builder
Цитата

прийдется редактировать язык на делфи.
Моя твоя не понимай, кто чей язык будет редактировать 'на дельфи'?
Огласите полный список пожалуста:
  •  Какой язык нужен?
  •  ДЛЯ ЧЕГО его собираются применять?
  •  Во что он должен компилировать программу? (Можно ли сделать интерпретатор какого нибудь байт кода или нужен реальный исполняемый код)
  •  В каких терминах нужна отладка - исходный текст, байт код или машинный код?
  •  Что собственно надо сделать (IDE, интегрированный отладчик, весь комплекс вместе с транслятором)?
PS. Ваш компилатор Milan'а - тихий ужас  smile 

PM MAIL   Вверх
THandle
Дата 27.11.2008, 23:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 25
Всего: 372



 smile 

Цитата(xvr @  27.11.2008,  14:52 Найти цитируемый пост)
Delphy


Что это такое? smile

Есть только Delphi.
PM   Вверх
Severyanin
Дата 28.11.2008, 09:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Исследователь
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 31.7.2007
Где: Россия, Омск

Репутация: нет
Всего: 9



Цитата

Решение перевести язык на Си - слишком сложное. прийдется редактировать язык на делфи.

Вообще-то, за такие задачи обычно берутся люди, для которых вопросы конструкций языка уже не представляют проблемы. Отладчик все равно придется реализовывать не на прикладном, а на более низком уровне, так что вряд ли будет существенная разница между C++ и Object Pascal


--------------------
"Звонким вереском скроются наши следы, и не вспомнят о них. Кто поверит нам, рыцарям павшей звезды из отвергнутых книг? Пусть в узоре времен ни стихов. ни имен, но напомнит забывшим их полуночный крик." Тэм Гринхилл
"Ужели суслик твоего коварства нагадит в плов доверья моего?". Л.Филатов 
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0558 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.