Xin lỗi nếu bất kỳ điều gì tôi sắp nói không có ý nghĩa hay nhìn thấy một cái gì đó hiển nhiên - kiến thức của tôi về nội bộ CLR là điểm yếu.x64 .NET compilation/Process Explorer oddity
Nếu tôi hiểu chính xác, thì nếu tôi chỉ xây dựng giải pháp cho 'AnyCPU' trong VS2K5 (hoặc điểm MSBuild tại tệp .sln đó với các cài đặt đó) thì các tệp nhị phân chỉ biên dịch theo MSIL. Sau đó, họ nhận được JITted đến 32 bit nếu được thực thi trên nền tảng 32 bit hoặc mã 64 bit nếu được thực thi trên x64 ... phải không?
Các tệp DLL được sử dụng cho ứng dụng web và được lưu trữ trong quy trình W3WP.exe. Process Explorer cho tôi biết W3WP là một quá trình 64-bit.
Nhưng khi tôi sử dụng Trình khám phá quy trình để kiểm tra các thuộc tính trên một trong các tệp DLL này trong chế độ xem DLL, nó cho biết: 'Hình ảnh: 32-bit'. Đưa cái gì?
Nếu tôi chạy corflags đối với dll được đề cập, nó cho tôi biết: ILONLY 1, 32BIT 0 nhưng PE PE32. Sự hiểu biết của tôi là điều này có nghĩa là có nó được biên dịch chỉ xa như IL, không có nó không giới hạn hoặc 32 bit hoặc 64 bit, nhưng tôi không hoàn toàn rõ ràng. PE32 có gắn cờ với bất kỳ thứ gì để hiển thị dưới dạng 32 bit như trên không?
cảm ơn :) bất kỳ ý tưởng nào tại sao Process Explorer đang tinh nghịch? –