Computer >> Hướng Dẫn Máy Tính >  >> Xử Lý Sự Cố >> Bảo Trì Máy Tính

Khắc Phục Lỗi Runtime Error 429 Trong Visual Basic: Sửa Nhanh Office Automation

Khi tự động hóa ứng dụng Microsoft Office bằng macro Visual Basic, bạn có thể nhận lỗi:

"Run-time error '429': ActiveX component can't create object"

Điều này xảy ra khi Windows COM không tạo được Automation object được yêu cầu, khiến object không khả dụng cho Visual Basic. Tuy nhiên lỗi không xuất hiện trên tất cả máy.

Ứng dụng Office được tự động hóa qua hệ thống server tự động, dựa trên kiến trúc Windows COM. COM (Component Object Model) là tiêu chuẩn giao diện nhị phân cho thành phần phần mềm.

Nguyên Nhân Gây Ra Runtime Error 429

Nhiều lý do gây lỗi runtime 429 trong Visual Basic. Một số lý do (xuất hiện nếu bất kỳ điều nào đúng):

  • Lỗi trong ứng dụng.
  • Lỗi trong cấu hình hệ thống.
  • Thiếu thành phần.
  • Thành phần bị hỏng.

Cách Khắc Phục Runtime Error 429

Bước 1 – Đảm Bảo Ứng Dụng Tương Thích Automation

Kiểm tra ứng dụng có làm việc với automation không. Nếu không thì vô nghĩa. Cách kiểm tra: troubleshoot.

  • Start > Run.
  • Gõ tên ứng dụng (ví dụ: Word để troubleshoot Microsoft Word).
  • OK.

Bước 2 – Đăng Ký Lại Ứng Dụng

Đăng ký lại cho automation server đọc được ứng dụng. Làm cho chương trình gây lỗi.

  • Start > Run.
  • Gõ C:\Program Files\Microsoft Office\Office\Word.exe /regserver.
  • Ví dụ trên cho Microsoft Word.

Bước 3 – Đổi Tên Normal.dot Và Word.xlb

Bước này cần vì đôi khi lỗi 429 do automation thất bại do file Normal.dot template hoặc Word.xlb resource file hỏng.

  • Tìm tất cả file Normal.dot và Word.xlb trên hệ thống, đổi tên chúng.
  • Chạy lại automation test. Nếu chạy được, file bị xóa sẽ được tạo lại cùng ứng dụng.
  • Nếu không, đổi tên lại gốc và dùng tiếp.

Bước 4 – Dọn Dẹp Registry

  • Tải công cụ dọn Registry

Registry là phần cực quan trọng của Windows, liên tục được dùng để chạy mượt mà. Mỗi lần dùng hệ thống, hàng trăm cài đặt Registry cần đọc để nhớ file/cài đặt. Thật không may, nhiều cài đặt bị hỏng, gây lỗi Runtime. Dùng Registry Cleaner quét và sửa cài đặt hỏng. Rất khuyến nghị, xem công cụ top bên dưới.