작품명 : 드라이버 백업 프로그램 버전 : 1.1.0.86 개발 도구: 볼랜드 델파이 7 프로그램 작성자: Lin Shijun
---------------------------------- 프로그램 소개: 드라이버 백업은 이름에서 알 수 있듯이 운영 체제의 각 하드웨어에 대한 드라이버를 백업하는 것입니다. 프로그램은 두 가지 방법으로 시스템에서 드라이버를 검색합니다. 1. 권장 백업 드라이버를 검색합니다(시스템에는 자체 드라이버가 없음). 2. 시스템의 모든 드라이버(시스템과 함께 제공되는 드라이버 및 시스템에서 제공하는 드라이버)를 검색합니다. 제3자) 검색된 드라이버를 목록에 표시하고 드라이버 유형 및 백업 제안에 주석을 답니다. 드라이버 목록 항목을 클릭하면 해당 드라이버의 상세 정보를 볼 수 있습니다. 이 프로그램은 플러그인 기술(플러그인)을 도입하여 프로그램의 기능을 확장합니다. 플러그인 프로그램은 접미사 이름이 *.Dll인 플러그인 폴더에 배치됩니다. 플러그인을 삭제해도 정상적인 작동에는 영향을 미치지 않습니다. 프로그램의.
---------------------------------- 프로그램 기능 구현 원리: 시스템 드라이버 정보는 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass에 저장되며 이 디렉터리의 모든 하위 키를 읽어 시스템의 모든 드라이버에 대한 자세한 정보를 얻습니다. 각 장치 드라이버의 레지스트리 하위 키에 있는 InfPath 값은 드라이버의 드라이버 설치 파일이며, 시스템 디렉터리 아래의 inf 폴더에 저장됩니다(예: Windows 2000 시스템의 경우 WINNTinf). 예를 들어 그래픽 카드 드라이버 설치 파일 oem10.inf(예: Windows 2000 시스템의 WINNTinfoem10.inf) 파일의 [SourceDisksFiles] 섹션에서 그래픽 카드 드라이버가 포함된 파일을 찾을 수 있습니다. 시스템 디렉터리를 검색하여 찾으세요. 지정된 디렉터리에 복사하여 저장하시면 백업이 완료됩니다.
---------------------------------- 파일에는 다음이 포함됩니다. 실행 프로그램 폴더: DriverBackUp.exe --->주 프로그램(시작 프로그램) PluginCookies_Plugin.dll --->플러그인(백업 쿠키) PluginIEFav_Plugin.dll --->플러그인(IE 즐겨찾기 백업) PluginRegedit_Plugin.dll --->플러그인(백업 레지스트리) 소스 코드 폴더: DriverBuckUp.dpr --->주 프로그램 프로젝트 파일 PluginCookies_Plugin.dpr --->플러그인(백업 쿠키) 프로젝트 파일 PluginIEFav_Plugin.dpr --->플러그인(IE 즐겨찾기 백업) 프로젝트 파일 PluginRegedit_Plugin.dpr --->플러그인(백업 레지스트리) 프로젝트 파일
---------------------------------- 주요 프로그램 주요 모듈: //untMain.pas // 본체 //프로그램명 : 드라이버 백업 ---------------------------------- //untPlugin.pas // 기능: 플러그인 참조 및 플러그인 기능 구현 ---------------------------------- // UntSearchDriver.pas // 기능: 시스템에서 드라이브 장치를 검색합니다. ---------------------------------- //untBackUpDriver.pas // 기능: 드라이버 파일을 백업합니다. ---------------------------------- //untLoadInfo.pas // 기능: 드라이브 장치 정보를 가져옵니다. ---------------------------------- //untReg.pas // 기능: 레지스트리를 편집합니다. ----------------------------------
---------------------------------- 프로그램 플러그인 인터페이스(Delphi): //동적 링크 라이브러리(플러그인)의 동적 로딩, 내부 함수 선언. TPluginAbout=procedure(handle:HWND);stdcall; //플러그인 이벤트 정보 TPluginName=function():ShortString;stdcall; //플러그인 이름 가져오기 TPluginFormShow=procedure();stdcall; //플러그인 창 열기 ------------------------------------- -------------