2010-02-25 25 views

Trả lời

48

From Microsoft Connect:

  1. Xác định vị trí regcap.exe ở đây: C: \ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ Tools \ Deployment
  2. Nhấp chuột phải và chọn Properties.
  3. Chọn tab Tương thích
  4. Chọn hộp để Chạy chương trình này ở chế độ tương thích.
  5. Chọn Windows Vista SP2 trong menu thả xuống Hệ điều hành và Chạy với tư cách Quản trị viên.
  6. Nhấp vào Ok và biên dịch lại.

Giải pháp này cũng hoạt động trên Windows 7 với Visual Studio 2008 (phiên bản 32 bit), trong bước thứ 5, bạn chỉ cần chọn hộp kiểm trong hộp nhóm cuối cùng "Privilege Level" cho "Chạy ứng dụng này chương trình như một quản trị viên"

+7

Điều này cũng hoạt động cho 64 bit Windows 7 với VS 2010. Đường dẫn cho regcap là C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ Tools \ Deployment – Guge

+1

@Guge: May mắn bạn- không làm việc cho tôi trong VS2010 trên 64bit Win7 :-( – DilbertDave

+0

@ DilbertDave: Phần nào không phù hợp với bạn? Bạn đã hoàn thành tất cả 6 bước trong câu trả lời và vẫn nhận được thông báo lỗi? – Guge

4

một lý do khác From Add-In-Express: (a buffer overflow)

  • đường dài. Đây là trường hợp của tôi: Tôi đã có * .tlb trong một dự án thiết lập với một con đường dài, tôi loại trừ nó và nó được biên dịch ok.
-1

FYI, Nếu dự án của bạn không yêu cầu phải xây dựng trong 64 bit, bạn có thể xây dựng nó trong 32 bit để thay thế. 1. Chạy Visual Studio ở chế độ Tương thích với Window XP: + Nhấp chuột phải vào biểu tượng Visual studio + Chọn Thuộc tính + Trong tab Tương thích, hãy kiểm tra Chạy chương trình này ở chế độ tương thích cho Window XP SP3 và kiểm tra Chạy chương trình này với tư cách quản trị viên 2. Chuyển đến Trình quản lý cấu hình và Gỡ lỗi dự án của bạn ở chế độ X86

+0

Đây không phải là câu trả lời - 32 bit so với 64 bit không có bất cứ điều gì để làm với câu hỏi (hoặc thông báo lỗi được hiển thị) – GargantuChet

+1

@Garga: Nó _is_ một câu trả lời.Nó có thể sai, nhưng không có lý do gì để gắn cờ nó –

+0

@Garga: giải pháp hoạt động trong trường hợp của tôi. 2008 và Window7-64 bit và có thông báo lỗi tương tự.Tôi sau đó cố gắng để xây dựng lại trong 32-bit và chạy Visual Studio trong chế độ tương thích và nó hoạt động.Đó là lý do tại sao tôi chia sẻ thông tin của tôi.Bạn không nên gắn cờ một bài không có lý do . – Nguyen

1

Tôi đã chạy vào dự án này bằng cách sử dụng VS 2008 trên Windows 7 64 bit. Vấn đề là một assembly tham chiếu đến Microsoft.InteropFormTools.tlb và phải được gọi từ VB 6 đến COM. Visual Studio đã mặc định thuộc tính Registry của thư viện kiểu thành vsdrfCOMSelfReg. Thay đổi nó thành vsdrfDoNotRegister đã giải quyết được vấn đề.

CHỈ DẪN: Chú ý đến cửa sổ Đầu ra trong quá trình Xây dựng/Xây dựng lại. Tôi thấy những cảnh báo sau đây sau khi tôi đóng chương trình RegCap:

Lưu ý: Không thể tạo thông tin đăng ký cho tập tin có tên là 'Microsoft.InteropFormTools.tlb'

0

Tôi cũng gặp phải lỗi này khi tôi đã cố gắng để thêm một lớp học để tôi dự án trước đây đã được biên dịch dưới dạng một DLL bên ngoài được thêm làm tham chiếu. Tôi đã thêm lớp vào dự án, nhưng quên loại bỏ tham chiếu đến DLL. Việc loại bỏ tham chiếu đến thành phần bên ngoài đã giải quyết được sự cố và thông báo lỗi này không còn xảy ra nữa.

Các vấn đề liên quan