我们可能会开始转换旧的 VS2003 MFC 项目以使用 MFC 功能包和 VS2008 提供的花哨的新功能。几个新的 UI 控件会非常好,除了一件事 - 它们会自动将信息保存到注册表。我的注册表没有问题,但是对于用户使用程序的多种环境,将用户数据保存到数据库要容易得多。
所以,我希望有一个主要的“访问注册表”功能可以重载以指向数据库。但简短的调查并没有发现任何问题。有没有其他人在做类似的事情上取得过成功?
我们可能会开始转换旧的 VS2003 MFC 项目以使用 MFC 功能包和 VS2008 提供的花哨的新功能。几个新的 UI 控件会非常好,除了一件事 - 它们会自动将信息保存到注册表。我的注册表没有问题,但是对于用户使用程序的多种环境,将用户数据保存到数据库要容易得多。
所以,我希望有一个主要的“访问注册表”功能可以重载以指向数据库。但简短的调查并没有发现任何问题。有没有其他人在做类似的事情上取得过成功?
根据MSDN此页面上的信息,似乎应该可以按照您的建议进行操作。我自己没有尝试过,所以我不知道在实践中会有多困难。
根据文档,您应该创建一个继承CSettingsStore
来读取和写入设置的类,并调用CSettingsStoreSP::SetRuntimeClass
以便框架使用您的类而不是默认类。
MFC 功能包使用 BCGSoft 提供的代码,他们早在 2001 年就添加了此功能(因此您可以将状态保存到 XML 文件、数据库等)。我在这台 PC 上没有功能包,但尝试寻找一个叫做类似的类CMFCRegistrySP
。
明天我会检查自己。
StateCollection
样本会这样做吗?