Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2003.02.24;
Скачать: [xml.tar.bz2];

Вниз

Реестр блин   Найти похожие ветки 

 
dkDimon   (2003-01-07 23:48) [0]

Мастера, люди и все-все-все. Такая вот трабла. Что-то никак никак не могу впереть, как работать с реестром через чистый WinAPI. Понимаю, конечно, что в форуме уже где-то про это писали, только что-то не могу найти. Поделитесь кто-нибудь примерчиком или докой, ссылочкой или чем-нибудь...


 
Diamond Cat   (2003-01-07 23:52) [1]

ну через
RegCloseKey
RegConnectRegistry
RegCreateKey
RegCreateKeyEx
RegDeleteKey
RegDeleteValue
RegEnumKey
RegEnumKeyEx
RegEnumValue
RegFlushKey
RegGetKeySecurity
RegLoadKey
RegNotifyChangeKeyValue
RegOpenKey
RegOpenKeyEx
RegQueryInfoKey
RegQueryMultipleValues
RegQueryValue
RegQueryValueEx
RegReplaceKey
RegRestoreKey
RegSaveKey
RegSetKeySecurity
RegSetValue
RegSetValueEx
RegUnLoadKey
подробнее в хелпе


 
dkDimon   (2003-01-08 00:48) [2]

...ну это я и сам понимаю... и даже пытался чего-то делать... тока ни хера не получается. Что ж, уважаемый Diamond Cat, думаете я совсем что ли тупой, чтобы не догадаться какими ф-иями пользоваться? :(


 
Evgeny   (2003-01-08 05:18) [3]

К примеру так:

{----------------------------------------------------------}

function ITOC(I : Integer) : PChar;
var
St : array[Byte] of Char;
begin
Str(I, St);
Result := St;
end;

{----------------------------------------------------------}

function ReadString(Ident : PChar; Default : String) : String;
var
St : String;
begin
Result := "";
if (RegQueryValueEx(HK, Ident, NIL, @dwType, NIL, @dwKeySize) = ERROR_SUCCESS) and
((dwType = REG_SZ) or (dwType = REG_EXPAND_SZ)) then
begin
SetLength(St, dwKeySize - 1);
if RegQueryValueEx(HK, Ident, NIL, NIl, @St[1], @dwKeySize) = ERROR_SUCCESS then
Result := St
else
Result := Default;
end
else
Result := Default;
end;

{----------------------------------------------------------}

function ReadInteger(Ident : PChar; Default : Integer) : Integer;
var
St : String;

function StrToIntDef(const S: string; Default: Integer): Integer;
var
E: Integer;
begin
Val(S, Result, E);
if E <> 0 then Result := Default;
end;

begin
St := ReadString(Ident, "");
Result := StrToIntDef(St, Default);
end;

{----------------------------------------------------------}

procedure WriteString(Ident : PChar; Value : String);
begin
RegSetValueEx(HK, Ident, 0, REG_SZ, PChar(Value), Length(Value) + 1);
end;

{----------------------------------------------------------}

procedure WriteInteger(Ident : PChar; Value : Integer);
begin
RegSetValueEx(HK, Ident, 0, REG_SZ, ITOC(Value), Length(ITOC(Value)) + 1);
end;



 
BoredOfBytes   (2003-01-11 01:43) [4]

Ты лучше в инете поищи библиотеку minireg.pas, там все предельно просто! Токо нет некоторых функций: получения списка ключей, параметров и т.п. Но основные функции присутствуют!


 
TButton   (2003-01-11 02:12) [5]


var
reg:TRegIniFile;
begin
...
reg:=TRegIniFile.Create("SOFTWARE\my key"); //opening registry at HKEY_CURRENT_USER\SOFTWARE\my key
s:=reg.ReadString("my subKey","some string","");
reg.WriteString("my subKet","another string","xxxxxxxxxxx");
...
reg.Free;
end;


 
dkDimon   (2003-01-12 00:14) [6]

Да я уж сам разобрался. Всем спасибо



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2003.02.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
3-75822
zks
2003-02-06 12:52
2003.02.24
SQL выборка


4-76226
mbIkola
2003-01-10 15:08
2003.02.24
Как нажать программно клавишу ALT


3-75759
zx1
2003-02-05 17:12
2003.02.24
Программирование БД


4-76215
Yuray76
2003-01-10 10:27
2003.02.24
Label типа delphi@mastak.ru


4-76217
Владимир
2003-01-07 22:10
2003.02.24
Как узнать число процессоров на машине?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский