2

こんにちは、単純なドライバー helloworld.sys があり、その中に kdprint("loaded successfully") などのいくつかの印刷ステートメントがあります。ドライバーをロードしてサービスを開始する必要があります。どうやってするか..??前もって感謝します

4

2 に答える 2

3

基本的にドライバーはサービスとして登録する必要があります。を使用OpenSCManagerしてサービス マネージャー機能にアクセスし、次に を使用CreateServiceして初めてドライバーを登録します。

登録時に、ドライバーの開始タイプを選択します。SERVICE_BOOT_STARTブート時にドライバーをロードする必要があることを意味し (OS ロードの非常に早い段階)、SERVICE_SYSTEM_STARTシステムのロード時にドライバーをロードする必要があることを意味します (これは多かれ少なかれ典型的です)。使用することもできますSERVICE_DEMAND_START- ドライバーは自動的にロードされません。

ドライバーが自動的にロードされない限り、OpenServiceそのサービスにアクセスしStartServiceて実際に開始するために使用する必要があります。

残りは、ドライバーが実際に何をするかによって異なります。仮想デバイスを作成する場合は、 を使用してアクセスできますCreateFile。次にDeviceIoControl、実際に通信するために使用します。

于 2011-09-01T07:13:02.000 に答える