Tôi thấy lỗi MIDL2398 mỗi khi tôi cố gắng biên dịch dự án Visual C++ (Visual Studio 2010) sử dụng COM. Dự án này xây dựng hoàn toàn tốt đẹp trên máy phát triển Windows 7 của tôi và trên máy xây dựng Windows Server 2008, nhưng không phải trên máy xây dựng Windows Server 2012.Lỗi MIDL2398 xây dựng với Visual Studio 2010 trên Windows 2012
tôi tìm thấy trang web này về các lỗi biên dịch tức khác nhau: http://blog.yezhucn.com/midl/compiler_errors.htm
Nhưng, tôi đã cố gắng đó là gợi ý cho MIDL2398, tôi xác nhận rằng "midlc.exe" đang ở trong cùng thư mục với "midl.exe" và cả hai đều là phiên bản tương tự (cả hai phiên bản tệp: 7.0.555.1 phiên bản sản phẩm: 6.1.7600.16385, từ Windows SDK phiên bản 7.1).
Tôi đoán nó có liên quan đến Windows Server 2012 nhưng tôi không biết.
Có ai có thể nhận được trình biên dịch MIDL phiên bản v7.1 của Windows SDK để làm việc trên Windows Server 2012 không? Hoặc, không ai biết những gì khác có thể gây ra MIDL2398?
Từ Visual Studio 2010 Command Prompt, nhập "where midl * .exe" và xác minh rằng chỉ tìm thấy hai tệp này. Procyson của SysInternals là một cách khác để xác minh rằng các tập tin EXE chính xác được sử dụng. –
Tôi đã làm điều đó bên trong sự kiện dựng sẵn cho dự án mà tôi đang xây dựng, và lệnh đó đã cho tôi đường dẫn tới Windows EXE EXXs v7.1, đó là những gì tôi mong đợi. Tôi cũng đã thay đổi các thiết lập dự án để thử sử dụng Windows SDK v7.0A (đi kèm với Visual Studio 2010), lệnh where báo cáo chính xác đường dẫn tới phiên bản v7.0A của EXE trung gian, nhưng tôi vẫn nhận được cùng một lỗi midl bất kể cho dù tôi biên dịch với Windows SDK v7.0A hay v7.1. Một đồng nghiệp, trên cùng một máy ảo Windows 2012, đã thử biên dịch với phiên bản 8 của Windows SDK và điều đó cũng không thành công. – MikeW