Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2009.09.27;
Скачать: [xml.tar.bz2];

Вниз

VBScript, куда делся класс?   Найти похожие ветки 

 
Skyle ©   (2009-07-30 06:20) [0]

Весь день вчера ковырял гугль и MSDN, к сожалению безуспешно. Поэтому спрошу здесь, вдруг подскажет кто.

Итак, ситуация. Есть файл, в нём код на VBScript. Один класс и несколько функций. Есть некий скриптхост, в котором есть некие расширения, в частности метод LoadModule. Его суть - берётся весь текст из указанного файла и вызывается IActiveScriptParse.ParseScriptText.

Результат работы этого метода: код из файла, который не в функциях и прочих процедурах выполняется, процедуры и функции добавляются в глобальный список и видны всему скрипту. Но есть одна проблема....

А где класс? Класс почему-то не виден.

То есть такой код работает

LoadModule "MyModule.vbs"

MsgBox SomeModuleFunc(1, 2, 3)


а вот такой нет

LoadModule "MyModule.vbs"

SET Obj = new SomeModuleClass


с ошибкой "Класс не определен: SomeModuleClass"

Так куда же делся класс?


 
palva ©   (2009-07-30 09:07) [1]


> Так куда же делся класс?

А он был? Он что, был определен в MyModule.vbs ? А глобальные переменные из MyModule появляются?

В любом случае нужно читать руководство к некоему скриптхосту и LoadModule.


 
Skyle ©   (2009-07-30 09:31) [2]

Глобальные переменные появляются, процедуры и функции тоже.

Не видно только классов. Ладно, видимо надо будет скрипт-хосту поддержку классов сделать, только пока что совершенно неясно куда рыть.

Проблема в том, что LoadModule делает некий "модуль", который добавляется глобально через AddObject в хост. И поэтому процедуры и переменные резолвятся как [MyModule.]MyGlobalVar или [MyModule.]SomeProc.

А вот с классами так не получается. И пока мне не ясно, как отдавать классы.

Пошёл искать мануал по ху из классы в vbscript.


 
palva ©   (2009-07-30 09:34) [3]

Может быть VBScript не допускает вложенных классов? А ведь именно это от него требуется.


 
Skyle ©   (2009-07-30 09:36) [4]


> palva ©   (30.07.09 09:34) [3]

Навряд ли. Классовые поля и свойства в VBScript допустимы (property Set).



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2009.09.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.004 c
8-1195024163
Den
2007-11-14 10:09
2009.09.27
Вывод изображения повер другого и сохранение всего этого в файл.


15-1248667367
ganda
2009-07-27 08:02
2009.09.27
убить программу, если выполнение процедуры затянулось


1-1216731919
TNT
2008-07-22 17:05
2009.09.27
Word + Delphi


11-1205706977
AMDX4
2008-03-17 01:36
2009.09.27
KOL + Linux


2-1248175930
EH
2009-07-21 15:32
2009.09.27
Компонент в виде object inspector





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский