Re[5]: Исполнение в своих EXE пользовательских скриптов
От: wildwind Россия  
Дата: 17.08.04 15:51
Оценка: 1 (1)
Здравствуйте, AlexKB, Вы писали:

AKB>Как эта функция называется? У сишного CRichEditCtrl есть что-то на эту тему, а в Паскале найти пока не удалось.

Нужно послать RichEdit'у (только) сообщение EM_FINDWORDBREAK. В VCL обертки кажется нет.

AKB>Что такое scope?

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

Парсингом только текущей строки вряд ли можно обойтись. Нужно ведь узнать, объект какого типа содержит в данный момент переменная слева от точки.
От модератора
От: Sinclair Россия https://github.com/evilguest/
Дата: 18.08.04 05:11
Оценка: :)
Обоим дискуссантам выношу по предупреждению за обсуждение контрафактного софта. В следующий раз наложу епитимью.
... << RSDN@Home 1.1.4 beta 1 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[2]: Исполнение в своих EXE пользовательских скриптов
От: Batiskaf Израиль http://www.mult.ru/
Дата: 18.08.04 06:17
Оценка:
Здравствуйте, kig, Вы писали:

kig>Здравствуйте, AlexKB, Вы писали:


kig>[]


kig>Здесь взгляни. Может подойдет?

Так это же на основе Dream controls, это еще наверное на них нужно лайсенс покупать.
Will I live tomorrow? Well I just can't say
But I know for sure — I don't live today.
Jimi Hendrix.
Re[6]: Исполнение в своих EXE пользовательских скриптов
От: AlexKB  
Дата: 18.08.04 06:57
Оценка:
Здравствуйте, wildwind, Вы писали:

AKB>>Как эта функция называется? У сишного CRichEditCtrl есть что-то на эту тему, а в Паскале найти пока не удалось.

W>Нужно послать RichEdit'у (только) сообщение EM_FINDWORDBREAK. В VCL обертки кажется нет.
Ясно. Спасибо.

AKB>>Что такое scope?

W>Область видимости. Здесь я имел в виду список объектов, доступных в данной точке кода. Если, скажем, допустимо вызывать список не только после точки или скобки, а в любом месте, то построить его будет сложнее.
Это верно, но с этим мы уже умеем справляться, на опыте нашего предыдущего скрипта.

W>Парсингом только текущей строки вряд ли можно обойтись. Нужно ведь узнать, объект какого типа содержит в данный момент переменная слева от точки.

Если в скрипте не использовать WITH и прочие приятные блоки (в предыдущей версии в нашем скрипте вообще не блоков), то тип определяется только содержимым текущей строки: либо объект из родительской программы, тогда мы знаем тип, естественно; либо объект объявлен в VBScript, тогда он типа Variant, точнее информация вытаскивается (в любом случае, кстати говоря) по его содержимому.
Сейчас мы собираемся использовать либо VBA (или SAX, эквивалентный VBA), а там парсингом всего текста будет заниматься продукт третьей фирмы, прикручиваемый к нашему EXE...
Alex
Re[8]: Исполнение в своих EXE пользовательских скриптов
От: AlexKB  
Дата: 18.08.04 07:35
Оценка:
Здравствуйте, Spaider, Вы писали:

S>>>Собственно, суксь прикрутил именно для того, чтобы самому maintenance скрипты корпать.

AKB>>Прикрученный SAX у пользователей работать будет? Или им твоего Дельфийского Экзешника не достаточно будет, потребуется инсталлировать пользователям SAX... и какой, кстати: рантайм (если есть) или дэвелоперский (жуть)?
S>Нет, у пользователей не будет, есссно, я же его не покупал.
Юридическую сторону вопроса чьей-либо конкретной разработки выяснять неинтересно.
Собственно, следующая строка содержит ответ на мой вопрос:

S>Чтобы использовать суксь басик на стороне клиента, нужно поставить redestibutable (пара dll-ек и один ActiveX).

Спасибо. Теоретически я себе примерно так всё и представляю, но практически его даже просто внутри D8 использовать пока не сумел.
Помощь нужна. Меню "Component" -> "Installed .NET Components...", закладка "ActiveX Components", у двух строчек поставил галочки:
Basic IDE Control
Basic NoUI Control
Далее [OK]... а дальше? В Tool Palette не появляется, как добавить — не вижу...

AKB>>Не понятно, как в VCL прикручивать ActiveX, если нет соответствующего DLL.

S>Собтвенно для "прикручивания" сама по себе DLL не нужна, нужна либо Type Library (для раннего связывания)
А она есть? Прошу прощения за чайниковские вопросы.

S>или, чтобы только ProdID (для позднего связывания).

Ну не работал я с подобными механизмами, как с ними управляться?

S>Естетсвенно, automation-объект должен быть зарегестрирован в системе, но добыть его для тебя -- обязанность внутренних механизмов COM.

Разве что я, видимо, должен каким-то образом уведомить COM об этом...

S>Это GDI, только с плюсом Читай MSDN, информации предостаточно.

...is the subsystem of the Windows XP operating system or Windows Server 2003 that is responsible for displaying information on screens and printers.
A graphics device interface, such as GDI+, allows application programmers to display information on a screen or printer without having to be concerned about the details of a particular display device. The application programmer makes calls to methods provided by GDI+ classes and those methods in turn make the appropriate calls to specific device drivers. GDI+ insulates the application from the graphics hardware, and it is this insulation that allows developers to create device-independent applications.

Т.е.
(1) на W2K и более ранних виндах не факт что будет работать?
(2) приложения и раньше почему-то получались device-independent, но теперь они будут правильно-независимыми?

S>>>Типа на варезах больше года...

AKB>>Надо будет посмотреть... это название конкретного сайта?
S>Это название нелегального софта вобще
Вот тут позволю себе не согласиться. Только что полазил по интерненту, посмотрел на контекст употребления слова WAREZ, типичные его определения звучат примерно так: "программы, не требующие регистрации", что заметно более широкое определение, нежели "нелегальный софт".
Alex
Re: Исполнение в своих EXE пользовательских скриптов
От: last shinji  
Дата: 18.08.04 07:35
Оценка: 2 (1)
Здравствуйте, AlexKB, Вы писали:

AKB>Может быть существуют фриварные или хотя бы платные модули, помогающие пользователям редактировать скрипты?


Вот пчелиный ВАСИК есть. Стоит недорого, с сорцами, правда написан, чуть чуть не да Delphi, по этому при встраивании в приложение придется немного помучаться (тк сорцы есть, думаю это возможно).
Носок исчез в гильбертовом пространстве. Туда ему и дорога.
Re[2]: Исполнение в своих EXE пользовательских скриптов
От: AlexKB  
Дата: 18.08.04 07:49
Оценка:
Здравствуйте, Batiskaf, Вы писали:

AKB>>Пользователям весьма желательно иметь подсказки при написании своих скриптов. Например такие, какие появляются в Delphi (или в MSVS) при вводе точки после объекта или при вводе скобки после имени процедуры. Имеются в виду объекты и процедуры, объявленные и реализованные внутри нашей программы.


AKB>>"Изобретать велосипед" не хочется. Пожалуйста, поделитесь опытом, у кого он имеется. Может быть существуют фриварные или хотя бы платные модули, помогающие пользователям редактировать скрипты?


B>Можешь заглянуть еще сюда, полезные у них штуки:

B>Link

Спасибо большое. Нам уже много линков накидали, все просмотреть не успеваем, поскольку через месяц beta-version должна уже работать...

Там есть выпадающие листбоксы подсказок, наподобие Дельфийских или ВБАшных? Если нет, то в остальном этот софт ничем не лучше нашей собственной разработки.
Alex
Re[2]: Исполнение в своих EXE пользовательских скриптов
От: AlexKB  
Дата: 18.08.04 07:56
Оценка:
Здравствуйте, last shinji, Вы писали:

AKB>>Может быть существуют фриварные или хотя бы платные модули, помогающие пользователям редактировать скрипты?


LS>Вот пчелиный ВАСИК есть. Стоит недорого, с сорцами, правда написан, чуть чуть не да Delphi, по этому при встраивании в приложение придется немного помучаться (тк сорцы есть, думаю это возможно).


Спасибо большое...

Там есть выпадающие листбоксы подсказок, наподобие Дельфийских или ВБАшных? Если нет, то... всё же... нам даже это красивое произведение не подходит, к сожалению.
Alex
Re[9]: Исполнение в своих EXE пользовательских скриптов
От: Spaider Верблюд  
Дата: 18.08.04 07:57
Оценка: 2 (1) :)
Здравствуйте, AlexKB, Вы писали:

AKB>Спасибо. Теоретически я себе примерно так всё и представляю, но практически его даже просто внутри D8 использовать пока не сумел.

AKB>Помощь нужна. Меню "Component" -> "Installed .NET Components...", закладка "ActiveX Components", у двух строчек поставил галочки:
AKB>Basic IDE Control
AKB>Basic NoUI Control
AKB>Далее [OK]... а дальше? В Tool Palette не появляется, как добавить — не вижу...

Я меня эта херь появляется только для Windows Forms приложений. Похоже, так и надо.
Я изначально пошёл по более другому пути. Сделал из SB6ENT.OCX сборку с помощью tlbexp и просто подключил её в reference'ы проекта.

AKB>>>Не понятно, как в VCL прикручивать ActiveX, если нет соответствующего DLL.

S>>Собтвенно для "прикручивания" сама по себе DLL не нужна, нужна либо Type Library (для раннего связывания)
AKB>А она есть? Прошу прощения за чайниковские вопросы.

S>>или, чтобы только ProdID (для позднего связывания).

AKB>Ну не работал я с подобными механизмами, как с ними управляться?

Ну, в двух словах нельзя объяснить, да и не поможет это, нужно хотя бы ключевые понятия COM освоить.

S>>Это GDI, только с плюсом Читай MSDN, информации предостаточно.

AKB>Т.е.
AKB>(1) на W2K и более ранних виндах не факт что будет работать?

Нет, вполне себе работает. Вся функциональность GDI+ фактически находится в gdiplus.dll. Если эту DLL положить в пределах досягаемости, работать будет хоть на Win98.

AKB>(2) приложения и раньше почему-то получались device-independent, но теперь они будут правильно-независимыми?


Ну, фактически GDI+ -- это латание дыр. Дело в том, что GDI (старый) жутко тормозной и не так чтобы фунциональностью богатый. Вот и переписали всё заново, как они это умеют.

S>>>>Типа на варезах больше года...

AKB>>>Надо будет посмотреть... это название конкретного сайта?
S>>Это название нелегального софта вобще
AKB>Вот тут позволю себе не согласиться. Только что полазил по интерненту, посмотрел на контекст употребления слова WAREZ, типичные его определения звучат примерно так: "программы, не требующие регистрации", что заметно более широкое определение, нежели "нелегальный софт".

Замнём, а то придёт злобный дядя Sinclair и будет всем нам ZX Spectrum...
... << RSDN@Home 1.1.4 @@subversion >>
--
К вашим услугам,
Re[3]: Исполнение в своих EXE пользовательских скриптов
От: Batiskaf Израиль http://www.mult.ru/
Дата: 18.08.04 08:14
Оценка:
Здравствуйте, AlexKB, Вы писали:

AKB>Здравствуйте, Batiskaf, Вы писали:


AKB>>>Пользователям весьма желательно иметь подсказки при написании своих скриптов. Например такие, какие появляются в Delphi (или в MSVS) при вводе точки после объекта или при вводе скобки после имени процедуры. Имеются в виду объекты и процедуры, объявленные и реализованные внутри нашей программы.


AKB>>>"Изобретать велосипед" не хочется. Пожалуйста, поделитесь опытом, у кого он имеется. Может быть существуют фриварные или хотя бы платные модули, помогающие пользователям редактировать скрипты?


B>>Можешь заглянуть еще сюда, полезные у них штуки:

B>>Link

AKB>Спасибо большое. Нам уже много линков накидали, все просмотреть не успеваем, поскольку через месяц beta-version должна уже работать...


AKB>Там есть выпадающие листбоксы подсказок, наподобие Дельфийских или ВБАшных? Если нет, то в остальном этот софт ничем не лучше нашей собственной разработки.

Есть возможность выпадающее меню выбросить, только содержимое менюхи нужно ручками заполнять, не смотрел как это делается, наверняка колбэк какой то приходит, надеюсь что с типом обьекта, вобщем покопайся, посмотри демохи (Link, документацию, лайсенс у них кажется не очень дорогой.
Will I live tomorrow? Well I just can't say
But I know for sure — I don't live today.
Jimi Hendrix.
Re[3]: Исполнение в своих EXE пользовательских скриптов
От: last shinji  
Дата: 18.08.04 08:21
Оценка: 2 (1)
Здравствуйте, AlexKB, Вы писали:

AKB>Там есть выпадающие листбоксы подсказок, наподобие Дельфийских или ВБАшных? Если нет, то... всё же... нам даже это красивое произведение не подходит, к сожалению.


Подсказок там нет. Хм.. есть такая штука как VBA SDK. Встраиваемый VB. Там вся M$`овская Intellisence есть. Однако трубует COM`ов.
Носок исчез в гильбертовом пространстве. Туда ему и дорога.
Re[4]: Исполнение в своих EXE пользовательских скриптов
От: AlexKB  
Дата: 18.08.04 16:10
Оценка:
Здравствуйте, last shinji, Вы писали:

AKB>>Там есть выпадающие листбоксы подсказок, наподобие Дельфийских или ВБАшных? Если нет, то... всё же... нам даже это красивое произведение не подходит, к сожалению.


LS>Подсказок там нет. Хм.. есть такая штука как VBA SDK. Встраиваемый VB. Там вся M$`овская Intellisence есть. Однако трубует COM`ов.


VBA имеет свои недостатки, в полном соответствии со своей ценой порядка 7 долларов. Кстати, не подписчики MSDN могут его использовать? На сайте этот момент неясно прописан.

И вообще... Кто-нибудь научился использовать VBA SDK?
Alex
Re[5]: Исполнение в своих EXE пользовательских скриптов
От: last shinji  
Дата: 18.08.04 16:57
Оценка:
Здравствуйте, AlexKB, Вы писали:

AKB>VBA имеет свои недостатки, в полном соответствии со своей ценой порядка 7 долларов. Кстати, не подписчики MSDN могут его использовать? На сайте этот момент неясно прописан.


Использовать то могут , но вот ключи к продукту скорее всего по паспорту .net`овскому получать придется. Сам воочию общался только с версией 6.0. С нее много воды утекло.

AKB>И вообще... Кто-нибудь научился использовать VBA SDK?


С ним примеры идут, калькулятор автоматизируют, дедушку Мерлина, которым MS Agent прикидывается, и много всего другого. Сейчас, может быть и новое, что появилось.
Носок исчез в гильбертовом пространстве. Туда ему и дорога.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.