내가 만들고있는이 응용 프로그램에 대한 암호화 된 형식으로 사용자의 로그인 정보를 저장해야하지만 파일을 저장할 최적의 위치가 확실하지 않습니다. 사용자별로 프로그램 응용 프로그램 폴더에 저장하고 싶지 않습니다.Windows XP 및 Vista 응용 프로그램에 대한 사용자 정보를 저장하는 가장 좋은 장소
그럼 폴더를 저장하는 가장 좋은 폴더는 무엇입니까?
편집 : C++을 사용하십시오.
내가 만들고있는이 응용 프로그램에 대한 암호화 된 형식으로 사용자의 로그인 정보를 저장해야하지만 파일을 저장할 최적의 위치가 확실하지 않습니다. 사용자별로 프로그램 응용 프로그램 폴더에 저장하고 싶지 않습니다.Windows XP 및 Vista 응용 프로그램에 대한 사용자 정보를 저장하는 가장 좋은 장소
그럼 폴더를 저장하는 가장 좋은 폴더는 무엇입니까?
편집 : C++을 사용하십시오.
C : \ Documents and Settings \ % username % \ Local Settings \ Application 데이터는 Wikipedia에 따라 적절한 위치에 있습니다. 기사에 따르면이 위치는 "사용자 별 및 컴퓨터 별 응용 프로그램 설정"에 사용됩니다.
편집 : Cruiser는 Vista에서 C : \ Users \ % username %이고 하드 코딩되어서는 안된다는 주석 (내가 아직 답글을 달았지만 아직 코멘트 할 수 없음)을 지적했습니다. 감사.
.NET을 사용하고 있습니까? 약 IsolatedStorage 어때요? 그렇게하면 디렉토리 위치에 대해 걱정할 필요가 없습니다 ...
응용 프로그램의 새 버전/설치에 원래 분리 저장 파일이 계속 표시 될 수 있으므로주의해야 할 수도 있습니다. – FryHard
XP 및 Vista에서 CryptoAPI의 일부인 DPAPI (데이터 보호 API)를 사용하십시오. 다음은 DPAPI에 대한 개요입니다. - http://msdn.microsoft.com/en-us/library/ms995355.aspx
사용자 정보는 항상 % HOMEDRIVE %% HOMEPATH % (사용자 홈 디렉토리에 매핑 됨)의 하위 디렉토리에 있어야합니다. 예외 없음. 사용자 별 응용 프로그램 별 설정을위한 좋은 장소는 % APPDATA % 내의 하위 디렉토리입니다. XP에서는 "% HOMEDRIVE %% HOMEPATH % \ Application Data"로 매핑되고 Vista에서는 "% HOMEDRIVE %% HOMEPATH % \ AppData \ Roaming"으로 매핑됩니다.
예, 로컬 응용 프로그램 경로가 승자와 같습니다. http://msdn.microsoft.com/en-us/library/bb762494.aspx이
예 :
char localAppPath[MAX_PATH];
SHGetFolderPath(NULL, CSIDL_LOCAL_APPDATA, NULL, SHGFP_TYPE_CURRENT, localAppPath);
암호화 된 경우에도 사용자 자격 증명을 일반 파일에 저장하면 안됩니다. 실제로 데이터 보호 저장소에 보관해야합니다. 결국 그것은 당신의 선택입니다. :-) –
특수 폴더를 얻을 .NET을 사용하는 경우
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
을 사용할 수 있습니다
나는 C에서 그것을 얻을 MSDN에서이 기사를 ++ 발견 또는Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
로밍 버전이 아닌 경우.
Vista에는 기본적으로 C : \ Documents and Settings \ % username % -> C : \ Users \ % username %이 (가) 있으므로 경로를 하드 코드하지 않도록 변경할 수 있습니다. – cruizer
이 폴더를 가져 오는 방법은 다음과 같습니다. SHGetSpecialFolderPath (NULL, szPath, CSIDL_PERSONAL, false) – Bill
내 의견에 감사드립니다. CSIDL_APPDATA를 사용해야합니다. CSIDL_PERSONAL은 사용자 문서 디렉토리 용입니다. – Bill