11

क्या उपयोगकर्ता मैक्रो/पर्यावरण चर का उपयोग कर समाधान में प्रोजेक्ट फ़ाइल पथ को परिभाषित करने का कोई तरीका है? मैं ऐसा नहीं कर सकता। सिवाय मैं एक समाधान में एक परियोजना फ़ाइल के स्थान के लिए एक ही करना चाहते हैंमैक्रो/पर्यावरण परिवर्तनीय के माध्यम से एक समाधान में परियोजना पथ परिभाषित करना

का एक वातावरण चर की तरह अतिरिक्त परिभाषित करने के लिए प्रयोग किया जाता है प्रकार, एक सी ++ परियोजना में निर्देशिका में शामिल हैं।

मैं संपादन पाठ संपादक में समाधान पथ को बदलने के लिए% MyMacroName% या $ (MyMacroName), लेकिन उनमें से कोई भी साथ शुरू करने के लिए कोशिश की है सिर्फ सही पार्स करने के लिए लगता है। जब समाधान खोला जाता है तो परियोजना फाइलें स्थित नहीं हो सकती हैं।

+2

क्या आपने पर्यावरण चर सेट करने के बाद विजुअल स्टूडियो को पुनरारंभ किया था? –

+0

मैंने समाधान बंद कर दिया और इसे फिर से खोल दिया। मैं ज्यादातर संपत्ति प्रपत्र में उपयोगकर्ता मैक्रो के रूप में ऐसा करने की कोशिश कर रहा था, लेकिन अगर यह एक पर्यावरण चर होना चाहिए, तो यह ठीक है। –

उत्तर

14

.sln फ़ाइल उपयोग वाक्य रचना में "% ENV_VAR% rest_of_the_path \ test.csproj"

.csproj फ़ाइल उपयोग वाक्य रचना में "$ (ENV_VAR) rest_of_the_path \ Test.dll"

वह मेरे लिए काम करता है, ENV_VAR ऑपरेटिंग सिस्टम के लिए परिभाषित कस्टम पर्यावरण चर है जैसे ENV_VAR = "C: \ MyPath \"

+0

उपयोगकर्ता मैक्रो पर पर्यावरण चर का उपयोग करने के लिए सेट किया गया ताकि वाक्यविन्यास काम करेगा। –

+0

यह काम करने के लिए समाधान के लिए फ़ोल्डर में फ़ाइलों को सीधे शामिल बारे में पता एक .sln फ़ाइल में चर शुरू करने का मतलब है कि वे MSBuild के साथ नहीं किया जा सकता हो –

+0

प्रतीत नहीं होता। देखें https://connect.microsoft.com/VisualStudio/feedback/details/690318/msbuild-doesnt-parse-environment-variables-in-sln-files – cowlinator

1

MSBuild आप वातावरण चर करने के लिए उपयोग की अनुमति देता है,

http://msdn.microsoft.com/en-US/library/ms171459(v=VS.80).aspx

ताकि आप अपनी इच्छानुसार उन्हें का उपयोग करने के वातावरण चर को परिभाषित है, और फिर संशोधित करने के लिए vCxproj फ़ाइलों सक्षम होना चाहिए।

मुझे यकीन नहीं है कि वह टिप एसएलएन फाइलों के लिए काम करती है, क्योंकि एसएलएन फाइलें एमएसबिल्ड स्क्रिप्ट नहीं हैं।