kaaleksandr

Results 9 comments of kaaleksandr

For example: Property fid_USBPORT_HC have type 3 (TDH_INTYPE_INT8), but func TdhGetPropertySize returned 20. 1b != 20.

see Remarks: https://docs.microsoft.com/en-us/windows/win32/api/tdh/nf-tdh-tdhgetpropertysize

example code: krabs::user_trace trace{ L"TestUsbSession_1234" }; // see: https://github.com/repnz/etw-providers-docs/blob/master/Manifests-Win10-18990/Microsoft-Windows-USB-UCX.xml krabs::provider provider(krabs::guid(L"{36da592d-e43a-4e28-af6f-4bc57c5a11e8}")); provider.add_on_event_callback([](const EVENT_RECORD &record, const krabs::trace_context &trace_context) { krabs::schema schema(record, trace_context.schema_locator); std::wcout

![Krabs_unh_exception](https://user-images.githubusercontent.com/36437921/135844514-ab8d2504-8cc4-4606-8fe7-18fd0bd86ae0.PNG)

![Krabs_unh_exception_2](https://user-images.githubusercontent.com/36437921/135845181-ef4bf9ef-cd59-4169-97fc-e91f9a8971ed.PNG)

Привет! Данная ситуация проявляется после освобождения объекта типа krabs::user_trace. После его освобождения сессия etw еще не завершена и вызываются функции trace::on_event, в этих функциях идет обращение к объекту krabs::user_trace, который...

example code: std::thread* th1; { krabs::user_trace trace(L"My Named Trace"); th1 = new std::thread { [&]() { krabs::provider provider(krabs::guid(L"{22fb2cd6-0e7b-422b-a0c7-2fad1fd0e716}")); provider.add_on_event_callback([](const EVENT_RECORD& record, const krabs::trace_context& trace_context) { for (;;) { krabs::schema schema(record,...

![forward_etw](https://user-images.githubusercontent.com/36437921/135855909-bc365201-5124-4cd3-a990-8dbfdc93c596.PNG)