有什么办法来禁用WritePrivateProfileString写入registry,而是使用我们提供给它的ini文件? 我从MSDN看到,您可以禁用文件写入并专门使用registry,但反之亦然。 我想保持我的程序的便携性,同时使用标准win API来存储configuration数据(而不是创build新的东西)..
谢谢
如果你的ini文件被映射到注册表,那么你显然已经将它添加到HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ IniFileMapping。 删除该条目,你的ini文件将结束在你期望的地方。 您的代码行在我的机器上按预期工作。
MSDN链接
我假设你正在使用MFC,因为只有它有自己的WritePrivateProfileString
和类似的功能版本。 当你使用新版本的MFC编译你的代码时,你会自动使用这些API的MFC等价物,而MFC只是简单地使用你传递给API的信息,并从注册表中读写它们。 为了避免这种情况,不要写
WritePrivateProfileString
在你的代码,但
:: WritePrivateProfileString
代替。
是。 钩住它(你可以轻松地使用Microsoft Detours等库)。