TRegistry GetKeyNames не работает должным образомC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 TRegistry GetKeyNames не работает должным образом

Сообщение Anonymous »

Я пытаюсь использовать следующий код, чтобы получить список подразделов реестра. 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];
всегда имеет значение NULL.
Изменяемый проект изначально был разработан с помощью Athena 12.1. Я обновил этот проект до версии 12.2, создав новый проект и добавив в него все исходные формы. Я все еще получаю тот же результат. Я продолжал работать над этим и нашел следующее:

Код: Выделить всё

TStringList *subkeys = new TStringList();
pRegistry->GetKeyNames(subkeys);
UnicodeString RALPH = subkeys->Strings[0]; Strings[1][1]; Strings[0][1]; 

Подробнее здесь: [url]https://stackoverflow.com/questions/79218470/tregistry-getkeynames-not-working-as-expected[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»