Chúng tôi có một mã nguồn lớn Delphi XE chúng tôi muốn chuyển sang 64 bit.Chuyển mã Delphi sang 64 bit - Tại sao không có cảnh báo trình biên dịch?
Tôi sở hữu giấy phép Delphi XE2 và tôi không thể tìm thấy bất kỳ cảnh báo cũng như gợi ý nào có thể giúp tôi phát hiện các cấu trúc 32 bit hợp lệ có thể dẫn đến mất dữ liệu theo nền tảng 64 bit. Ví dụ: THandle đến Hồng y các bài tập hoàn toàn hợp lệ với trình biên dịch 32 bit không gây ra bất kỳ cảnh báo nào khi biên dịch cho Win64.
Khi di chuyển sang Unicode với Delphi 2009, chúng tôi đã có rất nhiều cảnh báo giúp chúng tôi theo dõi và sửa chữa mã đáng ngờ. Với XE2, tôi không thể tìm thấy gì cả. Tôi không thể tưởng tượng không có gì được tích hợp ở cấp độ trình biên dịch để tránh chúng tôi thực hiện việc xem xét thủ công tất cả các mã của chúng tôi.
Tôi có bỏ lỡ điều gì đó không? Làm thế nào bạn cổng bạn dự án đến 64 bit, nếu bạn đã thử?
Cảm ơn!
'THANDLE' không được ánh xạ tới' số nguyên' nữa, nhưng với 'NativeUInt' (nghĩa là' chỉ số 'duy nhất trong Win32). Nó có thể giúp xác định các vấn đề. –
Tôi dường như không thể nhận được những loại tin nhắn này trong XE (1) hoặc, ví dụ gán một int cho một byte ... – GolezTrol
@GolezTrol: bạn nói đúng, nhưng từ bài tập POV của tôi có thể dẫn đến kết quả khác nhau khi chúng được biên dịch cho Win32 hoặc Win64 nên giới thiệu _a lớp cảnh báo trình biên dịch mới. –