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?
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...RtlSetProcessIsCriticalsimply callsNtSetInformationProcess()internally.RtlSetProcessIsCritical()is inNTDLL.DLL, whereasNtSetInformationProcess()is inNTOSKRNL(the Windows Kernel), so the former will just call the latter.