有人可以用最简单的术语(我只是一个缺乏最新详细编程知识的临时程序员)来解释在 codegear C++ (2007) 中使用注册表的最简单方法。
我在我编写的旧(旧!)程序中有一行代码导致启动出现显着延迟...
DLB->Directory=pIniFile->ReadString("Options","Last Directory","no key!");
代码正在使用 ini 文件。我希望能够改用注册表(写入变量,例如应用程序使用的最后一个目录)
但细节并不重要。我只是想要一个关于使用特定于 codegear c++ builder 的注册表的通用方法。
我用谷歌搜索了这个,但像往常一样,我得到了很多关于 C++ 构建器的页面和一些关于 Windows 注册表的页面,但没有页面解释如何将两者结合使用。
最佳答案
使用TRegistry类...(包括registry.hpp)
//Untested, but something like...
TRegistry *reg = new TRegistry;
reg->RootKey = HKEY_CURRENT_USER; // Or whatever root you want to use
reg->OpenKey("theKey",true);
reg->ReadString("theParam",defaultValue);
reg->CloseKey();
请注意,打开和读取 ini 文件通常非常快,所以也许您需要测试您的假设,即读取 ini 实际上是您的问题,我不认为只是从注册表中获取您的目录名称将解决您的问题。
关于c++ - 我如何使用注册表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1197148/