如何在C ++中创build一个不可删除的registry项(或文件)

我想创build一个时间限制版本的游戏,我正在用C ++进行开发。 我已经遇到了一些创build文件的程序,我仍然无法删除,而其他创build的registry项很难删除(因为有多个子键需要先更深入地修改主机,删除它,更改主人…)。

那么我认为唯一的办法就是在计算机上创造一些不是(或者几乎不可删除)的标记开始试用的东西。 我知道如何创build密钥或文件,但不知道如何保护它们。

谢谢。

Solutions Collecting From Web of "如何在C ++中创build一个不可删除的registry项(或文件)"

标准Windows API无法处理键/值名称中的空字符,而本地API可以。 因此,您可以在名称中创建一个包含一个或多个NULL字符的密钥,以存储您的许可数据,这些数据不能使用regedit等标准工具进行删除。

有关详细信息和源代码,请参阅: http : //technet.microsoft.com/en-us/sysinternals/dd581628 。