2010-06-15 2 views
1

Windows 7 레지스트리의 사용자간에 데이터를 공유하기 위해 레지스트리 키를 만들거나 수정하거나 삭제할 수있는 곳은 어디입니까? 두 사용자 모두 관리자가 아니므로 관리자 권한이 필요하지 않습니다.Windows 7은 레지스트리를 통해 사용자간에 데이터를 공유합니다.

내가 사용하고있는 응용 프로그램은 레지스트리를 사용하여 userA의 키를 작성한 다음 userB가 읽기/수정/삭제할 수 있습니다. 사용자에게는 관리자 권한이 없으며이를 변경할 수 없습니다.

Windows 7에서 레지스트리를 사용하는 방법에 대한 공식적인 MSDN 가이드가 있습니까? 레지스트리의 적절한 사용을 설명하는 링크가 유용 할 것입니다.

답변

0

레지스트리는 구성 설정을 작성하기위한 것이지 사용자간에 데이터를 공유하는 것이지 실제로 잘못된 용도로 사용하고 있습니다.

그러나, 당신이해야한다면, 조금이라도 이해할 수있는 레지스트리의 유일한 위치는 Software\yourapp의 HKEY_LOCAL_MACHINE 하이브에있을 것입니다. 그러나 정상적으로 쓰기가 가능한 곳에 아무 것도 없다고 확신합니다. 기본적으로 사용자 수입니다.
가능한 경우 해당 키를 만든 다음 users 그룹의 사용 권한을 변경하여 모든 권한을 갖도록 할 수 있습니다.

This 위키 문서는 레지스트리가 어떻게 사용되는지 가장 잘 볼 수 있습니다.

0

Windows 7에서 HKLM에 대한 액세스는 admin으로 실행되는 앱에만 해당됩니다. 앱에 대한 명시가 없으면 가상화되어 다른 사용자 별 저장소에 쓰기를 의미합니다.

% PROGRAMDATA %와 같은 사용자 별이 아닌 응용 프로그램 별 위치에서 구성 파일을 사용해야하고 설치/설치 (관리자로 실행되는 경우도 있음)가있는 단일 키를 작성해야한다고 생각합니다. 이 파일은. 비 관리자 사용자는 응용 프로그램을 사용하는 동안 파일을 읽고 쓸 수 있습니다.

0

레지스트리가 실제로이 작업을 수행하는 올바른 방법은 아닙니다. 우리가 실제로하려는 일에 대해 더 자세히 설명해 주시겠습니까?

사용자가 동시에 로그인 했습니까? 이 경우, 일종의 프로세스 간 통신 (IPC) 메커니즘이 작동 할 수 있습니다. 예 : 명명 된 파이프, 공유 메모리, 소켓 등

그렇지 않으면 항상 실행중인 프로세스 (예 : 서비스)를 갖게됩니까? 이것은 일종의 드롭 박스 메커니즘으로 사용될 수 있습니다.

설치 프로그램이 있다면 두 사용자가 액세스 할 수있는 디렉토리를 만들 수 있습니다 (간단하게하기 위해 같은 그룹에 넣을 수 있음). 그런 다음 메시지 파일을 삭제할 수 있습니다.

요약하면 레지스트리는 실제로 수명이 긴 구성 설정 용으로 설계되었습니다. 단명 통신은 정말로 다른 방법으로 수행되어야합니다.

2

권한 상승없이 HKLM에 액세스 할 수 없으므로 설명 된대로 수행 할 수 없습니다.

다음 중 일부를 제안합니다. 1. 다른 데이터 저장소를 선택하십시오. 데이터베이스, 파일 등 모든 사용자가 액세스 할 수 있습니다. 2. LocalSystem (HKLM에 대한 RW 액세스 권한을 제공)으로 실행되는 Windows 서비스를 만들고 응용 프로그램이 named pipes/COM/소켓을 통해 서비스와 통신하도록합니다.

관련 문제