Sådan indlæses og startes Windows-driveren?

Indlæg af Hanne Mølgaard Plasc

Problem



Hej Jeg har en simpel driver helloworld.sys inde i, at den har nogle print udtalelser som kdprint ('loaded successfully') osv. Nu skal jeg indlæse føreren og starte tjenesten. hvordan man gør det .. ??
Tak på forhånd

Bedste reference


Grundlæggende skal føreren være registreret som en service. Brug OpenSCManager for at få adgang til servicemanagerfunktionerne, og brug derefter CreateService til at registrere din driver for første gang.


Under registreringen vælger du startstart for driveren. SERVICE\_BOOT\_START betyder, at føreren skal læses under opstartstidspunktet (meget tidligt stadium af OS-indlæsning), SERVICE\_SYSTEM\_START betyder, at driveren skal indlæses under systembelastningen (dette er typisk mere eller mindre). Du kan også bruge SERVICE\_DEMAND\_START - føreren vil ikke blive indlæst automatisk.


Medmindre din driver er indlæst automatisk, skal du bruge OpenService for at få adgang til tjenesten, og StartService for at starte den faktisk.


Resten afhænger af hvad din chauffør faktisk gør. Hvis det opretter en virtuel enhed - kan du få adgang til det ved at bruge CreateFile. Brug derefter DeviceIoControl til faktisk at kommunikere med den.

Andre referencer 1


Se nedenstående link, hvor du kan finde alt hvad du behøver at vide fra at skrive en driver til at kompilere og starte det:


Introduktion til Enhedsdrivere [10]