ksm |
Отправлено: 29.11.2003, 17:18 |
|
Не зарегистрирован
|
Как сделать запись в реестр пути к файлу и как ее потом считать из него. И как узнать что такой записи еще в реестре нет. |
|
** pasha |
Отправлено: 30.11.2003, 23:26 |
|
Не зарегистрирован
|
Пример из программы:
CODE |
bool isNotReg;
const char *RegKey = "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer";
Reg->RootKey = HKEY_CURRENT_USER;
Reg->OpenKey(RegKey, false);
if(Reg->ValueExists("NoTrayContextMenu")){
int sr = Reg->ReadInteger("NoTrayContextMenu");
if(sr != 1) isNotReg = true;
}else isNotReg = true;
if(isNotReg){
Reg->CloseKey();
Reg->RootKey = HKEY_CURRENT_USER;
Reg->OpenKey(RegKey, true);
Reg->WriteInteger("NoTrayContextMenu",1);
Reg->CloseKey();
}
delete Reg;
if(isNotReg) ...
|
и так далее ...
|
|
** pasha |
Отправлено: 30.11.2003, 23:46 |
|
Не зарегистрирован
|
Ну это написал про тип int
И конечно сначала надо
CODE |
TRegistry* Reg = new TRegistry;
Reg->RootKey = HKEY_CURRENT_USER;
|
А строку записать/прочитать точно-также:
ReadString, WriteString
CODE |
#include <Registry.hpp>
const char *RegKey = "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer";
void __fastcall TForm1::Button3Click(TObject *Sender)
{
TRegistry* Reg = new TRegistry;
Reg->RootKey = HKEY_CURRENT_USER;
Reg->OpenKey(RegKey, false);
Reg->WriteString("MyProgramWay",ExtractFilePath(Application->ExeName));
Reg->CloseKey();
delete Reg;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
{
TRegistry* Reg = new TRegistry;
Reg->RootKey = HKEY_CURRENT_USER;
Reg->OpenKey(RegKey, false);
AnsiString sf = Reg->ReadString("MyProgramWay");
Reg->CloseKey();
delete Reg;
ShowMessage(sf);
}
| |
|