2008-11-13 2 views
4

우리 Windows Forms 응용 프로그램은 기본적으로 데이터 파일을 사용자의 '내 문서'폴더 (XP) 또는 '문서'폴더 (Vista)에 저장합니다.폴더 리디렉션 활성화시 'Environment.SpecialFolder.Personal'해결

Environment.GetFolderPath(Environment.SpecialFolder.Personal) 

개인 폴더가 로컬 디스크에있는 사용자에게 적합하다는 것을 잘 알고 있습니다. 우리가 잘 모르는 부분은 프로필/개인 데이터 폴더에 대해 폴더 리디렉션이 유효한 도메인 사용자입니다.

내 질문 : 폴더 리디렉션 활성화 여부에 관계없이 위의 호출이 올바르게 해결됩니까?

환경을 테스트 할 수있는 환경이 없기 때문에 확실한 확인을 찾을 수 없었습니다.

답변

1

예. 폴더의 해당 레지스트리 항목을 업데이트하여 직접 테스트 할 수 있습니다. 나는 그것이 오랜만 것을 알고,하지만 난 사용자의보고를 했어를보고 싶습니다 ... 아래

HKEY_CURRENT_USER \ SOFTWARE \ 마이크로 소프트 \ 윈도우 \ CurrentVersion \ Explorer \ 쉘 폴더

+0

'내 문서'폴더의 대상을 변경하면이 레지스트리 키가 업데이트되므로 결과적으로 Environment.SpecialFolder '호출이 올바르게 작동한다는 것을 알고 있습니다. 그러나 폴더 리디렉션은 같은 방식으로 작동합니까? – CBono

+0

예. 기본적으로이 값을 업데이트합니다. – JaredPar

1

나는 그것을 기대합니다. Environment.GetFolderPath과 그 밑에있는 SHGetSpecialFolderPath에 대한 문서는 올바르게 해석되지 않거나 그 자리를 사용할만한 것을 찾을 수 없다는 어떠한 징후도 제시하지 않습니다.

1

를 봐 내 문서 네트워크로 연결되어있는 XP 시스템에 Environment.GetFolderPath (Environment.SpecialFolder.Personal) 호출에 다음과 같은 오류가 (이 O를 구동하기 위해 간다) :

System.ArgumentException: Absolute path information is required. 
    at System.Security.Util.StringExpressionSet.CreateListFromExpressions(String[] str, Boolean needFullPath) 
    at System.Security.Permissions.FileIOPermission.AddPathList(FileIOPermissionAccess access, AccessControlActions control, String[] pathListOrig, Boolean checkForDuplicates, Boolean needFullPath, Boolean copyPathList) 
    at System.Security.Permissions.FileIOPermission..ctor(FileIOPermissionAccess access, String path) 
    at System.Environment.GetFolderPath(SpecialFolder folder, SpecialFolderOption option) 
    at System.Environment.GetFolderPath(SpecialFolder folder) 

내가 직접 액세스 할 수 없었어요 이 기계 구성에 아직,하지만 Google 검색 및 사용자의 도움을, 나는 리디렉션 후행 \ (eg. f O : \).

그래서 답변은 이 아니며 매번을 올바르게 해결하지 못할 것이라고 생각합니다.

관련 문제