[Delphi+Api+Rejestr] PILNE

0

Mam poważny problem z rejestrem.
Mianowicie jakoś nie idzie mi urzywanie funkcji odpowiedzalnej za oczytywanie wartości z rejestru (RegQueryValueEx)

Może ktoś ma jakiś przykład czy co.

Czekam na (Pilną) pomoc. [???] --I LOVE PrOgRaMz

0

sorry ejzeli nie na temat ;p
nie wiem co to te exvalueex czy jakos tak:
nie lepiej zrobic to za pomaca readstring itp.?????
uses registry,sysutils;
var
r : tregistry;
begin
r := tregistry.create;
r.rootkey = belelelwsds;
r.openkey(jfejfosjfes,false);
r.readstring(chyba to ten tego ta procedura :PPP );
r.free;
end.

jak źle to sorry :)

[cisza]
lolek

0

Dzięki za odzew ale.... No właśnie...
Tu chodzi o API
Jak dodam do usesów Registry i SysUtils to do exeka dodam ok 200kB :| zbędnego kodu. Chodzi mi o to jak użyć funkcji RegQuetyValueEx. Wprawdzie w Helpie jest opis ale i tak nie działa. --I LOVE PrOgRaMz

0

Tu masz przykładową procedurkę:

procedure TForm1.Button1Click(Sender: TObject);
var bufor:array[0..100] of Char;
    klucz:HKEY;
    rozmiar:DWORD;
begin
 rozmiar := SizeOf(bufor);
 RegOpenKeyEx(HKEY_CLASSES_ROOT, '.exe', 0, KEY_ALL_ACCESS, klucz);
 RegQueryValueEx(klucz, '', NIL, NIL, @bufor, @rozmiar);
 RegCloseKey(klucz);
 Button1.Caption := bufor;
end;

Pisząc ten bardzo mały fragment kodu przekonałem się, jak bardzo "głupie" jest Delphi w porównaniu do C++Buildera. Po drodze wyskakiwało mi tyle żenujących błędów, że aż mi się śmiać chciało. Szczególnie chodzi o przymus ręcznego rzutowania praktycznie tych samych typów danych. Ach... szkoda gadać.

--
"Imagination is more important than knowledge." - A. Einstein

0

Tu masz przykładową procedurkę:

procedure TForm1.Button1Click(Sender: TObject);
var bufor:array[0..100] of Char;
klucz:HKEY;
rozmiar:DWORD;
begin
rozmiar := SizeOf(bufor);
RegOpenKeyEx(HKEY_CLASSES_ROOT, '.exe', 0, KEY_ALL_ACCESS, klucz);
RegQueryValueEx(klucz, '', NIL, NIL, @bufor, @rozmiar);
RegCloseKey(klucz);
Button1.Caption := bufor;
end;

Pisząc ten bardzo mały fragment kodu przekonałem się, jak bardzo "głupie" jest Delphi w porównaniu do C++Buildera. Po drodze wyskakiwało mi tyle żenujących błędów, że aż mi się śmiać chciało. Szczególnie chodzi o przymus ręcznego rzutowania praktycznie tych samych typów danych. Ach... szkoda gadać.

Jak to się mówi: Pascal jeste jęzkiem "silnie typowanym" :) To czasem przeszkadza, ale umożliwia też unikanie wielu błędów.
A tak przy okazji, to gdzie tutaj miałeś problemy z typami?

--
Jest jeszcze jeden błąd ... :)

Apel: Piszcie w tematach o jaki język programowania chodzi np. : [Delphi], [C++], itp.

0

Jak to się mówi: Pascal jeste jęzkiem "silnie typowanym" :) To czasem przeszkadza, ale umożliwia też unikanie wielu błędów.
A tak przy okazji, to gdzie tutaj miałeś problemy z typami?

bufor:array[0..100] of Char; był wcześniej stringiem i coś się kompilator burzył. A tak w ogóle to fajnie, że pytasz: powiedz mi, czym się różni BYTE od CHAR, bo Delphi widzi różnicę. W C++ jeśli dobrze pamiętam, to jest tak: #define BYTE char, a we wspaniałym Assemblerze to są w ogóle 3 typy zmiennych (całkowitych): byte, word, dword i nie ma żadnych problemów [cygaro]

--
"Imagination is more important than knowledge." - A. Einstein

0

bufor:array[0..100] of Char; był wcześniej stringiem i coś się kompilator burzył.

Nie dziwię się. Znaki w stringu zaczynają się od 1 i nie ma końca ciągu w przypadku #0.

A tak w ogóle to fajnie, że pytasz: powiedz mi, czym się różni BYTE od CHAR, bo Delphi widzi różnicę.

Delphi rozróżnia liczby od znaków. Dlatego Byte Char i Word WideChar (znak w kodzie Unicode). Choć w tym względzie, to wolę podejście C++ (mniej pseudo konwersji). Natomiast mam pewność, że mi zasygnalizuje, kiedy przez przypadek podstawię znak pod liczbę.

a we wspaniałym Assemblerze to są w ogóle 3 typy zmiennych (całkowitych): byte, word, dword i nie ma żadnych problemów

ASM Rulez :)
Zbyt mało typów (a raczej możliwości definowania własnych) to raczej nie dobrze.

Gdybym uważał, że Delphi czy C++ są takie idealne to bym nie pisał postu na temat idealnego języka.

--
Jest jeszcze jeden błąd ... :)

Apel: Piszcie w tematach o jaki język programowania chodzi np. : [Delphi], [C++], itp.

1 użytkowników online, w tym zalogowanych: 0, gości: 1