Tôi đang phát triển một ứng dụng WPF nơi phần 3D được xử lý bởi DirectX 9 (rất nhiều 3d không chạy đủ nhanh bằng cách sử dụng WPF).Ứng dụng DirectX trên cửa sổ 64 bit
Vấn đề là ứng dụng được phát hành với "CPU bất kỳ" làm cấu hình và khi người dùng chạy nó trên cửa sổ 64 bit, phần direcX gặp sự cố (System.BadImageFormatException). Rõ ràng các dll bao gồm cho phần DirectX là không thể sử dụng trên một cửa sổ 64 bit.
Điều này đã xảy ra với một số phần 3 khác mà chúng tôi sử dụng trong ứng dụng của chúng tôi nhưng chúng tôi đã giải quyết bằng cách thay đổi dll trong thời gian chạy sang những tệp được xây dựng cho x64 nếu người dùng đang chạy trên máy tính 64 bit. Có ai trong số các bạn biết tôi có thể tìm thấy file dll DirectX 9 cho x64 ở đâu không? Nếu chúng tồn tại chút nào.
Những cái tôi cần là:
- Microsoft.DirectX.Direct3D
- Microsoft.DirectX.Direct3DX
- Microsoft.DirectX
Nếu họ không tồn tại, có thể vấn đề được giải quyết theo một cách khác? Tôi không thể thay đổi cấu hình để x86 vì ứng dụng được phát hành thông qua ClickOnce và một sự thay đổi về cấu hình làm ClickOnce ngừng làm việc (cấu hình được bao gồm trong khóa ClickOnce)
Hãy để tôi thêm rằng tôi đang sử dụng một Winforms một phần được lưu trữ bởi ứng dụng WPF và phần winforms đang sử dụng các tệp dll DirectX mà tôi yêu cầu. Đây là một cách tốt hơn và nhanh hơn để trình bày rất nhiều mắt lưới 3D trong WPF hơn là sử dụng 3D của WPF. Rất tiếc, sự cố này đã xảy ra.
Là một sang một bên: XNA/cửa sổ lực lượng bản thân để sử dụng chế độ 32-bit ngay cả trên x64 - vì vậy tôi tự hỏi, nếu nó chỉ đơn giản là không thể ... Tôi thật sự không biết, mặc dù. –
Chỉ cần một FYI, WPF 3d thứ là một wrapper cho X. trực tiếp Họ là khá nhiều trong cùng một. Đưa ra hoặc lấy một số thứ. – Tony