About Programing/04. Device Driver
[TDI_FW] 예제 분석 5월 18일
숙신
2010. 5. 18. 20:09
참고 자료 : 윈도우 디바이스 드라이버 - 이봉석(한빛미디어) 604쪽
- 서비스를 생성하는 목적으로 사용되는 Win32 API 함수 정리
- OpenSCManager() : 서비스를 생성하거나 제거, 중지 등의 일을 하기 위해서 사전에 사용하는 서비스 컨트롤 관리자(Service Control Manager) 핸들을 얻는 함수다.
- OpenService() : 기존에 생성한 서비스 핸들을 얻는 함수다. 디바이스 드라이버 서비스를 생성하기 전에 이 함수를 먼저 사용하여 드라이버를 위한 서비스가 이미 생성되어 있느닞를 알아보는 용도로 사용한다.
- CreateService() : 서비스를 생성하는 목적으로 사용하는 함수다.
- StartService() : 서비스를 실행하는 목적으로 사용하는 함수다. NT 구형(Legacy) 드라이버를 위한 서비스는 이와 같은 함수를 응용 프로그램이 직접 호출함으로써 드라이버를 메모리에 적재할 수 있다. 그러나 WDM 드라이버는 디바이스 스택형성 과정을 위해서 메모리에 적재되므로 이 함수를 사용하지 않는다.
- ControlService() : 동작 중인 서비스에 특정 명령을 전달하는 목적으로 사용하는 함수다.
- DeleteService() : 생성된 서비스를 제거하는 용도로 사용하는 함수다.
- CloseServiceHandle() : 사용하던 서비스 핸들, SCM 핸들을 반납하는 용도로 사용하는 함수다.