2010-03-13 5 views
4

제품 설치 중에 알려진 레지스트리 키에 대한 액세스 설명자를 프로그래밍 방식으로 수정해야합니다. 내가 원하는 방식은 다음과 같습니다.프로그래밍 방식으로 레지스트리 키에 대한 쓰기 액세스 허용

  1. 설치 관리자는 관리 모드에서 실행됩니다.
  2. 레지스트리 키가 만들어집니다.
  3. 기능 (필자가 필요로하는 기능)은 키에서 ACL을 쿼리합니다.
  4. 이 기능을 사용하여 'Users'그룹에 이미 쓰기 권한이있는 경우 아무 것도 수행하지 않아야합니다.
  5. 그렇지 않은 경우 'Users'그룹에 대한 쓰기 권한을 허용하는 새 권한을 추가해야합니다.
  6. 사용 권한은 레지스트리 키에 저장됩니다.

이 질문은 Setting Registry key write permissions using .NET과 비슷하지만 C++/Win32 구현이 필요합니다. 점점 당신이 RegGetKeySecurity 및 RegSetKeySecurity를 ​​사용하는 데 필요한 키의 ACL을 설정하는 미리

+0

MSDN을 자세히 살펴 보셨습니까? 어떤 문제에 직면 했습니까? – dirkgently

+0

... 또는 심지어 CodeProject? – dirkgently

+0

나는 둘 다 보았다. MSDN의 문제점은 내가 이해할 수있는 샘플이 없다는 것입니다. 기능을 하나씩 살펴 보는 것은 좋은 이해를하지 못합니다. Win32 UI 개발을 배우는 것과 거의 같은 방식입니다. 개별 메시지/함수/구조를 살펴보고 이들이 모두 통합되는 모습을 보지 못합니다. CodeProject의 문제점은 코드 샘플이 대부분 .NET 가능 언어로되어 있다는 것입니다. 좋은 C++ 샘플을 알고 있습니까? – Kerido

답변

4

에서

감사합니다. 그런 다음 ACE를 반복하면서 "사용자"그룹 SID에 적용되는 것을 검토해야합니다. 그런 다음 기존 항목을 수정/제거하거나 새 항목을 추가합니다. 평범한 오래된 Win32 C에서 ACL을 사용하는 것은 고통 스럽습니다.

관련 문제