[C#]레지스트 키 값 이용 C# 2011. 11. 22. 17:45
까먹기 전에 다시 깨작 깨작..

일단 레지스트 등록이다.

요 직전 포스팅의 내용인 권한과도 가끔 물려서 이용하면 좋다(?)

1.레지스트 등록

RegistryKey regKey = Registry.LocalMachine.CreateSubKey(@"SOFTWARE\IdPassKey", RegistryKeyPermissionCheck.ReadWriteSubTree);
regKey.SetValue("ID", "id", RegistryValueKind.String);
regKey.SetValue("PASS", "pw", RegistryValueKind.String);
regKey.SetValue("Check", "true", RegistryValueKind.String);

2.레지스트 조회
RegistryKey regKey = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\IdPassKey", RegistryKeyPermissionCheck.ReadWriteSubTree);

3.레지스트 삭제
Registry.LocalMachine.DeleteSubKey(@"SOFTWARE\IdPassKey");

이렇게 쓴다!!

아!! using Microsoft.Win32; 요놈은 항상 참조 해 주기!!

창고야 쌓여라~ -_-;; 내가 머리가 나쁘니 ㅠ_ㅠ
일반적으로 파일을 생성하거나 수정 할 때 등은 권한이 필요하다.

근데 운영체제를 너무 따라가는...

그저 한숨만 나온다!!

하지만 뚫을 수 있다!!

먼저 솔루션의 속성에 들어가 보안 탭을 열고 난 다음!!ClickOnce 보안 설정을 클릭 했다가 다시 취소하고 저장한다!!

그러면 Manifest 파일이 생성이 되는데

<requestedExecutionLevel  level="asInvoker" uiAccess="false" />
<requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />
<requestedExecutionLevel  level="highestAvailable" uiAccess="false" />

이런 항목이 보일 것이다!!

저걸 이용해서 보안을 뚫을 수 있다!!

현재 저 부분은 주석으로 되어 있지만 아래 쪽에 보면

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

요런 놈이 주석이 풀려 있는데 level에 저 3개 중 하나 적절한걸 넣으면 된다.

사실 오늘 이 포스팅을 하는건... -_-... 해놓고 까먹고 삽질하고 댕겨서... ㅠ_ㅠ

제길.. 바보다 바보 ㅠ_ㅠ

Picture Box 컴포넌트 관련해서 작업을 하다가 마지막에 이미지를 끝까지!!

잡고 있는 문제가 있었다.

급하게 퇴근하느라.. 부사수에게 넘겼는데 null 처리를 하고 Dispose를 해도 안된다는 연락..

그래서 아침에 와서

그냥 컨테이너->컴포넌트니까 해당 속성에 대해서 Dispose를 걸었다...

잘된다..

쉽게 생각하면 그거다.

로컬에 있는 파일에 접근해서 데이터를 처리 할 경우에는 그 속성에 대해서 리소스 해제를 하지 않는 한..

메모리 상에 남아 꽉!! 쥐고 놓지를 않는다.

부사수에게 그렇게 설명을 하긴 했는데..

-_-a 내가 잘못 알고 있는건 아닌가.. 싶기도 하지만 -_- 난 맞다고 알고 있다!!

어떤 파일이 프로세스에 의해 작업 중이라고 되어 있다면..

당황하지 말고 순차적으로 올린 것에 대해서 리소스 해제를 하기를 바란다.

별 다른 내용이 없는 포스팅이긴 하지만..

한번씩 실수를 할 수 있는 문제이기도 하기에 다시 한번 생각해보자는 의미로 포스팅을 해 본다.