안녕하세요.
C++빌더에서 레지스트리에다 저장하고 읽어들일라고 하는데,...
자꾸 에러 메세지가 나오더군요.
아래는 제가 짠 코드입니다.
코드가 이상있으면 고쳐주셨으면 합니다.
꼭 좀 부탁드립니다.
void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action)
{
Registry->WriteInteger("Left", Left);
Registry->WriteInteger("Top", Top);
Registry->WriteInteger("Height", Height);
Registry->WriteInteger("Width", Width);
Registry->WriteString("Color",RichEdit1->Color);
Registry->WriteString("ColorFont", RichEdit1->Font->Color);
Registry->WriteString("WindowState", WindowState);
Registry->Free();
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormShow(TObject *Sender)
{
int iLeft, iTop, iHeight, iWidth;
String iColor, iColorFont, iWinState;
Registry = new TRegistry;
Registry->RootKey = HKEY_LOCAL_MACHINE;
Registry->OpenKey("SOFTWARE\\MySoft", TRUE);
try
{
iLeft = Registry->ReadInteger("Left");
iTop = Registry->ReadInteger("Top");
iHeight = Registry->ReadInteger("Height");
iWidth = Registry->ReadInteger("Width");
iColor = Registry->ReadString("Color");
iColorFont = Registry->ReadString("ColorFont");
iWinState = Registry->ReadString("WindowState");
switch(iWinState)
{
case wsMinimized : WindowState = wsMaximized; break;
case wsNormal : WindowState = wsNormal;
Left = iLeft;
Top = iTop;
Height = iHeight - 5;
Width = iWidth - 5;
break;
case wsMaximized : WindowState = wsMaximized; break;
}
RichEdit1->Color = iColor;
RichEdit1->Font->Color = iColorFont;
}
catch (...)
{
}
}
//---------------------------------------------------------------------------
|