문제

사에 대한 포인터 내 잘못된 경로를 아래로.내가 쓴 작은 C#콘솔 응용 프로그램 열리는 읽기,쓰고 삭제하는 우리의 사용자로부터 레지스트리에서 모두 HKEY_LOCAL_MACHINE 및 HKEY_CURRENT_USER

물론,나는 그것을 가지고 작업에 모든 테스트 PC 그러나 우리의 클라이언트에 오류가 발생 할 때 그들을 실행하려고 하니다.exe

시스템입니다.보안입니다.SecurityException:요청에 대한 권한 형식의'시스템이다.보안입니다.권한이 있습니다.RegistryPermission,mscorlib 버전 2.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089'지 못했습니다.

에서 시스템입니다.보안입니다.CodeAccessSecurityEngine.체크인(체,수요 StackCrawlMark&stackMark,Boolean isPermSet) 에서 시스템입니다.보안입니다.클래스가 올바르게.수요() Microsoft 에서 사용할 수 있습니다.Win32.레지스트리 키.CheckSubKeyReadPermission(String subkeyName) Microsoft 에서 사용할 수 있습니다.Win32.레지스트리 키.CheckOpenSubKeyPermission(String subkeyName,Boolean>subKeyWritable) Microsoft 에서 사용할 수 있습니다.Win32.레지스트리 키.OpenSubKey(String name,Boolean writable) 에 EstateMasterClearReg.프로그램입니다.Main(String[]args)

작업에 실패했:

요.유형의 첫 번째 허가지 못했:시스템입니다.보안입니다.권한이 있습니다.RegistryPermission 의 영역이 어셈블리지 못했었:인트라넷

으로 나는 할 수 없을 테스트하는 이에 클라이언트 컴퓨터(그리고 그들이 말하는 그들.exe 로컬로 실행 및 관리자로 로그인)은 아무것도 할 수 있을 것이 되도록 최선을 다하고 응용 프로그램을 실행하는 모든 컴퓨터에?

해야 할 강력한 이름을 사용 키 AllowPartiallyTrustedCallers 또는 사용해야 하는 시스템입니다.보안입니다.권한이 있습니다.RegistryPermission?

당신의 도움을 위한 감사합니다.

도움이 되었습니까?

해결책

다음과 같이 실행될 수 있는 실행 파일 네트워크를 통해.가 그들을 복사하려고 그것은 로컬 하드 드라이브 다시 실행합니다.권한에 할당된 실행파일이 다를 실행하는 사이에서 네트워크 공유에 대에서 실행하는 로컬 파일 시스템입니다.

또한,이 가능할 수 있는 수정된 기본 보안 설정,그래서 그는 경우에도 그것은 로컬로 실행되는,그것의 일부로 간주됩트라넷 영역에 있습니다.체크인 사람은,너무입니다.

의 끝은 여기에도 도움이 될 수 있습니다:

http://blogs.msdn.com/shawnfa/archive/2003/06/20/57023.aspx

한 경우에는 당신이 당신의 어셈블리는 강력한 이름을,당신은 여전히 필요한 지역 보안 정책을 수정하는 어셈블리 적절한 권한이 있습니다.강력한 이름 자체가 없을 부여 추가적인 권한이 필요합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top