pub unsafe extern "system" fn HidD_GetProductString( hiddeviceobject: HANDLE, buffer: *mut c_void, bufferlength: u32, ) -> BOOLEAN