GetRef для захвата методов? - PullRequest
4 голосов
/ 07 июня 2010

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

Ответы [ 2 ]

2 голосов
/ 08 июня 2010

Нет, GetRef не поддерживает методы класса.

0 голосов
/ 05 февраля 2018

Есть обходной путь для этого, см. Мой ответ здесь

Здесь полный образец

Const forReading = 1, forWriting = 2, forAppending = 8, CreateFile = True
Set my_obj = CreateObject("Scripting.FileSystemObject").OpenTextFile("c:\temp\test.txt", forWriting, CreateFile)

Function my_function(my_obj, method, text)
  command = "my_obj." & method & " """ & text & """"
  ExecuteGlobal command
End Function

'make a reference to our function
Set proc = GetRef("my_function") 
'and call it with parameters, the first being the method invoked
Call proc(my_obj, "WriteLine", "testing")

'cleanup'
my_obj.Close
Set my_obj = Nothing
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...