Перейти до основного
Підтримка
Вхід
Вхід за допомогою облікового запису Microsoft
Увійдіть або створіть обліковий запис.
Вітаємо,
Виберіть інший обліковий запис.
У вас є кілька облікових записів
Виберіть обліковий запис, за допомогою якого потрібно ввійти.

Загальні відомості

Під час використання нового оператора або функції CreateObject Microsoft Visual Basic, щоб створити новий екземпляр застосунку Microsoft Office, може з'явитися таке повідомлення про помилку:

Помилка виконання '429': компонент ActiveX не вдається створити об'єкт

Ця помилка виникає, коли модель компонентних об'єктів (COM) не вдалося створити об'єкт запитаного автоматизації об'єкта автоматизації недоступна, тому на Visual Basic. Ця помилка виникає на всіх комп'ютерах. У цій статті описується для діагностики та вирішення поширених проблем, що може призвести до цієї помилки.

Додаткові відомості

У Visual Basic існує декілька причин помилки 429. Помилка виникає, якщо будь-який з таких умов:

  • Існує помилка в застосунку.

  • Існує помилка в конфігурації системи.

  • Є компонентом відсутні.

  • Існує компонент пошкоджений.

Щоб визначити причину появи повідомлення про помилку, усунути проблему. Якщо відображається "429" повідомлення на клієнтському комп'ютері, скористайтеся наведеними нижче відомостями, виявлення й усунення помилки у програмах Microsoft Office. Примітка. Деякі нижченаведені відомості також може бути Office COM-серверів. Однак у цій статті припускається, що потрібно автоматизувати застосунками.

Перевірте код

Перш ніж ви виправляєте неполадку, повідомлення про помилку, спробуйте з'ясувати, один рядок коду, який може бути причиною проблеми. У разі виявлення, що один рядок коду може бути причиною, виконайте такі дії.

  • Переконайтеся, що код, використовує створення явного об'єкта. Проблеми, легше, щоб визначити, якщо вони є Америки одному дії. Наприклад, знайдіть неявного об'єктів, створення, як одне з таких. Зразок коду, 1

    Application.Documents.Add 'DON'T USE THIS!!

    Зразок коду, 2

    Dim oWordApp As New Word.Application 'DON'T USE THIS!!
    '... some other code
    oWordApp.Documents.Add

    Обидва ці зразки-код, скористайтеся створення неявного об'єкта. Microsoft Office Word 2003 не запускається, поки не змінна називається принаймні один раз. Через те, що можна назвати змінна на різні частини програми, проблема може бути важко знайти. Це може бути важко, щоб переконатися, що проблему викликає під час застосування об'єкт, або під час створення об'єкт документа . Замість того, ви можете телефонувати явного створення кожного об'єкта, окремо, таким чином.

    Dim oWordApp As Word.Application
    Dim oDoc As Word.Document
    Set oWordApp = CreateObject("Word.Application")
    '... some other code
    Set oDoc = oWordApp.Documents.Add

    Якщо явного виклики для створення кожного об'єкта, окремо, проблема полягає в легко з'ясувати. Це може також зробити код читання.

  • Функція CreateObject замість оператора створити під час створення екземпляр програми Office. Функції CreateObject уважно карти, процес створення, на яких використовується в більшості клієнтів для Microsoft Visual C++. - CreateObjectфункція дозволяє зміни в CLSID сервера між версіями. Можна використовувати, CreateObjectфункцію початку пов'язані об'єкти а також наприкінці пов'язані об'єкти.

  • Переконайтеся, що в рядку "ProgID", який передається в CreateObject правильно і переконайтеся, що додаток "ProgID" – це версія незалежних. Наприклад, за допомогою рядка "Поданому" замість використання додаток "Excel.Application.8". Система, що не вдається, можливо, стару версію Microsoft Office або новішу версію Microsoft Office, ніж версія, яку вказано в рядку "ProgID".

  • Команда Erl про номер рядка рядка коду, який не вдасться. Це може допомогти вам налагодження програм, які не можна запустити в IDE. Наведений нижче код сповіщає яких автоматизації -об'єкт не можна створити (Microsoft Word або Microsoft Office Excel 2003):

    Dim oWord As Word.Application
     Dim oExcel As Excel.Application
     
     On Error Goto err_handler
     
     1: Set oWord = CreateObject("Word.Application")
     2: Set oExcel = CreateObject("Excel.Application")
     
     ' ... some other code
     
     err_handler:
       MsgBox "The code failed at line " & Erl, vbCritical

    Використовуйте функцію MsgBox і номер рядка відстежувати повідомлення про помилку.

  • Використовуйте наприкінці обов'язковими наступним чином:

    Dim oWordApp As Object

    Раннє пов'язані об'єкти, потрібно їх користувацьких інтерфейсів для вибудовували, в процесі межі. Якщо інтерфейсу користувача, не вибудовували CreateObject або створити, з'являється повідомлення "429" помилка. У кінці пов'язані об'єкт, використовує IDispatch системні інтерфейс, який не потребує користувача проксі-сервера, щоб бути переданий. Використовувати в кінці пов'язані щоб переконатися, що вона працює належним чином. Якщо проблема лише тоді, коли об'єкт початку пов'язані, проблема полягає в тому, у застосунок-сервер. Як правило, можна переінсталювати застосунок, як описано в розділі "Перевірка автоматизації сервер" цієї статті, щоб вирішити цю проблему.

Перевірте сервер автоматизації

Найпоширеніша причина появи помилка виникає під час використання CreateObject або створити , це проблема, яка стосується застосунок-сервер. Як правило, конфігурація застосунку або інсталяції застосунку спричиняє проблему. Щоб усунути неполадки, використовуйте наступні методи:

  • Переконайтеся, що автоматизації застосунок Office інстальовано на локальному комп'ютері. Переконайтеся, що для запуску застосунку. Для цього натисніть кнопку Пускдив. Запуска потім повторіть для запуску програми. Якщо не вдається запустити програму вручну, застосунок не буде працювати через автоматизації.

  • Повторна Реєстрація такі програми:

    1. Натисніть кнопку Пускі виберіть запустити.

    2. У діалоговому вікні виконати введіть шлях до сервера і потім додати /RegServer кінець рядка.

    3. Клацніть OK. Застосунок запускається в попередження. Застосування є повторно зареєстровані як сервер COM.

    Якщо проблема виникає в тому, що розділ реєстру відсутній, ці дії зазвичай виправити неполадку.

  • Перевірте ключ LocalServer32 за ідентифікатором CLSID для застосунку, потрібний для автоматизації. Переконайтеся, що ключ LocalServer32 вказує на правильне розташування в застосунку. Перевірте шлях до файлу у форматі найкоротшим шляхом (DOS 8.3). Вам не потрібно зареєструвати сервер за допомогою ім'я найкоротшим шляхом. Проте довгі імена вбудований пробіли може спричинити неполадки у деяких системах. Перевірте ключ шлях, який зберігається на сервері, запустити редактор реєстру Windows, наступним чином:

    1. Натисніть кнопку Пускі виберіть запустити.

    2. Введіть regeditі натисніть кнопку OK.

    3. Перейдіть до розділу HKEY_CLASSES_ROOT\CLSID. Ідентифікатори CLSID для серверів автоматизації, зареєстрований в системі, що є в цьому ключі.

    4. Використовувати такі значення розділу CLSID, щоб знайти ключ, який відповідає автоматизації застосунок Office. Перевірте ключ LocalServer32 розділу CLSID шляху до.

      Сервер для офісу

      Розділ реєстру CLSID

      Access.Application

      {73A4C9C1-D68D-11D0-98BF-00A0C90DC8D9}

      Excel.Application

      {00024500-0000-0000-C000-000000000046}

      Outlook.Application

      {0006F03A-0000-0000-C000-000000000046}

      PowerPoint.Application

      {91493441-5A91-11CF-8700-00AA0060263B}

      Word.Application

      {000209FF-0000-0000-C000-000000000046}

    5. Перевірте шлях, щоб переконатися, що вона відповідає, фактичне розташування файлу.

    Примітка. Короткі імена може здатися правильно, якщо вони не правильно. Наприклад, Office, так і Microsoft Internet Explorer (, якщо вони інстальовані на своїх місцях, за промовчанням) є найкоротшим шляхом, подібний до C:\PROGRA~1\MICROS~-X\ (де X -число). Це ім'я може спочатку відображається ім'я найкоротшим шляхом. Щоб визначити, чи правильний шлях, виконайте такі дії:

    1. Натисніть кнопку Пускі виберіть запустити.

    2. Скопіюйте значення в реєстрі і вставте значення в діалоговому вікні запуску . Примітка. Видалення /automation перемикач, перед запуском програми.

    3. Клацніть OK.

    4. Переконайтеся, що застосунок працює належним чином. Якщо застосунок після натискання кнопки "ОК", сервер неправильно зареєстровано. Якщо застосунок не запускається після натискання кнопки "ОК", замініть значення розділу LocalServer32 правильний шлях. Якщо можна, використовуйте ім'я найкоротшим шляхом.

  • Перевірте, можливо, пошкоджена Normal. dot або Excel.xlb файл ресурсів. Під час автоматизації Microsoft Word або Microsoft Excel, якщо пошкоджено або Normal. dot у програмі Word або Excel.xlb ресурс-файл у програмі Excel, можуть виникати проблеми. Щоб перевірити ці файли, пошук, локальні жорсткі диски для всіх випадків Normal. dot або Excel.xlb. Примітка. Ви можете ознайомитися з кількома копії цих файлів. Існує одна копія кожного з цих файлів для кожного профілю користувача, який встановлений у системі. Тимчасово, перейменувати файли Normal. dot або Excel.xlb файлів і перезапустіть автоматизації перевірку. Microsoft Word, Excel і як створити ці файли, якщо вони не можуть знайти в них. Переконайтеся, що код працює. Якщо код працює, коли буде створено новий файл Normal. dot, видаліть файли, перейменований. Ці файли пошкоджено. Якщо код не працює, слід відновити, ці файли до початкових імен файлів, щоб зберегти Настроювані параметри, збережених у цих файлів.

  • Запустіть застосунок під обліковим записом адміністратора. Серверів Office, потребують доступу на читання та записування до реєстру, так і на диску. Серверів Office може не запускатися належним чином, якщо поточні настройки безпеки, забороняють доступ для читання та записування.

Перевірка системи

Конфігурації системи, також може спричинити проблеми для серверів, COM-процес створення. Щоб усунути неполадки, використайте нижченаведені способи в системі, на якому виникає помилка:

  • Перевірте, чи проблема з будь-якої з обробки на сервері. Якщо застосунок, який використовує певний COM-сервер (наприклад, Word), тест на інший сервер процес переконайтеся, що проблема не відбуваються, COM шар себе. На комп'ютері не можна створити з COM-процес-сервером, переінсталюйте OLE системних файлів, як описано в розділі "Переінсталяції Microsoft Office" цієї статті або переінсталювати операційну систему, щоб вирішити цю проблему.

  • Перевірте номери версій для OLE системних файлів, які автоматизації. Ці файли зазвичай інсталюються у наборі. Ці файли, має відповідати номери складань. Неправильна настройка інсталяції утиліта помилково інсталювати файли окремо. Це призводить до файлів, щоб мати невідповідні. Щоб уникнути проблем у автоматизації, перевірте, файли, щоб переконатися, що файли будує відповідає. Автоматизація файли, які розміщуються в каталозі Windows\System32. Перевірте такі файли.

    Ім’я файлу

    Версія

    Дата змінення

    Asycfilt.dll

    10.0.16299.15

    29 вересня 2017

    Ole32.dll

    10.0.16299.371

    29 березня 2018

    Oleaut32.dll

    10.0.16299.431

    3 травня 2018

    Olepro32.dll

    10.0.16299.15

    29 вересня 2017

    Stdole2.tlb

    3.0.5014

    29 вересня 2017

    Перевірте версію файлів, файл у провіднику Windows, клацніть правою кнопкою миші та виберіть пункт Властивості. Зверніть увагу на останні чотири цифри версії файлу (номер складання) і Дата останнього змінення файлу. Переконайтеся, що ці значення має бути однаковою для всіх файлів автоматизації. Примітка. Зазначені нижче файли, які для Windows, 10 версії 1709, складання 16299.431. Ці числа й дати, є лише прикладами. Значення можуть відрізнятися.

  • Використання утиліти конфігурації системи (Msconfig.exe), вивчення запуску служби та системи для застосунки сторонніх виробників, які можуть обмежити на запуск коду у програмі Office. Щоб отримати додаткові відомості про Msconfig.exe див. таку статтю бази знань Майкрософт:

    181966 Запустіть утиліту конфігурації системи, додаткові параметри, що виправлення неполадок Outlook автоматизації програми, наприклад, може не через те, що використовується антивірусну програму, яка має функції, "сценарій блокування". Примітка. Вимкнути антивірусну програму, тимчасово на випробування системи, який не підключено до мережі. Крім того, виконайте наведені нижче дії в Outlook, щоб вимкнути надбудови сторонніх виробників Цей спосіб, усуває проблему, зверніться до виробника сторонніх виробників антивірусних програм або додаткові відомості про оновлення антивірусної програми.

    1. У меню " файл " виберіть Параметриі виберіть надбудови.

    2. Клацніть Керування надбудовамиі виберіть команду перейти. Примітка. Відкриється діалогове вікно COM - надбудови .

    3. Зніміть прапорець для будь-якої третьої сторони надбудови і натисніть кнопку OK.

    4. Перезапустіть програму Outlook.

Переінсталюйте систему Office

Якщо жоден з попередніх дій проблему вирішено, видалення та переінсталяція системи Office.

Щоб отримати додаткові відомості див. таку Office статті:

Завантажити та інсталювати повторно інсталювати службу Office 365 або Office 2016 на ПК або Mac

Посилання

Щоб отримати додаткові відомості про Автоматизація пакета Office а також приклади коду, перейдіть на веб-сайт корпорації Майкрософт.

Початок роботи з Office розробки

Потрібна додаткова довідка?

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.

Спільноти допомагають ставити запитання й відповідати на них, надавати відгуки та дізнаватися думки висококваліфікованих експертів.

Чи ця інформація була корисною?

Наскільки ви задоволені якістю мови?
Що вплинуло на ваші враження?
Натиснувши кнопку "Надіслати", ви надасте свій відгук для покращення продуктів і служб Microsoft. Ваш ІТ-адміністратор зможе збирати ці дані. Декларація про конфіденційність.

Дякуємо за відгук!

×