deviceContext->UsbInterface = configParams.Types.SingleInterface.ConfiguredUsbInterface;
// Initialize device attributes with context WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&deviceAttributes, DEVICE_CONTEXT);
// Vendor-specific commands #define IOCTL_CAMERA_SET_ZOOM CTL_CODE(FILE_DEVICE_UNKNOWN, 0x800, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_CAMERA_SET_FOCUS CTL_CODE(FILE_DEVICE_UNKNOWN, 0x801, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_CAMERA_SET_EXPOSURE CTL_CODE(FILE_DEVICE_UNKNOWN, 0x802, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_CAMERA_GET_STATUS CTL_CODE(FILE_DEVICE_UNKNOWN, 0x803, METHOD_BUFFERED, FILE_ANY_ACCESS)
WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(DEVICE_CONTEXT, DeviceGetContext) eagle eye mini camera driver windows 10
for (DWORD i = 0; SetupDiEnumDeviceInterfaces(deviceInfoSet, NULL, &guid, i, &interfaceData); i++) DWORD requiredSize = 0; SetupDiGetDeviceInterfaceDetail(deviceInfoSet, &interfaceData, NULL, 0, &requiredSize, NULL); PSP_DEVICE_INTERFACE_DETAIL_DATA detailData = (PSP_DEVICE_INTERFACE_DETAIL_DATA)malloc(requiredSize); detailData->cbSize = sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA); if (SetupDiGetDeviceInterfaceDetail(deviceInfoSet, &interfaceData, detailData, requiredSize, NULL, NULL)) HANDLE hDevice = CreateFile(detailData->DevicePath, GENERIC_READ free(detailData);
WDFDEVICE device; WDF_IO_QUEUE_CONFIG queueConfig; WDF_OBJECT_ATTRIBUTES deviceAttributes; PDEVICE_CONTEXT deviceContext; NTSTATUS status; UNREFERENCED_PARAMETER(Driver);
WDF_USB_CONTROL_SETUP_PACKET setupPacket; WDF_MEMORY memory; NTSTATUS status; ULONG bytesTransferred; deviceContext->UsbInterface = configParams
KdPrint(("EagleEyeEvtDeviceAdd - Creating device\n"));
PDEVICE_CONTEXT deviceContext; WDF_USB_DEVICE_CREATE_CONFIG usbConfig; WDF_USB_DEVICE_SELECT_CONFIG_PARAMS configParams; WDF_USB_INTERFACE_SELECT_SETTING_PARAMS settingParams; WDF_OBJECT_ATTRIBUTES usbAttributes; NTSTATUS status; UCHAR i; UNREFERENCED_PARAMETER(ResourceList); UNREFERENCED_PARAMETER(ResourceListTranslated);
// Set exclusive access WdfDeviceInitSetExclusive(DeviceInit, TRUE); DeviceGetContext) for (DWORD i = 0
SP_DEVICE_INTERFACE_DATA interfaceData; interfaceData.cbSize = sizeof(SP_DEVICE_INTERFACE_DATA);
CloseHandle(hCamera); return 0; !include $(NTMAKEENV)\makefile.def TARGETNAME=EagleEyeMini TARGETTYPE=DRIVER TARGETPATH=obj
// Get buffers if (InputBufferLength > 0) status = WdfRequestRetrieveInputBuffer(Request, InputBufferLength, &inputBuffer, NULL); if (!NT_SUCCESS(status)) WdfRequestComplete(Request, status); return;