Как ссылаться на библиотеку типов в vbscript (обычно с библиотекой xshell)
Я хочу использовать библиотеку xshell в vbscript, но когда я использовал createObject() для создания объекта, это не удалось, как я мог создать объект из библиотеки типов, предоставленной приложением Xshell?
Полагаю, что xshell можно хорошо зарегистрировать в системе, поскольку я могу добавить ссылку в проект Excel vba с помощью 'tools->reference->"Библиотека типов Xshell 1.0", затем я могу использовать dim xshell в качестве xshell.ScriptHost и я можно найти информацию Xshell из браузера объектов.
Я попытался oleviwer найти некоторую информацию о библиотеке типов Xshell 1.0, но на самом деле я не могу найти ProgID для xshell.
Я обращаюсь к exeScope, и я нахожу что-то интересное
в правом окне мы видим "ForceRemove {xxxx-xxxxxxxx-xxxx} = s'ScriptHost Class ....{ProgID=s'Xshell.ScriptHost.1'.... ForceRemove 'Programmable' ....}
Как я могу отменить удаление силы?
dim xshell
set xshell=CreateObject("C:\Program Files (x86)\Common Files\NetSarang\XshellCore.tlb")
MsgBox "success"
ошибка выполнения с кодом ошибки "800A01AD"
Компонент ActiveX не смог создать объект
1 ответ
Вы не можете создать экземпляр компонента COM из библиотеки типов. Библиотека типов - это файл определения, который описывает объекты, свойства и методы библиотеки объектов COM, которые он поддерживает, используя IUnknown
или же IDispatch
интерфейсы.
Это просто файл определения и не содержит никакой реализации. Если вы хотите попробовать и использовать XShell с использованием VBScript, вам нужно найти COM DLL, связанную с приложением.
Если XShell открыт для COM, он зарегистрирует ProgID в реестре Windows. Если вы можете найти ProgID в реестре, используя такие инструменты, как regedit.exe
Вы можете использовать следующий контрольный список для определения DLL, связанной с ним, и использовать ProgID
с CreateObject()
создать экземпляр экземпляра COM-компонента.
- Ошибка ASP 0177: 8007007e Server.CreateObject завершается ошибкой для COM DLL (информация об идентификации COM DLL из ассоциированного ProgID).