Skip to content

This represents the sample Indirect Display Driver used in the project for improving Testing Capabilities for Chromium Multi-Display APIs, as part of my Google Summer of Code'23 @chromium (Google) project

Notifications You must be signed in to change notification settings

bradtriebwasser/IndrectDisplayDriver

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tracing

Tracing is acheived with the Inflight Trace Recorder. Tracing can be added to Driver.cpp using TraceLog. Example:

TraceEvents(TRACE_LEVEL_ERROR, TRACE_DRIVER , "WdfDriverCreate failed, %!STATUS!", ntStatus);

Note that the file which includes TraceEvents must have the appropriate flags set in the .vcxproj:

<ClCompile Include="Driver.cpp">
<WppEnabled>true</WppEnabled>
<WppRecorderEnabled>true</WppRecorderEnabled>
<WppPreprocessorDefinitions>WPP_MACRO_USE_KM_VERSION_FOR_UM=1</WppPreprocessorDefinitions>
</ClCompile>

In order to view the logs, use the TraceView tool included in the windows SDK. For example it might be located here:

C:\wdk\Program Files\Windows Kits\10\Tools\10.0.22621.0\x64\traceview.exe

Once TraceView is running:

  1. File -> Create New Log Session
  2. Select "PDB (Debug Information) File" and click "...".
  3. (Must build the solution first). Select IddSampleDriver.pdb file (located in x64/Debug/IddSampleDriver.pdb)
  4. Click OK.
  5. click Next >
  6. Click Finish

Now the drivers log events will appear in the window.

About

This represents the sample Indirect Display Driver used in the project for improving Testing Capabilities for Chromium Multi-Display APIs, as part of my Google Summer of Code'23 @chromium (Google) project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 95.7%
  • C 4.3%