Ошибка выполнения VBA 429 при создании объекта Shell32.dll - PullRequest
0 голосов
/ 12 апреля 2019

Я пытаюсь написать функцию VBA, которая получит дескриптор для определенного уже открытого окна IE.Я нашел ниже код после некоторого поиска в Google для этого: -

Public Function FindIEObject(target As String) As InternetExplorerMedium
Set objShell = CreateObject("Shell.Application")
IE_count = objShell.Windows.Count
For x = 0 To (IE_count - 1)
    On Error Resume Next    
    my_url = objShell.Windows(x).Document.Location
    my_title = objShell.Windows(x).Document.Title
    If InStr(my_title, target) > 0 Then 
        Set FindIEObject = objShell.Windows(x)
        Set myIE = objShell.Windows(x)
        Exit For
    End If
Next
End Function

Этот код работает абсолютно нормально на моем компьютере, однако, когда я развертываю инструмент в среде Citrix нашего клиента, я получаю ошибку "ActiveX компонент может«создать объект» в строке 3

Я провел небольшое исследование на Google и на базе, в которой воспользовался администратором Citrix - специалистом службы технической поддержки, чтобы заменить файл shell32.dll в папке windows / system32 новым новымкопирует и перерегистрирует его.

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

Пожалуйста, если кто-нибудь может помочь мне понять, что нужно сделать, чтобы код работал нормально.Заранее спасибо.

Преманшу

1 Ответ

0 голосов
/ 15 апреля 2019

Эта ошибка возникает, когда объектная модель компонентов (COM) не может создать запрошенный объект автоматизации, и, следовательно, объект автоматизации недоступен для Visual Basic.Эта ошибка возникает не на всех компьютерах.

В Visual Basic существует несколько причин ошибки 429. Ошибка возникает, если выполняется любое из следующих условий:

(1) Существуетошибка в приложении.

(2) В конфигурации системы произошла ошибка.

(3) Отсутствует компонент.

(4) Естьповрежденный компонент.

Вы можете попробовать изучить код, сервер автоматизации и систему, чтобы сузить проблему.

Вы можете попытаться обратиться по приведенной ниже ссылке.полезная информация.

Вы получаете ошибку времени выполнения 429 при автоматизации приложений Office

...