में कमांड लाइन से काम करता है, माइक्रोसॉफ्ट, http://msdn.microsoft.com/en-us/library/ee872121(VS.85).aspx से मार्गदर्शिका के बाद, मैं अपने प्रोग्राम को प्रोग्राम में गतिशील पुस्तकालयों को हल करने में सक्षम होने के लिए सक्षम हूं जो आदेश में आवश्यक हैं इसके लिए काम करने के लिए।एप्लिकेशन विशिष्ट पथ जोड़ना, इसलिए यह विंडोज
तो मैं अपने निष्पादन योग्य के पूर्ण नाम और पथ के साथ एक मान जोड़ता हूं, और डीएलएल फ़ाइलों की निर्देशिका के पूर्ण पथ के साथ इस प्रविष्टि (नाम पथ) में उपकुंजी जोड़ता हूं।
और जादू। यह काम करता हैं। मैं स्टार्ट मेनू पर जाता हूं, और myprogram.exe टाइप करता हूं और यह शुरू होता है और अब डीएलएल फाइलों को सही तरीके से ढूंढने में सक्षम है।
हालांकि, अगर मैं cmd.exe कमांड का उपयोग कर कमांड प्रॉम्प्ट प्रारंभ करता हूं, और फिर myprogram.exe को चलाने का प्रयास करें तो DLL के समाधान को हल करने में सक्षम नहीं है। कुछ कारणों से कमांड प्रॉम्प्ट रजिस्ट्री के मानों को मानने/पढ़ने के लिए प्रतीत नहीं होता है जब यह HKEY_LOCAL_MACHINE \ सॉफ़्टवेयर \ Microsoft \ Windows \ CurrentVersion \ App Paths
कोई सुझाव है कि मैं इस व्यवहार को कैसे काम कर सकता हूं कमांड प्रॉम्प्ट के साथ-साथ स्टार्ट मेनू से भी?
बिल्कुल सही। यह समस्या हल करता है। – Smidstrup
"cmd.exe नाम के साथ ऐप पथ के उपकुंजी का उपयोग करें" का क्या मतलब है? –
@ मिखाइल ओरलोव: आप 'HKEY_LOCAL_MACHINE \ सॉफ़्टवेयर \ माइक्रोसॉफ्ट \ विंडोज \ CurrentVersion \ App पथ' के तहत उपकुंजी "cmd.exe" बना सकते हैं और "पथ" नाम के साथ REG_SZ मान और किसी भी पथ को मान के रूप में बना सकते हैं। फिर आप "रन" स्टार्ट मेनू से "cmd.exe" प्रारंभ में चुनते हैं। आप "सेट पैथ" के साथ देख सकते हैं कि पथ पर्यावरण वातावरण में पथ है जिसे आपने रजिस्ट्री में पहली बार दर्ज किया है। – Oleg