Triệu chứng
Khi bạn cố gắng tạo nhập thông tin thư viện bằng cách sử dụng Microsoft Visual Studio 2008 Hội Microsoft.VisualStudio.Shell.Interop.dll , bạn có thể gặp một trong các hiện tượng sau.
Hiện tượng 1
Khi bạn sử dụng tiện ích Regasm.exe để tạo và đăng ký một, bạn có thể nhận được thông báo lỗi sau:
RegAsm: lỗi RA000: loại thư viện xuất khẩu gặp lỗi khi xử lý "Microsoft.VisualStudio.Shell.Interop.SVsSolutionObject Microsoft.VisualStudio.Shell.Interop". Lỗi: Loại 'SVsSolutionObject' và nhập 'SVsSolution' đều có cùng UUID.
Hiện tượng 2
Khi bạn sử dụng tiện ích TlbExp.exe để tạo một, bạn có thể nhận được thông báo lỗi sau:
TlbExp: lỗi TX0000: loại thư viện xuất khẩu gặp lỗi khi xử lý 'Microsoft.VisualStudio.Shell.Interop.SVsSolutionObject Microsoft.VisualStudio.Shell.Interop'. Lỗi: Loại 'SVsSolutionObject' và nhập 'SVsSolution' đều có cùng UUID.
Hiện tượng 3
Visual Studio 2008 gói thực hiện bộ thuộc tính được thể hiện bởi thuộc tính EnvDTE.DTE.Properties . Nếu bộ sưu tập là thành viên của một đối tượng sử dụng dạng từ hội Microsoft.VisualStudio.Shell.Interop.dll , thời gian chạy ngôn ngữ chung (CLR) sẽ không xây dựng thư viện cần thiết trong bộ nhớ nhập cho hội. Ví dụ: sau macro Visual Studio tham chiếu thuộc tính EnvDTE.DTE.Properties sẽ thất bại, và sau đó bạn sẽ nhận được thông báo lỗi.
Dim proj As Project = DTE.Solution.Projects.Item(1) Dim props As Properties = proj.ConfigurationManager.ActiveConfiguration.Properties
Nguyên nhân
Sự cố này xảy ra do các thuộc tính ImportedFromTypelib được loại bỏ khỏi hội Microsoft.VisualStudio.Shell.Interop.dll Visual Studio 2008. Thuộc tính ImportedFromTypelib bị xoá vì chi tiết này không có một thư viện liên kết loại. Do đó, thuộc tính ImportedFromTypelib gây ra lỗi khi CLR cố gắng tìm một thư viện liên kết loại.
Vì tính ImportedFromTypelib đã được gỡ bỏ trong Visual Studio 2008, CLR máy không thể xây dựng thư viện cần thiết trong bộ nhớ nhập lấy Microsoft.VisualStudio.Shell.Interop.dll . Lỗi này là do trùng lặp kiểu GUID.
Giải pháp
Thông tin về cập nhật nóng
Cập nhật nóng được hỗ trợ do Microsoft cung cấp. Tuy nhiên, cập nhật nóng này chỉ được dùng để khắc phục sự cố được mô tả trong bài viết này. Chỉ áp dụng cập nhật nóng này cho hệ thống đang gặp sự cố cụ thể này. Cập nhật nóng này có thể được kiểm tra thêm. Vì vậy, nếu bạn không bị ảnh hưởng nghiêm trọng bởi sự cố này, chúng tôi khuyên bạn đợi bản cập nhật phần mềm tiếp theo có chứa cập nhật nóng này.
Để tải xuống hotfix này từ thư viện mã MSDN, hãy ghé thăm Web site sau của Microsoft:
http://code.msdn.microsoft.com/KB946308
Lưu ý Thư viện mã MSDN Hiển thị các ngôn ngữ mà hotfix này sẵn có. Nếu bạn không thấy ngôn ngữ của bạn được liệt kê, đó là do trang tài nguyên thư viện mã này hiện không có ngôn ngữ đó.
Lưu ý Nếu sự cố khác xảy ra hoặc nếu cần khắc phục sự cố, bạn có thể phải tạo một yêu cầu dịch vụ riêng. Chi phí hỗ trợ thông thường sẽ tính cho các câu hỏi hỗ trợ bổ sung và các sự cố không phù hợp với cập nhật nóng cụ thể này. Để có danh sách đầy đủ số điện thoại hỗ trợ và dịch vụ khách hàng của Microsoft hoặc để tạo yêu cầu dịch vụ riêng, hãy ghé thăm Trang web sau của Microsoft:
http://support.microsoft.com/contactus/?ws=support
Điều kiện tiên quyết
Bạn phải có Visual Studio 2008 cài đặt để áp dụng hotfix này.
Yêu cầu khởi động lại
Bạn không phải khởi động lại máy tính sau khi bạn áp dụng hotfix này.
Thông tin thay thế cập nhật nóng
Cập nhật nóng này không thay thế cập nhật nóng được phát hành trước đó.
Thông tin về tệp
Phiên bản tiếng Anh của cập nhật nóng này có các thuộc tính tệp (hoặc thuộc tính tệp mới hơn) được liệt kê trong bảng sau. Ngày và giờ của các tệp này được liệt kê theo Giờ Quốc tế Phối hợp (UTC). Khi bạn xem thông tin về tệp, ngày và giờ được chuyển đổi thành giờ địa phương. Để tìm sự khác nhau giữa UTC và giờ địa phương, sử dụng tab Múi Giờ trong mục Ngày và Giờ trong Pa-nen điều khiển.
Tên tệp |
Phiên bản tệp |
Kích thước tệp |
Ngày |
Giờ |
Nền tảng |
---|---|---|---|---|---|
Microsoft.VisualStudio.Shell.Interop.dll |
7.10.6071.0 |
259152 |
07-Jan-2008 |
15:37 |
x86 |
Trạng thái
Microsoft đã xác nhận rằng đây là sự cố trong sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".
Thông tin
Hotfix này đánh dấu tất cả các GUID trùng lặp bằng cách đặt giá trị của thuộc tính ComVisible sai để trình tạo thư viện loại sẽ bỏ qua các GUID sẽ bị trùng lặp.
Để biết thêm thông tin về thuật ngữ cập nhật phần mềm, hãy bấm vào số bài viết sau để xem bài viết trong Cơ sở Kiến thức Microsoft:
824684 mô tả thuật ngữ chuẩn được sử dụng để miêu tả các bản cập nhật phần mềm Microsoft