Başlığa göre, bir kullanıcının yüklediği DirectX sürümünü nasıl kontrol edebilirim? Uygulamamın özellik seviyesi 10.0'da çalışabilmesi için FeatureLevel'in kontrol edilmesi yeterli değil, ancak DirectX 11.1'in yüklenmesini gerektiriyor.DirectX'in hangi sürümünün yüklü olduğunu kontrol edin
bu bir kopya değil neden:
- How to code to get direct X version on my machine in C#?
- Bu sorunun ilk cevabı "Windows 7, DirectX = 11, Windows Vista, DirectX = 10 ise" diyor. Vista'nın DirectX 10 ve 11'i desteklediği ve Windows 7'nin DirectX 11 ve 11.1'i desteklediği için bu yanlış.
- İkinci yanıt, yalnızca DirectX 9 ve daha düşük için geçerli olan bir kayıt defteri anahtarına başvuruyor. Hatta 11.1 yüklü DirectX bir Windows 7 sistem üzerinde, bu kayıt defteri anahtarı yüklü bir sürümünü belirtmek asla daha büyük 9.0c
- .NET How to detect if DirectX 10 is supported?
- Bu sorunun cevabı yine DirectX için aynı kayıt defteri anahtarı başvuruyor SADECE 9 ve alt.
Ben DirectX 10 yükleme ve geçerli bir cevap istiyorum. Bu onların versiyonunun 10, 10.1, 11 veya 11.1 olup olmadığının belirlenmesi anlamına gelir.
Biraz ama yavaş ve tıkalı. Komut istemindeki hızlı bir testten, kabul edilemeyecek kadar yavaş olduğunu söyleyebilirim. – Telanor
Bunun farkındayım. En kötüsü, komut isteminden 'dxdiag/x file.xml' komutunu çalıştırırken, işlem çıktıktan sonra dosyanın görünmesini beklemem gerekiyor. Sürüm dizesini her zaman 'HKLM \ Software \ Microsoft \ DirectX \ Version' kayıt defterinden okuyabilir ve kodunu çözebilirsiniz. Ben –
cevabımı düzenleyecektir Bu kayıt defteri anahtarı yalnızca directx 9 ve daha düşük – Telanor