Тема: Собственный реактор

Уважаемые господа!
Подскажите, пожалуйста, можно ли создать в VBA собственный реактор (на встроенные полагаться невозможно), который бы отзывался на подключение к ACAD'у определенной программы-приложения?

Re: Собственный реактор

вы слишком многого хотите от VBA...  :)  (без обид)
не для этого он делался...
но(!) подобный сабж выполнить можно..., но не на VBA :
что-то типа сервис-приложения со своим COM-интерфейсом, которое и будет решать задачу "остлеживания", а уже на VBA пишется класс-обертка для взаимодействия со своим сервисом.
вот общая суть, а реализовывать уже вам  :)

Re: Собственный реактор

Отнюдь, совсем немного. Все это делается легко.
Помести этот код в ThisDrawing:
Private Sub AcadDocument_BeginCommand(ByVal CommandName As String)
    MsgBox "Получена команда: " & CommandName
End Sub
Private Sub AcadDocument_EndCommand(ByVal CommandName As String)
    MsgBox "Окончена команда: " & CommandName
End Sub

Re: Собственный реактор

(3dcad) сабж гласит о возможности сигнализирования на подключение некой (определенной!) программы к AutoCad, а не об отслеживании выполненяемых prompt-команд...
(а уж какое приложение послало команду - это в BeginCommand/EndCommand точно не отловишь...)

Re: Собственный реактор

callisto, ты хоть разберись с примером и как работает AutoCAD вообще. Это именно то, что спрашивал Leonid. Prompt-команды - это из другой области.

Re: Собственный реактор

> 3dcad
Выглядит замечательно, но работает ненадежно, не ловит мышей... Поэтому и завел  разговор о собственной ловушке.
А программа-максимум для меня, действительно, - получать имя запускаемого приложения. И  кажется, почему-то, что эта штука на только меня одного интересует.Уверен, где-то, у кого-то что-то подобное уже есть. Потому и возопил ! А-уууу!

Re: Собственный реактор

:)  дык в том-то и дело что не ловит!
3dcad, помянул мне, чтобы я разобрался с его примером... а чего тут разбираться, если пример демонстрирует обработку событий "посыла" команд (набранных в командной строке) для текущего открытого документа...
а пусть-ка 3dcad расширит свой пример и покажет: как получить имя приложения, сформировавшего данную команду и выполнившую SendCommand...  :)))
Leonid - твоя "программа максимум" не из области AutoCad, а из области автоматизации вообще (!!!)...  и "А-УУУУ" прийдется кричать достаточно громко, а лучше браться за книжки  :)

Re: Собственный реактор

> callisto
Leonid - твоя "программа максимум" не из области AutoCad, а из области автоматизации  вообще
Думаю, можно даже сказать по-конкретнее - из области применения API-функций в VB(VBA) .Книжки, и даже очень толстые, у меня есть. Просто, как нормально ленивый человек
брожу в поисках какой-нибудь бесплатной программки...в сети.

Re: Собственный реактор

дык, вместо хождения уже сам давно бы наваял... :)))

Re: Собственный реактор

> callisto
А лень куда деть?

Re: Собственный реактор

м-да... с ентим конечно посложнее...  :)