Problem z rejestracją klasy.

0

Witajcie, mam problem z rejestracją nazwy klasy z systemie. wszystko robię tak jak jest opisane tu: Wstęp do programowania w WinAPI lecz za choinkę nie mogę jej zarejestrować. Gdy próbuję skompilować program dostaję błąd:

Variable required
Incompatible types: 'TPersistentClass' and 'tagWNDCLASSA'

i szczerze mówiąc nic z tego nie rozumiem. Coś robię nie tak? Korzystam z Delphi 7

0

Żeby jeszcze ktoś wiedział o który kod z tej strony ci chodzi i co Ty robisz nie widząc TWOJEGO kodu trudno powiedzieć co robisz nie tak :/

0

O kod rejestracji klasy.

var
  Wnd: TWndClass;  // klasa okna
 
begin
  with Wnd do
  begin
    lpfnWndProc := @WndProc; // funkcja okienkowa
    hInstance := hInstance; // uchwyt do zasobów
    lpszClassName := 'My1stApp'; // klasa
    hbrBackground := COLOR_WINDOW; // kolor tła
  end;
 
  RegisterClass(Wnd); // zarejestruj nowa klase
 
end.
2

Windows.RegisterClass(Wnd);

0

No i pięknie działa.
Dziękuję bardzo za szybką pomoc. Pozdrawiam :)

Mam jeszcze jedno małe pytanko.
Odpalam sobie drugi programik za pomocą ShellExecute i chciałbym przekazać do niego parametr zawierający spację. Próbowałem zamienić odstęp na znak ASCII #32 lecz drugi program nadal wykrywa to jako spację i traktuje dalszą część parametru jako następny parametr. Powinienem zawrzeć ten parametr w cudzysłów czy dokonuje się tego innym sposobem?

0

Wstaw - po prostu zamiast spacji.

0

Działa świetnie zawarcie przekazywanego parametru w "" ale twój sposób też nie jest najgorszy. Dziękuję wszystkim za udzielanie się w temacie i gorące pozdrowienia dla użytkownika _13th_Dragon :)

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