Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use EnableTraceEx to support Windows 2008 Server SP1 #5

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

superfashi
Copy link

EnableTraceEx2 only exists after Windows 2008 Server SP2, yet the new features are not being used. Switch to EnableTraceEx for better backwards compatibility.

@yalegko
Copy link
Member

yalegko commented May 18, 2021

Hey! Thank you for the contribution and huge sorry for a late answer!

Sadly, I'm unsure that we can safely move to the EnableTraceEx for the all OS w/o breaking any features available now.

For example, I'm not sure that EnableTraceEx is forward(?) compatible and supports new EnableProperty values listed in (v2) ENABLE_TRACE_PARAMETERS structure, such as:

  • EVENT_ENABLE_PROPERTY_EVENT_KEY;
  • EVENT_ENABLE_PROPERTY_PROCESS_START_KEY;
  • etc.

Are there any clear (and preferably official) list of differences between features of EnableTraceEx vs EnableTraceEx2?

As for support of Windows 2008 Server SP1 and below, I believe it's out of maintenance now, isn't it? Perhaps we could think about a fallback to the old API when the new one is not available, but I'm unsure how useful it would be.

@superfashi
Copy link
Author

fallback seems to be a better option, though I think the old API EnableTraceEx definitely has its EnableProperty the same as ENABLE_TRACE_PARAMETERS.EnableProperty. If you want to make sure, probably I can reverse the library and see if they get processed by the same function.

@yalegko
Copy link
Member

yalegko commented Jun 6, 2021

I'm not sure that we could just RE a DLL and ensure it in a one single version.

I'm concerned about our future need in modern API and about MS guys who will change the undocumented behaviour somehow.

So, as for me, small and readable fallback (can we make it nice?) seems a better option.

p.s. Huge sorry for answering once a month! 😅

scudette pushed a commit to scudette/etw that referenced this pull request Dec 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants