Привязать к уже открытой форме, созданной с помощью CreateObject

Мне было интересно, возможно ли то, что я пытаюсь сделать. Я создал библиотеку классов С#, которая вызывает форму при вызове из VBScript с помощью CreateObject.

У меня есть VBS, который передает некоторые данные в форму, и после завершения сценария, очевидно, все ссылки теряются. Я хотел знать, есть ли способ подключиться и использовать существующую форму в следующий раз, когда я снова вызову сценарий VBS?

Set e = CreateObject("MyObject")
'SendEvents to Form'
'Script ends.. all references lost'

'Script is run again'
Set e = CreateObject("MyObject")
'Is it possible to send events to the existing form, instead of closing it and creating new one?'

* Редактировать: в настоящее время я использую свою библиотеку классов, чтобы закрыть существующую форму при повторном вызове сценария. Однако у меня есть запрос пользователя, чтобы он оставался открытым независимо от того, сколько раз вызывается скрипт. Я не уверен, как я могу использовать существующую форму для следующего вызова CreateObject. Является ли это возможным?


person Vicky    schedule 17.06.2012    source источник


Ответы (1)


Попробуйте это так

Set e = CreateObject("MyObject")
'SendEvents to Form'
'Script ends.. all references lost'

'Script is run again'
Set e = GetObject(, "MyObject") 'no, the empty parameter is no typo

См. http://technet.microsoft.com/en-us/library/ee176980.aspx для получения дополнительной информации.

person peter    schedule 17.06.2012