Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Различные варианты реализации сценариев приложения - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ras и сосотояние модема http://www.cyberforum.ru/cpp-beginners/thread465710.html
Здравстуйте. Для дозвона я пользуюсь функцией RasDial, что не позволяет мне отслеживать состояние модема обычными средствами(набор номера, занято, нет сигнала в линии и т.д.), два процесса не...
C++ как работать с драйвером для bt848/bt878? Кто-нибудь знает как работать с _КАКИМ-НИБУДЬ_ драйвером для ентого чипа??? Хотя бы, как работать с дистанционкой! ХОТЬ ЧТО_НИБУДЬ И КАКИМ-ЛИБО СПОСОБОМ! Спасибо! http://www.cyberforum.ru/cpp-beginners/thread465705.html
CDaoRecordset в Диалоговом приложении C++
Объявляю в DialogBased переменные классов CDaoRecordset и CDaoDatabase она их вроде как воспринимает,после точки выводит список методов,а при компиляции обзывает CDaoRecordset и CDaoDatabase...
C++ Настрока защиты WinNT
Привет всем. Если кто знает, помогите. Как обеспечить доступ процессу с привилегией сервиса, к сетевому ресурсу на другой машине в том же домене. Заранее спасибо.
C++ Как в одну форму CFormView загрузить несколько диалоговых ресурсов? http://www.cyberforum.ru/cpp-beginners/thread465667.html
Спецы, посоветуйте, плииз, кто сталкивался с подобной проблемой. Необходимо в ОДНОМ окне приложения иметь возможность работать с разными диалоговыми окнами (описанными каждый в своем ресурсе)....
C++ Что такое " nil " ? Возникла необходимость пользоваться чужой .dll , в описании которой сказано, что для выполнения одной из операций вместо поинтера нужно передать в эту функцию nil . Это должно быть что-то вроде... подробнее

Показать сообщение отдельно
Snork
Сообщений: n/a
01.03.2008, 14:36
Ну, для затравки расскажу, как я реализовал подобную схему в приложении, которое писал давным-давно.

Итак - приложение. В нём реализованы многие варианты настройки ГУИ - возможность перенастройки тулбаров, окон и т.д. и т.п. Но захотелось большего. Чтобы юзер мог выполнять какие-либо последовательности действий за одно нажатие кнопки. Иными словами, чтобы мог предусматривать собственные сценарии.

Сначала я сделал простенький язык - if-then-else, for и вызовы предусмотренных мною функций. Файлы в виде текста 'вешались' на кнопки тулбара и по нажатию - интерпретировались. Схема не понравилась. С одной стороны работало безумно медленно, с другой - язык не был универсальным. Например я не мог из скриптов писать в файл или вызывать API. (Точнее мог, но для каждой такой функции приходилось писать 'перенаправляющий' код в интерпретаторе.)

Тогда я сделал по другому. Каждой юзерской кнопке тулбара сопоставлялась dll. Из неё я брал ресурс - битмап для кнопки, и в ней должна была быть реализована в обязательном порядке функция RunScript. В неё передавался массив указателей на управляющие функции, реализованные в приложении. По нажатию эта функция вызывалась. А в ней юзер мог прописать всё, что душе угодно - как по управлению моим приложением, так и свои задачи (с диалогами! с записями в файл!).

Конечно теперь это смотрится коряво - неудобно согласовывать и т.п.

И вот теперь передо мной аналогичная задача. Но я как-то упустил эволюцию подобного рода технологий (позднего связывания). Конечно в основе должен лежать COM, но что использовать в качестве надстройки?

Свои схемы с обменом интерфейсами? Поддержка VBA- или J-скриптов? Ещё какие-нибудь фичи?

С большим удовольствием пообщаюсь с вами на эти темы.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru