Задача такая: имеется текст на VB, но в качестве редактора (IDE) выступает прога на VC++. Сам VB машине установлен. Как из VC++ заставить VB этот текст компилить(интерпретировать), выдавать ошибки, вставать на точках останова и т.д. (VB при этом видно быть не должно). Иными словами, надо полностью(по крайней мере в плане компиляции/выполнения/отладки) заменить VB IDE на свою.
Есть такая штука — Visual Basic Extensibility, но она вроде как для написания аддинов и я не знаю, можно ли ей тут как-то воспользоваться.
Ответ (по крайней мере, вполне соответствующий моим целям) нашел сам, так что в соответствии с рекомендациями форума отвечу сам себе и всем интересующимся.
Есть целый набор интерфейсов
Microsoft Windows Script Interfaces, внутри которого, в частности, есть
Script Engine (это то, что собственно и занимается разбором синтаксиса конкретного языка), и
Script Host(который предоставляет набор объектов для доступа из Script Engine). Например, Internet Explorer является Script Host'ом (с объектами типа frame, document и т.д), и, по дефолту, использует два скрипт-движка (тоже, естественно, от MS) — JScript Engine и VBScript Engine. Ни что не мешает вам разработать движок для собственного языка и писать скрипты на нем или наоборот, завернуть набор своих объектов в стандарные обертки и "склеивать" их потом стандартным VBScript'ом.
Подробнее об этом можно прочитать
в MSDN (у меня — июль 2001) в разделе
Platform SDK Documentation\Tools and Scripting\Scripting\Microsoft Windows Script Interfaces.
Но это еще не все. Есть еще возможность написать
свой отладчик для отладки скриптов. Название сему —
Active Script Debugging Interfaces (правда в июльском MSDN этой инфы нет, но найти можно).
Но и это не все. У меня-то проблема в том, что заказчик желает писать свои скрипты на
русском языке (вот ведь привереда

). Ни VBScript, ни JScript символы национальной кодировки не поддерживают. Что делать? Писать свой скрипт-движок — так это надо либо уметь, либо долго учиться, чтобы что-нибудь более-менее серьезное сделать (поверьте мне — долгое время изучал в теории и практике принципы построения компиляторов). Так вот, на этот случай Microsoft распространяет целый
VBA SDK, который предоставляет целый спектр сервисов — от отладки до подсветки синтаксиса (в Word'е макросы все писали?

). Подписчики MSDN могут найти его в своей подписке (у меня, в частности, VBA SDK 6.3 обнаружился в сентябрьском выпуске 2001 года, диск 0008.1) или скачать через официального распространителя — компанию
Summit Software (support там же).
Уфф! Теперь вроде бы все. Если у кого есть дополнения/поправки — буду рад

.
Здравствуйте Reostat, Вы писали:
R>Ответ (по крайней мере, вполне соответствующий моим целям) нашел сам, так что в соответствии с рекомендациями форума отвечу сам себе и всем интересующимся.
Вот ведь, а я решил что вопрос из другой оперы.
R>Есть целый набор интерфейсов Microsoft Windows Script Interfaces, внутри которого, в частности, есть Script Engine (это то, что собственно и занимается разбором синтаксиса конкретного языка), и Script Host(который предоставляет набор объектов для доступа из Script Engine). Например, Internet Explorer является Script Host'ом (с объектами типа frame, document и т.д), и, по дефолту, использует два скрипт-движка (тоже, естественно, от MS) — JScript Engine и VBScript Engine. Ни что не мешает вам разработать движок для собственного языка и писать скрипты на нем или наоборот, завернуть набор своих объектов в стандарные обертки и "склеивать" их потом стандартным VBScript'ом. Подробнее об этом можно прочитать в MSDN (у меня — июль 2001) в разделе Platform SDK Documentation\Tools and Scripting\Scripting\Microsoft Windows Script Interfaces.
Ага, и все это существует с 96(?)

. До сих пор ощущение, что я только что вышел из леса.
R>Но это еще не все. Есть еще возможность написать свой отладчик для отладки скриптов. Название сему — Active Script Debugging Interfaces (правда в июльском MSDN этой инфы нет, но найти можно).
Это круто, но сочетание "
возможность написать" по-моему мало кого радует. Мать, ну сколько можно? А приходится.
R>Но и это не все. У меня-то проблема в том, что заказчик желает писать свои скрипты на русском языке (вот ведь привереда
). Ни VBScript, ни JScript символы национальной кодировки не поддерживают. Что делать? Писать свой скрипт-движок — так это надо либо уметь, либо долго учиться, чтобы что-нибудь более-менее серьезное сделать (поверьте мне — долгое время изучал в теории и практике принципы построения компиляторов). Так вот, на этот случай Microsoft распространяет целый VBA SDK, который предоставляет целый спектр сервисов — от отладки до подсветки синтаксиса (в Word'е макросы все писали?
). Подписчики MSDN могут найти его в своей подписке (у меня, в частности, VBA SDK 6.3 обнаружился в сентябрьском выпуске 2001 года, диск 0008.1) или скачать через официального распространителя — компанию Summit Software (support там же).
Вот только этот VBA SDK, на сколько я понял из объяснений VladD2, весьма и весьма платный (для распространения в составе своего ПО)

. Хотя, конечно, предоставляемый сервис того стоит ...
-- Пользователи не приняли программу. Всех пришлось уничтожить. --
Здравствуйте Коваленко Дмитрий, Вы писали:
R>>Но это еще не все. Есть еще возможность написать свой отладчик для отладки скриптов. Название сему — Active Script Debugging Interfaces (правда в июльском MSDN этой инфы нет, но найти можно).
КД>Это круто, но сочетание "возможность написать" по-моему мало кого радует. Мать, ну сколько можно? А приходится.
Нет, ну в чем проблема? Не хочешь писать — бери готовый, напр.
Microsoft Script Debugger. Тут речь о том, что если
надо написать, то решение этой задачи тебе уже облегчили.
КД>Вот только этот VBA SDK, на сколько я понял из объяснений VladD2, весьма и весьма платный (для распространения в составе своего ПО)
. Хотя, конечно, предоставляемый сервис того стоит ...
Ну дык ведь платить-то надо только "в самом конце", т.е. если собираешься распротсранять свое ПО как лицензионное и за деньги, а все эксперименты, отладка и доводка — бесплатно. И потом, если заказчик хочет иметь определенные сервисы (в моем случае — русский язык), значит он готов за это платить. Но эти рассуждения, вообще говоря, уже для другого форума...
Здравствуйте Reostat, Вы писали:
R>Здравствуйте Коваленко Дмитрий, Вы писали:
R>>>Но это еще не все. Есть еще возможность написать свой отладчик для отладки скриптов. Название сему — Active Script Debugging Interfaces (правда в июльском MSDN этой инфы нет, но найти можно).
КД>>Это круто, но сочетание "возможность написать" по-моему мало кого радует. Мать, ну сколько можно? А приходится.
R>Нет, ну в чем проблема? Не хочешь писать — бери готовый, напр. Microsoft Script Debugger. Тут речь о том, что если надо написать, то решение этой задачи тебе уже облегчили.
Эээээ... . Возможно я просто в него не врубился. Его можно к любому приложению прикрутить? Черт, это тогда однозначно прийдется раставаться со ScriptControl'ом.
R>Ну дык ведь платить-то надо только "в самом конце", т.е. если собираешься распротсранять свое ПО как лицензионное и за деньги, а все эксперименты, отладка и доводка — бесплатно. И потом, если заказчик хочет иметь определенные сервисы (в моем случае — русский язык), значит он готов за это платить. Но эти рассуждения, вообще говоря, уже для другого форума...
Да вообшем-то это я так брякнул —

. Заказчик у нас богатый
-- Пользователи не приняли программу. Всех пришлось уничтожить. --