2010-03-11 13 views
23

Khi tôi cố tạo đối tượng COM trong tập lệnh VB trên máy tính Windows 7 (64 bit), tôi luôn gặp lỗi sau:Không thể sử dụng CreateObject từ các tập lệnh VB trên Windows 7 x64

"ActiveX component can ' t tạo đối tượng 'xxx.xxx' Mã số:.. 800a01ad

tôi có ứng dụng sử dụng các đối tượng COM mà không cần bất kỳ vấn đề tôi đã cố gắng chạy dòng lệnh trong chế độ admin, có sự khác biệt

có cách nào. để bật tính năng này?

Trả lời

48

Trình thông dịch VBScript (cscript. exe/wscript.exe) có hai phiên bản trên phiên bản Windows 64 bit: phiên bản 32 bit và phiên bản 64 bit.

Phiên bản 32 bit chỉ có thể tạo và sử dụng các thành phần COM 32 bit và phiên bản 64 bit có thể tạo và chỉ sử dụng các thành phần COM 64 bit.

Theo mặc định, các tệp .vbs được liên kết với phiên bản 64 bit. Bạn COM thành phần rất có thể là một 32-bit, do đó lỗi.

Bạn có thể tìm phiên bản 32 bit trong thư mục %windir%\SysWOW64. Ra mắt phiên bản này sẽ cho bạn truy cập vào tất cả các thành phần COM 32-bit:

%windir%\SysWOW64\wscript.exe myScript.vbs 

hoặc

%windir%\SysWOW64\cscript.exe myScript.vbs 
+1

Cảm ơn bạn! Tiếng Anh> Tiếng Việt. –

+1

Sau khi đập đầu tôi trong một vài giờ, bạn đã cứu cả ngày! – Vitaliy

+0

Bạn có biết cách làm công việc này cho các ứng dụng HTA không, tôi thấy mã như sau: và làm cho nó như thế này rõ ràng là không thành công: ** < script type = "text/vbscript" src = "% windir% \ SysWOW64 \ wscript.exe utils.vbs"> ** –