2011-08-07 4 views
1

가능한 중복 :
Where and how should I save license related information?라이센스 파일을 어디에 저장해야합니까?

나는 사용자에게 배포하기 위해 내 응용 프로그램에 대한 라이센스 파일을 만듭니다. 그러나 사용자 컴퓨터에 라이센스 파일을 어디에 저장해야하는지 잘 모릅니다.

의견이 있으십니까? 감사합니다.

+0

왜 응용 프로그램 폴더에 없습니까? 설치가 끝나면 표시 할 수 있습니다. –

답변

3

라이센스가 사용자 단위 인 경우 %APPDATA% 디렉토리에 저장하십시오. 컴퓨터 당 라이센스 인 경우 %PROGRAMDATA% 디렉토리 나 프로그램의 설치 디렉토리에 저장하십시오.

%APPDATA%은 현재 사용자의 응용 프로그램 데이터가 저장되어야하는 디렉토리를 가리키는 쉘 변수입니다 (명령 창에 set을 입력하여 볼 수 있습니다). 종종 C:\Users\MyUser\AppData\Roaming과 같은 것입니다. 파일을 여는 경로를 지정할 때 %APPDATA% 변수를 직접 사용할 수 있습니다 (예 : %APPDATA%\MyCompany\LicenseFile.dat. 그의 의견에서 @cdhowie가 지적했듯이, 환경 변수를 사용하는 것보다 .NET Environment.GetFolderPath() 함수를 사용하는 것이 더 좋습니다.

%PROGRAMDATA%은 동일한 방식으로 작동하지만 시스템의 모든 사용자에게 공통적 인 디렉토리에 매핑됩니다.

+1

Anders, 어쩌면 당신이 간단히 설명하는 % APPDATA %와 % PROGRAMDATA %의 의미는 모든 사람이 반드시 당신이 말하는 것을 알고있는 것은 아닙니다. –

+0

@Charles : 좋은 생각입니다. 끝난. –

+3

이것은 C# 태그가 붙어 있으므로 환경 변수보다 Environment.GetFolderPath()를 사용하는 것이 더 적절할 수 있습니다. – cdhowie

1

암호화 된 레지스트리 키 형태로 라이선스를 저장할 수도 있습니다. 컴퓨터 라이센스 당 키를 HKLM \ Software에 넣으십시오. 및 사용자 별 라이센스에 대해 키를 HKCU \ Software에 저장하십시오.

+0

암호화 된 데이터가 포함 된 라이센스를 레지스트리 키에 저장해야합니까? 해당 레지스트리 키가 얼마나 큰 데이터를 저장할 수 있는지 알고 계십니까? –

+0

라이센스 정보를 암호화 된 데이터로 저장하는 것이 가장 좋은 방법입니다. 아무도 데이터를 이해할 수 없으므로 라이센스 정보를 고칠 수 없기 때문입니다. 레지스트리 키 제한에 관한 질문과 관련하여 다음 링크를 참조하십시오. http://msdn.microsoft.com/en-us/library/ms724872(v=vs.85).aspx –

관련 문제