2012-07-27 4 views
0

VS 10에서 새 C++ 프로젝트를 만들려고하고 있으며 템플릿에서로드 할 빈 프로젝트를 가져올 수 없습니다. 오류가 발생합니다 ...Visual Studio C++ 프로젝트 오류 : LOCALAPPDATA

"존재"함수는 스칼라 값만 받아들이지 만 인수 "$ (UserRootDir) \ Microsoft.Cpp. $ (플랫폼) .user.props"는 "{~}" 이것은 스칼라 값이 아닙니다.

{~} 값은 컴퓨터 환경 변수의 LOCALAPPDATA 변수에 "\ Microsoft \ MSBuild \ v4.0 \ Microsoft.Cpp.Win32.user.props"가 끝에 연결된 값입니다.

나는 무슨 일이 일어나고 있는지 이해하지 않고도 템플릿 파일을 바꾸는 것을 꺼려합니다.

+0

Windows 7에서이 동작을 관찰하고 있습니까? 현재 환경 변수 목록을보고 있는데 LOCALAPPDATA가 명시 적으로 정의되어 있지 않습니다. 그것은 C : \ Users \ user_name \ AppData \ Local 기본값으로 보인다. 어쩌면 당신이 설치 한 이상한 응용 프로그램을 어떤 이유로 든 다시 정의하기로 결정했을 것입니다 ... 테스트로서, 콘솔에 dir % LOCALAPPDATA %를 입력하고 출력이 무엇인지 알려주십시오. –

+0

Windows XP. 거기에 몇 가지 파일 경로가 추가 응용 프로그램에 대한 있지만 다른 결과를 얻으려고 내용을 변경 시도했다. 빈 문자열을 시도하지 않았습니다. – Random

답변

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로 업그레이드해야 할 수도 있습니다.