Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.10.2013, 17:02   #1
BearGrylls
Новичок
Джуниор
 
Регистрация: 01.06.2012
Сообщений: 2
Восклицание Работа с реестром в С++ Builder

Моя программа делают следущее:
1) пользователь вводит цифру, которая в свою очередь означает в какой ветке реестра мы будем работать;
2) пользователь вводит путь к ключу, с которым мы будем работать;
3) путь из string преобразуется в AnsiString и уже в таком виде используется в программе.
Проблема в том, что я не могу ввести путь к ключу, т.к. программа после ввода цифры(пункт 1) заканчивает работу.
Если же в переменную s изначально записать путь, например string s = ".3gpp", то все работает.
Объясните, в чем тут проблема?


//-------------------------------------------------------------------------
#include "Registry.hpp"
#include <string.h>
#include <iostream.h>
#pragma hdrstop
using namespace std;

//-------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
int n;

TRegistry *reg = new TRegistry();

cout << "Please enter '1' to choose HKEY_CLASSES_ROOT\n";
cout << "Please enter '2' to choose HKEY_CURRENT_USER\n";
cout << "Please enter '3' to choose HKEY_LOCAL_MACHINE\n";
cout << "Please enter '4' to choose HKEY_USERS\n";
cout << "Please enter '5' to choose HKEY_CURRENT_CONFIG\n";

cin >> n;

switch (n)
{
case 1:
reg->RootKey = HKEY_CLASSES_ROOT;
break;
case 2:
reg->RootKey = HKEY_CURRENT_USER;
break;
case 3:
reg->RootKey = HKEY_LOCAL_MACHINE;
break;
case 4:
reg->RootKey = HKEY_USERS;
break;
case 5:
reg->RootKey = HKEY_CURRENT_CONFIG;
break;
}

string s;
getline(cin,s);
AnsiString as = s.c_str();
reg->OpenKeyReadOnly(as);
reg->CloseKey();
delete reg;
system ("pause");
return 0;
}
BearGrylls вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с реестром? angelada Помощь студентам 4 19.01.2011 12:12
работа с реестром alex0097 Общие вопросы Delphi 1 13.07.2010 10:20
работа с реестром. kozei Win Api 6 17.07.2007 13:31
Работа с реестром. eL1tE Общие вопросы Delphi 5 16.04.2007 15:48