HRESULT Trace::Log_StopCopyRBData(ABI::Windows::Foundation::Diagnostics::ILoggingActivity *pActivity, bool bSuccess, size_t bufferSize, const void *pReadPtr, const void *pWritePtr) { ComPtr<ILoggingFields> fields; HRESULT hr = CreateLoggingFields(&fields); if (FAILED(hr)) return hr; fields->AddBoolean(HStringReference(L"Success").Get(), bSuccess); fields->AddUInt32(HStringReference(L"BufferSize").Get(), bufferSize); fields->AddUInt32WithFormat(HStringReference(L"pWrite").Get(), (UINT32)pWritePtr, LoggingFieldFormat::LoggingFieldFormat_Hexadecimal); fields->AddUInt32WithFormat(HStringReference(L"pRead").Get(), (UINT32)pReadPtr, LoggingFieldFormat::LoggingFieldFormat_Hexadecimal); ComPtr<ILoggingActivity> spActivity = pActivity; ComPtr<ILoggingActivity2> spActivity2; spActivity.As(&spActivity2); HSTRING hName; spActivity->get_Name(&hName); return spActivity2->StopActivityWithFields(hName, fields.Get()); }