'Computer/System'에 해당되는 글 7건
- 2008/01/16 dr.Dorothy How To Get IP & Mac Address (C)
- 2008/01/14 dr.Dorothy 물리드라이브에 포함된 논리 드라이브 보기
- 2008/01/02 dr.Dorothy How To Get Physical Drive Size (2)
- 2008/01/01 dr.Dorothy How To Get Process List
- 2008/01/01 dr.Dorothy Change Security Descriptor (Registry)
Mac Address
가끔씩 프로그램을 만들다 보면..
물리드라이브의 전체 용량이 필요한 경우가 있다..
이때 DeviceIoControl() 를 이용하면 쉽게 알 수 있다..
프로세스 리스트의 목록이 필요한 경우..
1. CreateToolhelp32Snapshot 함수를 이용해서 획득하는 방법이 있고..
2. ZwQuerySystemInformation 함수를 이용해서 획득하는 방법이 있다..
전자의 경우는 #include <tlhelp32.h> 라이브러리를 사용하면 되고..
후자의 경우는 Windows Native API 를 사용해야 한다..
먼저.. CreateToolhelp32Snapshot 함수의 예를 보면..
이런 식으로 사용한다..
다음으로.. Native API를 사용하는 후자의 경우..
위에 보이는것 처럼.. 먼저, 메모리 크기를 잡아주고..
PSYSTEM_PROCESSES 구조체에서 다음 데이터 포인터를 통해 이동한다..
요즘은 Native API들을 일부로 자주 사용하고 있다..
의식적으로 유니코드에 대해서 항상 생각을 해줘야 하고..
윈도우의 내부함수를 사용한다는 재미가 쏠쏠하다..
안에 있을때 USB 사용시 흔적 지우는게 가장 귀찮았다..
자동으로 지워지게끔 프로그램을 구현하려 해도 보안권한에 막혀서,
키가 지워지지 않았다.
(사실 이때까지만 해도 윈도우 보안체계에는 관심이 없었다..)
그래서!!..
자동으로 지워주게끔 할 프로그램을 개발하면서..
윈도우의 보안체계에 대해서 열공한 결과..
USB흔적을 자동으로 지우는 프로그램을 개발해서 사용했다..
이때 참고한.. 보안 권한을 바꿔주는 코드이다..