2008-10-20 30 views
11

Nếu thời gian chạy C++ msvcr80.dll bị thiếu trong thư viện được biên dịch, có cách nào để xác định phiên bản nào đã được sử dụng để tạo thư viện hoặc để chạy nó trên phiên bản sau của msvcr80.dll không?Thiếu msvcr80.dll

Trả lời

13

Gói VCR SP1 CRT sẽ được cài đặt cả phiên bản RTM và SP1 của thời gian chạy C vào %SystemRoot%\WinSxS (giả sử bạn đang sử dụng Windows XP hoặc Vista; Windows 2000 không hỗ trợ các hội đồng cạnh nhau). Nếu bạn đã cài đặt VC8, gói CRT có thể phân phối lại là %ProgramFiles%\Microsoft Visual Studio 8\VC\redist. Nếu bạn chưa cài đặt VC8, tôi nghĩ bạn có thể tải xuống gói CRT redistributable từ Microsoft.com.

Ngoài ra, để tìm hiểu chính xác những gì CRT phiên bản (ví dụ RTM so với SP1) là cần thiết bởi một số nhị phân đã được xây dựng với VC8 hoặc VC9, bạn có thể trích xuất các biểu hiện:

mt.exe -inputresource:mydll.dll;#1 -out:mydll.dll.manifest 

Hãy tìm một cái gì đó như này:

<assemblyIdentity type="win32" name="Microsoft.VC90.CRT" version="9.0.21022.8" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"> 
</assemblyIdentity> 

Thực thi của tôi yêu cầu phiên bản CRT 9.0.21022.8. Số phiên bản này cũng được nhúng vào trong WinSxS tên thư mục con (tiếc là nó được bao quanh bởi băm):

D:>dir c:\windows\WinSxS\*VC90.CRT* 
12/14/2007 02:16 AM <DIR>   amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_750b37ff97f4f68b 
12/14/2007 02:00 AM <DIR>   x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_bcb86ed6ac711f91 
+2

Mt.exe là công cụ được cung cấp trong Gói Microsoft SDK/Visual Studio để đánh giá tệp kê khai. Bạn có thể tìm thêm thông tin về mt.exe trên trang tài liệu MSDN: http://msdn.microsoft.com/en-us/library/aa375649(VS.85).aspx (hãy chắc chắn và xem nội dung người dùng ở phía dưới) – Steve

3

Nếu bạn đang authoring và phân phối các DLL đã đề cập, xem xét sử dụng một mô-đun hợp nhất cho Visual C++ 8.0 CRT như một phần của trình cài đặt của bạn.

Tôi nhận thấy rằng có một công cụ mt.exe mới và Visual C++ CRT mới trong Windows SDK 6.1. Tôi sử dụng mô-đun hợp nhất làm điều kiện tiên quyết trong trình cài đặt InstallShield 12 với thành công lớn.

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