Advertisement
Guest User

Untitled

a guest
Feb 20th, 2019
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.83 KB | None | 0 0
  1. DWORD WINAPI ThreadFunc(void* arg) {
  2.  
  3. Sleep(100);
  4. PDEVICE_CONTEXT DeviceContext = (PDEVICE_CONTEXT)arg;
  5.  
  6. QUEUE_CONTEXT * qc = (QUEUE_CONTEXT *)DeviceContext->DefaultQueue;
  7. while (1)
  8. {
  9. RingBufferWrite(&(qc->RingBuffer), (BYTE*)"HELLOrn", 8);
  10. Sleep(1000);
  11. }
  12. return 0;
  13. }
  14.  
  15. EvtIoRead(
  16. _In_ WDFQUEUE Queue,
  17. _In_ WDFREQUEST Request,
  18. _In_ size_t Length
  19. )
  20. {
  21. NTSTATUS status;
  22. PQUEUE_CONTEXT queueContext = GetQueueContext(Queue);
  23. WDFMEMORY memory;
  24. size_t bytesCopied = 0;
  25.  
  26. ...
  27.  
  28. status = RingBufferRead(&queueContext->RingBuffer,
  29. (BYTE*)WdfMemoryGetBuffer(memory, NULL),
  30. Length,
  31. &bytesCopied);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement