Wiki

JulyRegApi - класс для удобной работы с реестром Windows

Версия: 1.2
Сайт: ссылка...
Скачать: JulyRegApi.zip
Лицензия: GPL

JulyRegApi  - класс для удобного редактирования любых веток реестра  Windows  на  Qt написанный на WinApi JulyRegApi - класс на Qt для удобной работы с реестром Windows Примечания: Все функции являются статическими и можно использовать их не создавая переменных класса. В функцию regWrite можно передавать значения в типах: QByteArray, QString, Int. Тип HKEY_LIST может принимать такие значения в соответствии с веткой реестра: HK_CLASSES_ROOT HK_CURRENT_USER HK_LOCAL_MACHINE HK_USERS HK_CURRENT_CONFIGФункции для получения и записи значений реестра:

static QString regReadString(HKEY_LIST,QString path, QString val); 
//Фукнция для чтения REG_SZ текстовой строки возвращающая QString 
static QByteArray regReadArray(HKEY_LIST,QString path, QString val); 
//Фукнция для чтения REG_BINARY массивов возвращающая QByteArray 
static int regReadInt(HKEY_LIST,QString path, QString val); 
//Фукнция для чтения REG_DWORD возвращающая Int  
static bool regWrite(HKEY_LIST,QString path, QString val, QString data, bool createSubKeys=true); 
//Функция для записи значения из QString в REG_SZ, при флаге createSubKeys=true создаются все ветки если конечного ключа не существует 
static bool regWrite(HKEY_LIST,QString path, QString val, QByteArray data, bool createSubKeys=true); 
//Функция для записи значения из QByteArray в REG_BINARY, флаг createSubKeys делает то что уже написано выше 
static bool regWrite(HKEY_LIST,QString path, QString val, int data, bool createSubKeys=true); 
//Функция для записи значения из int в REG_DWORD, флаг createSubKeys делает то что уже написано выше  
static bool regRemove(HKEY_LIST,QString path); 
//Удаление ключа path со всеми значениями. Удаление не произойдет если существуют подветки 
static bool regRemove(HKEY_LIST,QString path, QString val); 
//Удаление значения val из ветки path если удалось удалить ветку то обе функции возвратят true если нет то false
Системные функции:
static QString shellUserName(); //Возвращает Имя текущего пользователя 
static QString shellComputerName(); //Возвращает Имя компьютера 
static QString shellUserTemp(); //Возвращает путь временной папки пользователя 
static QString shellSystemTemp(); //Возвращает системный путь временной папки 
static QString shellWindowsDir(); //Возвращает путь к папке Windows  
static void shellSetTempDir(QString); //Изменяет путь временной папки пользователя и системы на указанную 
Пример записи в реестр:JulyRegApi::regWrite(JulyRegApi::HK_LOCAL_MACHINE,"SOFTWARE\\GigaSOFT\\SomeSoft","SomeKeyName",QString("Text writed there"));в результате будет записано текст "Text writed there" в ключ "SomeKeyName" который находиться в ветке "HKEY_LOCAL_MACHINE\SOFTWARE\GigaSOFT\SomeSoft" такой же формат записи в реестр для этой функции типов QByteArray и Int. Пример чтения из реестра:QString myValue; myValue=JulyRegApi::regReadString(JulyRegApi::HK_LOCAL_MACHINE,"SOFTWARE\\GigaSOFT\\SomeSoft", "SomeKeyName"); в результате myValue примет значение ключа "SomeKeyName" из ветки "SOFTWARE\\GigaSOFT\\SomeSoft" если перед этим выполнить запись из примера выше то myValue=="Text writed there"; Формат параметров для функций regReadArray и regReadInt такой же как и в этом примере regReadString но возвращают они другой тип QByteArray и Int соответственно.