Merhaba arkadaşlar
Bildiğiniz üzere driverlar(Sürücüler) sistem üzerinde tam yetkiye sahip, ring 0 dediğimiz sistemin merkezinde çalışan sys uzantılı dosyalardır.
Sürücü Yazabilmek İçin Gerekenler
* İleri seviye c/c++ bilgisi
* Native Apiler
* Visual Studio 2012 +
* Windows Driver Development Kit 8.1
* Windows 7 +
* DbgView
Başlayalım:
Visual Studio > New project > Driver Development >> Empty Wdm Driver
Tamamdır
Şimdi yeni bir dosya ekleyin projeye
main.c
daha sonra sürücüyü build edip
dosyayı %windir%\system32\drivers konumuna kopyalayın
komut istemini yönetici olarak çalıştırın ve
sc create SürücüIsmı binPath= sürücü konumu type= kernel
yazın ve bekleyin
işlem tamamlandıktan sonra
sc start Sürücüİsmi ile sürücüyü başlatıp DbgView ile logları görüntüleyebilirsiniz
sc stop Sürücüİsmi ile de durdurabilirsiniz.
Bildiğiniz üzere driverlar(Sürücüler) sistem üzerinde tam yetkiye sahip, ring 0 dediğimiz sistemin merkezinde çalışan sys uzantılı dosyalardır.
Sürücü Yazabilmek İçin Gerekenler
* İleri seviye c/c++ bilgisi
* Native Apiler
* Visual Studio 2012 +
* Windows Driver Development Kit 8.1
* Windows 7 +
* DbgView
Başlayalım:
Visual Studio > New project > Driver Development >> Empty Wdm Driver
Tamamdır
Şimdi yeni bir dosya ekleyin projeye
main.c
Kod:
#include <ntddk.h>
void DriverUnload(
PDRIVER_OBJECT pDriverObject)
{
DbgPrint("Surucu Yuklendi\n");
}
NTSTATUS DriverEntry(
PDRIVER_OBJECT DriverObject,
PUNICODE_STRING RegistryPath) // Bu kısım sürücünün yönetildiği kisimdır
{
DriverObject->DriverUnload = DriverUnload;
DbgPrint("Merhaba Dunya\n");
return STATUS_SUCCESS;
}
daha sonra sürücüyü build edip
dosyayı %windir%\system32\drivers konumuna kopyalayın
komut istemini yönetici olarak çalıştırın ve
sc create SürücüIsmı binPath= sürücü konumu type= kernel
yazın ve bekleyin
işlem tamamlandıktan sonra
sc start Sürücüİsmi ile sürücüyü başlatıp DbgView ile logları görüntüleyebilirsiniz
sc stop Sürücüİsmi ile de durdurabilirsiniz.