[EagleEyeMini_Device.NT.Services] Include=ks.inf, kscaptur.inf Needs=KS.Services, KSCAPTUR.Services

int main() HANDLE hCamera = OpenCameraDevice(); if (hCamera == INVALID_HANDLE_VALUE) printf("Failed to open camera device\n"); return 1;

INCLUDES=$(INCLUDES);.

WDFDEVICE device; PDEVICE_CONTEXT deviceContext; NTSTATUS status = STATUS_SUCCESS; PVOID inputBuffer = NULL; PVOID outputBuffer = NULL; size_t bytesReturned = 0; device = WdfIoQueueGetDevice(Queue); deviceContext = DeviceGetContext(device);

WdfRequestCompleteWithInformation(Request, status, bytesReturned);

For most USB cameras on Windows 10, you typically don't need a custom driver if it's UVC-compliant. However, for custom features (zoom, PTZ, special controls), you'd create a filter driver or extension driver . Option 1: UVC Extension Driver (Recommended) 1. INF File (EagleEyeMini.inf) ; ; EagleEyeMini.inf - Eagle Eye Mini Camera Driver ; [Version] Signature="$WINDOWS NT$" Class=Image ClassGuid=6bdd1fc6-810f-11d0-bec7-08002be2092f Provider=%ManufacturerName% CatalogFile=EagleEyeMini.cat DriverVer=01/15/2025,1.0.0.0 PnpLockDown=1

deviceContext = DeviceGetContext(device);

status = WdfDriverCreate(DriverObject, RegistryPath, WDF_NO_OBJECT_ATTRIBUTES, &config, WDF_NO_HANDLE);

// Set device type as exclusive (camera) WdfDeviceInitSetDeviceType(DeviceInit, FILE_DEVICE_VIDEO);