Тема: Отладчик.

Поделитесь, пожалуйста, кто как борется с отсутствием отладчика!
Лично я пока удовлетворяюсь копированием текста команды в редактор vba4word, скрипт команды заворачиваю в процедуру и первыми строчками пишу что-то вроде

Set ThisApplication = GetObject("","TDMS.Application")
Set ThisObject = ThisApplication.Shell.SelObjects(0)

Коряво, зато быстро.
Но как-то все-равно, только покомандно отлаживаться можно, а этого иногда бывает недостаточно.
Есть ли вариант прицеплять TDMS к VisualStudio? Я уж пораскидывал мозгами насчет какого-нибудь wrap'а для TDMS в VisualStudio... По идее можно написать набор классов для написания во внешней среде программирования настройки целиком (были бы права на создание всех системных объектов через API и все интерфейсы). Только вот для полноценной отладки надо еще вешать CallBack'и на события TDMS (т.е. чтобы по событиям вызывались процедуры, написанные во внешней среде), а как это можно сделать не совсем понятно...
Простите, что несколько сумбурно...
Если кто подбирался к хорошему решению по отладке настройки TDMS, отзовитесь, плз!

Re: Отладчик.

Попробуй так:
в реестре HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\Windows Script\Settings\-->JITDebug (1)
В отлаживаемом скрипте в точке выпадения в дебагер инструкция stop

Re: Отладчик.

У меня на новой машине не работает... Офис 2007, если это важно. На другой машине с 2003 офисом работало...

Re: Отладчик.

Если на машине стоит MS Visual Studio, и там в настройках разрешен JIT debug, и соответственно в реестре взведен ключ HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\Windows Script\Settings\-->JITDebug (1).
то студия должна отлавливать любые скриптовые ошибки и предлагать запустить отладку этих ошибок.
Тоже самое касается и тдмс. Если в теле скрипта произошла ошибка (текущий пользователь должен быть SYSADMIN),
то тут же должно появиться окошко JIT debuger-a, или самой студии с предложением отладки... Надо нажать ДА, и студия загрузит в себя этот скрипт... Искуственно можно вызвать такую же ситуацию, если поставить в теле скрипта команду stop или искуственно создать ошибку, например деление на 0.. Студия её обработает как надо, и даст возможность отладки.

Теперь по поводу офиса. Не совсем понял как вы им отлаживаете скрипты ТДМС... Если вы используете "офисный" отладчик, в котором написан скрипт взаимодействующий с ТДМС через его  COM, то зайдите в настройки
Tools->References, найдите там библиотеку TDMS Lybrary 3.0  и снимите с неё галочку, нажмите OK. Потом зайдите сюда опять и теперь снова поставьте эту галочку.  Возможно всё у вас заработает. И вообще после кажлого билда ТДМС рекомендуется проделывать такие шаманские вещи. Потому что в этот момент офис перегенирирует свои знания об интерфейсах ТДМС

Re: Отладчик.

Ага. Значит так. На старом компе стояла ВижуалСтудия. На новом пока нет. Но ключик в реестре есть и я его поставил в "1".
На старом компе предлагался на выбор отладчик, и я выбирал не студию (слишком громоздко), а отладчик из пакета МСОффис 2003, название исполняемого файла MSE7.exe

(изменено: Nikulin.A, 10 февраля 2009г. 07:32:53)

Re: Отладчик.

Ситуация следующая.
Вот это окно, с предложением выбрать дебагер, которое у вас всплывало раньше

Отладчик.

вызывается vsjitdebugger.exe
Эту утилиту копирует Visual Studio при установке. Естественно раз у вас не стоит VS, то vsjitdebugger
вас больше не радует своими сообщениями об отладке скриптовых ошибок.
На самом деле в качестве vsjitdebugger может выступать любой отладчик, даже самописный. Просто его надо прописать в реестре, в качестве ловушки упавших процессов.

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug
параметр Auto - (1)
параметр Debugger - "c:\WINDOWS\system32\vsjitdebugger.exe" -p %ld -e %ld

(изменено: Shakin, 15 марта 2016г. 09:35:22)

Re: Отладчик.

Slava.Coder.Vrn пишет:

Поделитесь, пожалуйста, кто как борется с отсутствием отладчика!

А это про какой TDMS речь? В последних сборках 4.0 отладчик не идеальный, но вполне работоспособный.

Re: Отладчик.

Shakin пишет:

А это про какой TDMS речь? В последних сборках 4.0 отладчик не идеальный, но вполне работоспособный.


На дату не посмотрел  :rolleyes:

Re: Отладчик.

Shakin пишет:

А это про какой TDMS речь? В последних сборках 4.0 отладчик не идеальный, но вполне работоспособный.

Это называется некропост  :)

Re: Отладчик.

McZag пишет:
Shakin пишет:

А это про какой TDMS речь? В последних сборках 4.0 отладчик не идеальный, но вполне работоспособный.

Это называется некропост  :)

В последних версиях TDMS6 и TDMS7 отладчик не работает.

- Не работают точки остановки при запуске скриптов непосредственно в отладчике.
- При прерывании в случае ошибок, запускается TDMS Разработчик, скрипт открывается на проблемной строке, а дальше ... ничего не происходит.

Где искать проблему - непонятно.