Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

RtlSetProcessIsCritical vs NtSetInformationProcess

I want to set my process as critical. I understand all the risks, just want to know what to call.

I tried the RtlSetProcessIsCritical method and it worked as it should. Though i tested it on Windows XP virtual machine, one website claimed that RtlSetProcessIsCritical was first presented on Windows 8, and that I need to call NtSetInformationProcess instead. So what do I call? Is there really any difference between those two functions?

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

>Solution :

one website claimed that RtlSetProcessIsCritical was first presented on Windows 8

That is incorrect. It is available in Windows XP and 7, as well.

However, even to this day, RtlSetProcessIsCritical() is still undocumented by Microsoft. Which means, you really should not be using it at all. But, you have already decided to use it, so…

Is there really any difference between those two functions?

RtlSetProcessIsCritical simply calls NtSetInformationProcess() internally. RtlSetProcessIsCritical() is in NTDLL.DLL, whereas NtSetInformationProcess() is in NTOSKRNL (the Windows Kernel), so the former will just call the latter.

Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading