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

psapi is missing in windows xp #198

Closed
cattrace opened this issue Jan 14, 2020 · 4 comments
Closed

psapi is missing in windows xp #198

cattrace opened this issue Jan 14, 2020 · 4 comments

Comments

@cattrace
Copy link

image

@cattrace
Copy link
Author

compiled env: vs2017;select xp options

@cetfor
Copy link

cetfor commented Jan 16, 2020

Hey @cattrace, it may be worth trying to replace EnumProcessModulesEx with EnumProcessModules. Note the difference in prototype with the inclusion of a dwFilterFlag in the Ex variant.

I don't believe the Ex variant is available on Windows XP, please correct me if I'm wrong. There could be a Windows version check inside ScanForModules_EnumProcessModulesEx_Internal (or a higher level) to dynamically call the correct version for the running platform.

@ayoubfaouzi
Copy link
Owner

As @cetfor mentioned, EnumProcessModulesEx requires Windows Vista+.

And apparently that last parameter of EnumProcessModulesEx is used there, not that we can easily get rid of it. If you want, you need to do the filtering by yourself.

Honestly, at this point, I don't think XP is anymore a target to aim for.

@gsuberland ? :)

gsuberland added a commit to gsuberland/al-khaser that referenced this issue Mar 22, 2020
@gsuberland
Copy link
Collaborator

It's fair to say that Windows XP isn't officially supported by this project at the moment, since it's so old, but I think wherever possible we should still try to make it at least not crash, even if the check can't run.

While looking into this I discovered that we would actually have not been able to run al-khaser properly on some Windows 7 machines, because they moved EnumProcessModulesEx out of psapi into kernel32 for Win7, then back into psapi for Win8. I also discovered that we did not have a manifest file for the project, which caused version checks to return incorrect results.

I'm merging #207 to resolve this.

gsuberland added a commit that referenced this issue Mar 22, 2020
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

No branches or pull requests

4 participants