2009-07-07 63 views
6

我想读取注册表以查找当前的PowerPoint版本。如何使用QSettings读取Windows注册表(默认)值?

然而,这只是返回零:

QSettings settings("HKEY_CLASSES_ROOT\\PowerPoint.Application\\CurrVer", 
        QSettings::NativeFormat); 

QString sReturnedValue = settings.value("(Default)", "0").toString(); 

任何建议,我如何从一个(默认)键的值?

回答

10

好吧,只是想通了。虽然regedit显示为(默认),但您只是将其作为默认值读取。

QString sReturnedValue = settings.value("Default", "0").toString(); 

感谢收听。

+1

对于大多数的事情,“”表示默认的关键,我看不出“默认”可以工作,当存在一个名为default的实际价值会发生什么同样的钥匙? – Anders 2009-07-07 21:25:40

4

而且,经过一段时间的工作原理:

RegReader.value(".", NULL).toString();