2013-06-09 4 views
5

मैंने DirectX SDK June 10 स्थापित किया, लेकिन जब मैं d3dx9.h स्थापित करता हूं, तो संकलक इसे नहीं ढूंढ सकता।गुम फ़ाइलें, डायरेक्टएक्स एसडीके (d3dx9.lib, d3dx9.h)

मैंने एसडीके निर्देशिका की जांच की, और मुझे इसे वहां नहीं मिला।

फाइलें गायब हैं: d3dx9.lib, d3dx9.h, dxfile.h

+1

जहां एसडीके मिला? आपने इसे कहां स्थापित किया? क्या आप अपने द्वारा चेक किए गए फ़ोल्डर का पूरा पथ पेस्ट कर सकते हैं? क्या आपने पुनः स्थापित करने का प्रयास किया है? – zdd

+0

मुझे इसे माइक्रोसॉफ्ट के वेबपेज से मिलता है, यह पथ "सी: \ प्रोग्राम फ़ाइलें (x86) \ माइक्रोसॉफ्ट एसडीके \ विंडोज \ v7.0A" है, मैंने पुनः स्थापित करने का प्रयास किया, लेकिन फिर भी यह उन फ़ाइलों को इंस्टॉल नहीं करता है –

+0

मुझे मिला फाइलें, मैं गलत पथ को देख रहा था, लेकिन अब मैंने देखा है कि कहीं भी d3dx9.dll नहीं है, मैंने इसे इंटरनेट से डाउनलोड किया है, लेकिन ऐसा लगता है कि दूषित हो गया है ... –

उत्तर

4

लाइब्रेरी फ़ाइल (d3dx9.lib) सी: \ path \ to \ Microsoft \ n \ "\ Microsoft \ n \ n \" \ माइक्रोसॉफ्ट डायरेक्टएक्स एसडीके (जून \ 2010) \ लिब \ 64 \

दोनों फ़ाइलें आप का उल्लेख सी में मौजूद हैं शामिल हैं: \ पथ \ \ माइक्रोसॉफ्ट डायरेक्ट एसडीके (जून 2010) के लिए \ शामिल करें \

आप अभी भी उन्हें खोजने के लिए सक्षम नहीं हैं, यहां से एसडीके डाउनलोड करें और इंस्टॉल करें: http://www.microsoft.com/en-us/download/details.aspx?id=6812

मैंने डाउनलोड किया और इसका इस्तेमाल किया और मैं आपको यह सुनिश्चित कर सकता हूं कि ये फ़ाइलें मौजूद हैं !!

+0

मैं x64 फ़ोल्डर का उपयोग करना चाहिए अगर मैं 64 बिट आपरेशन प्रणाली का उपयोग करें या वहाँ कोई अंतर नहीं है? –

+1

जहां अपने कार्यक्रम चलाने चाहिए ... तो यह x32 प्रोसेसर पर नहीं चलेंगे आप 64 का उपयोग करते हैं पर निर्भर करता है। मैं व्यक्तिगत रूप से सभी प्रणालियों के साथ संगतता के लिए x32 का उपयोग करता हूं। – theCNG27

+0

मैं देखता हूं, बहुत बहुत धन्यवाद :) –

1

जब मुझे यह समस्या थी, मैंने पाया कि मेरे पास
[प्रोग्राम फ़ाइलें (x86) \ Microsoft DirectX SDK (जून 2010) \ include] फ़ोल्डर में d3dx9.h था।
कंपाइलर को
[प्रोग्राम फ़ाइलें (x86) \ Windows किट \ 8.1 \ शामिल \ साझा] में होना आवश्यक था।
मैंने फ़ाइल को दूसरे स्थान पर कॉपी किया और यह काम किया, लेकिन मुझे आश्चर्य है कि यह सबसे स्मार्ट फिक्स था।

+0

यदि विंडोज 8.x एसडीके के साथ संयोजन में विरासत डायरेक्टएक्स एसडीके का उपयोग करना है, तो आपको वीसी ++ निर्देशिकाएं स्थापित करने की आवश्यकता है ताकि विंडोज एसडीके में पथ शामिल हो, पहले डायरेक्टएक्स एसडीके । [एमएसडीएन] देखें (https://msdn.microsoft.com/en-us/library/windows/desktop/ee663275.aspx) –

4

डायरेक्टएक्स एसडीके स्थापना विजुअल स्टूडियो में $(DXSDK_DIR) नामक एक संपत्ति शीट मैक्रो जोड़ देगा। अपनी शामिल और लाइब्रेरी निर्देशिकाओं में एक पूर्ण पथ डालने के बजाय, मैं डीएक्स निर्भरताओं के लिए शामिल और लाइब्रेरी पथ सेट करने के लिए इस मैक्रो का उपयोग करने की सलाह दूंगा। $(DXSDK_DIR)Include

के रूप में लाइब्रेरी निर्देशिका जोड़ें:: $(DXSDK_DIR)Lib\x86 या $(DXSDK_DIR)Lib\x64 64-बिट वास्तुकला पर

तो अपने कुलपति ++ निर्देशिकाएँ कुछ इस तरह दिखना चाहिए:

के रूप में निर्देशिका ऐड शामिल DX Include Directories

$(DXSDK_DIR) उस पथ को हल करता है जहां आपने एसडीके स्थापित किया था, आमतौर पर "सी: \ प्रोग्राम फ़ाइलें (x86) \ माइक्रोसॉफ्ट डायरेक्टएक्स एसडीके (जून 2010)" और यदि आप एक और पथ चुनते हैं तो भी काम करता है, जो इसे और अधिक उपलब्ध कराता है अलग तरह के लोग।

0

मेरे मामले में, निम्नलिखित कोड मेरे लिए काम करता है:

//#include <d3dx9.h> 
#include <d3d9.h> 

//#pragma comment(lib, "d3dx9.lib") 
#pragma comment(lib, "d3d9.lib") 
संबंधित मुद्दे