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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.05.2015, 16:04   #1
Ledoryb
Новичок
Джуниор
 
Регистрация: 13.05.2015
Сообщений: 14
По умолчанию Помощь с реестром (перевести код с Delphi на Bulder C++)

Здравствуйте, уважаемые программисты. Помогите пожалуйста перевести этот код на Bulder C++.

Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
reg:= TRegistry.Create;
 reg.RootKey:= HKEY_CURRENT_USER;
 reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Policies\System', False);
 if reg.ValueExists('NoDispBackgroundPage') then
  if reg.ReadInteger('NoDispBackgroundPage') = 1 then CheckBox1.Checked:= True;
 reg.CloseKey;
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
 begin 
  reg:= TRegistry.Create; 
  reg.RootKey:= HKEY_CURRENT_USER;
  reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Policies\System', True); 
  reg.WriteInteger('NoDispBackgroundPage', 1);
  reg.CloseKey;
 end else begin 
  reg:= TRegistry.Create;
  reg.RootKey:= HKEY_CURRENT_USER;
  reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Policies\System', True);
  reg.WriteInteger('NoDispBackgroundPage', 0);
  reg.CloseKey;
end;


____
исходный код нужно форматировать тегами
модератор

Последний раз редактировалось Ledoryb; 13.05.2015 в 16:10.
Ledoryb вне форума Ответить с цитированием
Старый 13.05.2015, 16:12   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

C++ Builder это родной брат Delphi, поэтому классы (VCL) одни и те же, соответственно, и методы одни и те же.
Только синтаксис чуть меняется (т.к. это всё же C++, а не паскаль).

посмотрите пример ЗДЕСЬ
и перепишите свой код ...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 13.05.2015, 16:14   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
 TRegistry* reg= new TRegistry();
 reg->RootKey= HKEY_CURRENT_USER;
 reg->OpenKey("Software\Microsoft\Windows\CurrentVersion\Policies\System", False);
 if (reg->ValueExists("NoDispBackgroundPage") )
  if (reg->ReadInteger("NoDispBackgroundPage") == 1) CheckBox1->Checked= True;
 reg->CloseKey;
 delete reg;
Код:
   TRegistry* reg= new TRegistry();
  reg->RootKey= HKEY_CURRENT_USER;
  reg->OpenKey("Software\Microsoft\Windows\CurrentVersion\Policies\System", True); 
if(Четтам){
  reg->WriteInteger("NoDispBackgroundPage", 1);
} else { 
  reg->WriteInteger("NoDispBackgroundPage", 0);
}
  reg->CloseKey;
delete reg;
Пример так )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.05.2015, 16:21   #4
Ledoryb
Новичок
Джуниор
 
Регистрация: 13.05.2015
Сообщений: 14
По умолчанию

Спасибо большое. Только вот не понял с этим if(Четтам){ ?
Ledoryb вне форума Ответить с цитированием
Старый 13.05.2015, 16:24   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А я не понял что это за end else begin у тебя в исходнике )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.05.2015, 16:41   #6
Ledoryb
Новичок
Джуниор
 
Регистрация: 13.05.2015
Сообщений: 14
По умолчанию

Хорошо, а как тогда написать в кнопке второй код?
Ledoryb вне форума Ответить с цитированием
Старый 13.05.2015, 17:03   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну наверное так как я показал )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.05.2015, 17:04   #8
Ledoryb
Новичок
Джуниор
 
Регистрация: 13.05.2015
Сообщений: 14
По умолчанию

А что с if делать? Что туда писать?
Ledoryb вне форума Ответить с цитированием
Старый 13.05.2015, 17:25   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я не знаю )
Я просто твой пример интерпретировал. Я не в курсе какие там условия должны быть, и откуда ты его вырвал. Ну явно это скетч, он даже не запустится. Откуда ты его взял то?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.05.2015, 17:28   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Ledoryb Посмотреть сообщение
А что с if делать? Что туда писать?
у тебя кусок кода С ОШИБКОЙ, он в Delphi не откомпилируется.
Именно потому что ELSE есть, а IF - отсутствует.

Разбирайся либо с тем, откуда ты этот код взял (кто тебя нагло обманул),
либо с тем, что этот код должен делать, т.е. как его написать, чтобы он был корректен (соответствовал алгоритму).
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не работает код в Borland Bulder 6 C++ Wolfram Sievers C++ Builder 10 15.04.2017 11:05
Перевести код из C# в Delphi FreeZon Общие вопросы Delphi 0 17.02.2014 16:39
перевести код на С++ из Delphi yakuza Общие вопросы C/C++ 1 24.04.2011 00:06
перевести код с vb в delphi fize Помощь студентам 11 11.01.2010 18:40
Перевести код с Delphi на С++ Vladya Помощь студентам 10 30.03.2009 20:31