मेरे पास विज़ुअल स्टूडियो, 2013 में एक प्रोजेक्ट है।
प्रोजेक्ट फ़ाइल में निम्नलिखित गुण हैं:
ToolsVersion = "12.0", PlatformToolset = v120।
मेरे पास विजुअल स्टूडियो 2013 और माइक्रोसॉफ्ट बिल्ड टूल्स 2015 स्थापित है। यह प्रोजेक्ट MSBuild 12.0 का उपयोग करके सफलतापूर्वक बनाया गया है। MSBuild 14.0 के साथ इसे बनाने के प्रयास पर मुझे एक त्रुटि मिलती है
MSB4019: The imported project "C:\Microsoft.Cpp.Default.props" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
जैसा कि मैं समझता हूं, समस्या यह है कि चर VCTargetsPath का मूल्यांकन नहीं किया जाता है। यदि मैं बिल्ड से पहले चर VCTargetsPath निर्दिष्ट करता हूं (मान C: \ Program Files (x86) \ MSBuild \ Microsoft.Cpp \ v4.0 \ V120 के साथ), तो समस्या हल हो गई है।
हालाँकि, पथ भिन्न होने की स्थिति में यह दृष्टिकोण बहुत सुविधाजनक नहीं है। क्या किसी तरह से समस्या को अधिक इष्टतम तरीके से हल करना संभव है?
रजिस्ट्री कुंजी और उसका मूल्य:
HKLM\Software\WOW6432Node\Microsoft\MSBuild\ToolsVersions\12.0\VCTargetsPath $([MSBuild]::ValueOrDefault('$(VCTargetsPath)','$(MSBuildExtensionsPath32)\Microsoft.Cpp\v4.0\V120\'))