TRegistry GetKeyNames 未按预期工作

问题描述 投票:0回答:1

我正在尝试使用以下代码来获取注册表中的子项列表。 GetKeyNames 接受一个 TString 对象。返回后,TStringList 对象的计数为 3,这是正确的计数。然而,虽然 TStringList 有正确的计数,但它似乎没有名称。这可能是很简单的事情,但我一直没能发现问题所在。

TRegistry *pRegistry = new TRegistry(KEY_READ);
pRegistry->RootKey   = HKEY_LOCAL_MACHINE;
pRegistry->OpenKeyReadOnly(L"\\SOFTWARE\\Ogre\\Fasthole");

TStringList *subkeyNames = new TStringList();
pRegistry->GetKeyNames(subkeyNames);

UnicodeString ALICE  = subkeyNames->Names[0];

ALICE 始终为 NULL。

c++ registry c++builder vcl
1个回答
0
投票

您需要使用

TStringList
Strings[]
属性而不是
Names[]
属性。

© www.soinside.com 2019 - 2024. All rights reserved.