मैं सोच रहा था कि मैं विशेष रूप से डायरेक्टएक्स 9.0 सी (सी ++ कोड के भीतर) से कोड से ग्राफिक्स कार्ड मॉडल/ब्रांड कैसे प्राप्त कर सकता हूं।ग्राफिक्स कार्ड मॉडल प्राप्त करें?
उत्तर
रनटाइम पर, आप डिवाइस मॉडल और विक्रेता को क्वेरी कर सकते हैं:
ओपन में, कमांड glGetString (GL_VENDOR) या GL_RENDERER या GL_VERSION का उपयोग जानकारी आप के बाद कर रहे हैं पाने के लिए।
डायरेक्टएक्स 9 में, ऐसा लगता है कि जानकारी Microsoft कॉन्फ़िगरेशन सिस्टम में है, और डिवाइस डेटाबेस से पूछताछ की गई है। http://msdn.microsoft.com/en-us/library/bb204848(VS.85).aspx एक ही सिस्टम का उपयोग करके आप आदि राम की राशि वीडियो कार्ड है, ड्राइवर संख्या,
एक नजर डालें के रूप में ऐसी जानकारी प्राप्त कर सकते: यह इस दस्तावेज़ है, जो भी उदाहरण कोड है की धारा 3 है पर मेरी पुस्तक The Direct3D Graphics Pipeline से। एक विशेष डिवाइस की पहचान, खंड 2.12 देखें।
DirectX में सबसे आसान तरीका है IDirect3D9::GetAdapterIdentifier माध्यम से होता है से नमूना DxDiagOutput में की तरह "DirecX डायग्नोस्टिक टूल" एपीआई, उपयोग कर सकते हैं।
बस D3DADAPTER_IDENTIFIER9 ऑब्जेक्ट बनाएं, GetAdapterIdentifier को इसके लिए एक पॉइंटर पास करें। डायरेक्टएक्स विवरण फ़ील्ड में एक स्ट्रिंग के रूप में ग्राफिक्स कार्ड विवरण भरता है। इसमें यह भी जानकारी शामिल है कि कार्ड कौन सा डिस्प्ले डिवाइस है, और आपके पास कौन सा ड्राइवर संस्करण है।
आप कुछ इस तरह मिलती है:
- विवरण: "NVIDIA GeForce GTX 570"
- डिवाइस: "\ \ DISPLAY1।"
- चालक: "nvd3dum.dll"
धन्यवाद मुझे आवश्यक जानकारी मिली और बहुत उपयोगी नहीं था यह स्वीकार्य उत्तर क्यों नहीं है। –
... क्योंकि यह तीन साल बाद है। :) – Decker