TRegistry (C++)
Description
This example shows how to use the TRegistry class in order to find, insert, and delete Keys and Items into the Windows Registry. This example uses two buttons: InsertToRegBtn and DeleteFromRegBtn, for inserting and deleting the values.
Code
void __fastcall TForm2::InsertToRegBtnClick(TObject *Sender)
{
TRegistry* reg = new TRegistry(KEY_READ);
reg->RootKey = HKEY_LOCAL_MACHINE;
if(!reg->KeyExists("Software\\MyCompanyName\\MyApplication\\"))
{
MessageDlg("Key not found! Created now.",
mtInformation, TMsgDlgButtons() << mbOK, 0);
}
reg->Access = KEY_WRITE;
bool openResult = reg->OpenKey("Software\\MyCompanyName\\MyApplication\\", true);
if(!openResult)
{
MessageDlg("Unable to create key! Exiting.",
mtError, TMsgDlgButtons() << mbOK, 0);
return;
}
//Checking if the values exist and inserting when neccesary
if(!reg->KeyExists("Creation\ Date"))
{
TDateTime today = TDateTime::CurrentDateTime();
reg->WriteDateTime("Creation\ Date", today);
}
if(!reg->KeyExists("Licenced\ To"))
{
reg->WriteString("Licenced\ To", "MySurname\ MyFirstName");
}
if(!reg->KeyExists("App\ Location"))
{
reg->WriteExpandString("App\ Location",
"%PROGRAMFILES%\\MyCompanyName\\MyApplication\\");
}
if(!reg->KeyExists("Projects\ Location"))
{
reg->WriteExpandString("Projects\ Location",
"%USERPROFILE%\\MyApplication\\Projects\\");
}
reg->CloseKey();
reg->Free();
}
//---------------------------------------------------------------------------
void __fastcall TForm2::DelFromRegBtnClick(TObject *Sender)
{
//Deleting the example registry entries
TRegistry* reg = new TRegistry(KEY_WRITE);
reg->RootKey = HKEY_LOCAL_MACHINE;
reg->DeleteKey("Software\\MyCompanyName\\MyApplication");
reg->DeleteKey("Software\\MyCompanyName");
reg->CloseKey();
reg->Free();
}
//---------------------------------------------------------------------------
Uses
- System.Win.Registry.TRegistry ( fr | de | ja )
- System.Win.Registry.TRegistry.Create ( fr | de | ja )
- System.Win.Registry.TRegistry.KeyExists ( fr | de | ja )
- System.Win.Registry.TRegistry.OpenKey ( fr | de | ja )
- System.Win.Registry.TRegistry.WriteDateTime ( fr | de | ja )
- System.Win.Registry.TRegistry.WriteString ( fr | de | ja )
- System.Win.Registry.TRegistry.WriteExpandString ( fr | de | ja )
- System.Win.Registry.TRegistry.CloseKey ( fr | de | ja )
- System.Win.Registry.TRegistry.DeleteKey ( fr | de | ja )
- System.Win.Registry.TRegistry.RootKey ( fr | de | ja )
- System.Win.Registry.TRegistry.Access ( fr | de | ja )