2012-07-27 101 views
0

我試圖在VS 10中創建一個新的C++項目,甚至不能從模板加載一個空項目。我得到一個錯誤...Visual Studio C++項目錯誤重新:LOCALAPPDATA

「存在」函數只接受標量值,但其參數「$(UserRootDir)\ Microsoft.Cpp。$(Platform).user.props」評估爲「{〜}」這不是一個標量值。

{〜}值是我在計算機環境變量中的LOCALAPPDATA變量中存儲的,與最終的「\ Microsoft \ MSBuild \ v4.0 \ Microsoft.Cpp.Win32.user.props」連接。

我不願意改變任何模板文件而不理解正在發生的事情。

+0

你是否在Windows 7中觀察到這種行爲?我現在正在查看我的環境變量列表,LOCALAPPDATA沒有明確定義。它似乎默認爲C:\ Users \ user_name \ AppData \ Local。也許你安裝的一些奇怪的應用程序由於某種原因決定重新定義它......作爲測試,嘗試在控制檯中鍵入dir%LOCALAPPDATA%並讓我知道輸出是什麼。 – 2012-07-27 19:29:29

+0

Windows XP。那裏有一些文件路徑用於附加的應用程序,但我試着改變內容以嘗試獲得不同的結果。雖然沒有嘗試過空字符串。 – Random 2012-07-27 20:56:09

回答

0

@Mihai提供的鏈接提供了我需要的信息來尋找解決方案。問題在於LocalAppData沒有它正在尋找的值(正是錯誤消息所說的)。我無法更改該數據,因爲其他應用程序爲了自己的目的而修改了它(該值不是「〜」,這是該帖子的佔位符)。

取而代之,我在記事本中打開了.vcxproj文件,並修改了導致該錯誤的ImportGroup節點。相反,屬性:

Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" 

...現在讀

Condition="exists('$(UserProfile)\Local Settings\Application Data\Microsoft.Cpp.$(Platform).user.props')" 

現在的項目負荷。

0

好吧,它看起來像Windows XP不提供任何默認值爲這個變量和「〜」絕對不是您的PC上的有效目錄。嘗試設置它as described here,也許你會很幸運。 VS2010曾與some bug有關。也許你還需要升級到SP1。

相關問題