Autor | Thema: Zeiger auf Strukturen | | Datum:25.07.02 07:06 
(mail@stschnell.de) | |
Hallo Community,
stehe gerade vor einem Problem, möchte einer API-Funktion einen Zeiger auf eine Struktur übergeben, dies funktioniert jedoch nicht, das Programm steigt immer mit der Fehlermeldung, das die Variable nicht deklariert sei, aus. Wer kann mir einen Tip geben?
$H Windows.ph
Declare Rect#, hWin&
Struct WinPos = Left&, Top&, Right&, Bottom&
Dim Rect#, WinPos
hWin& = @Create("Window", %HWnd, "Test", 640, 480, 320, 200)
~GetWindowRect(hWin&, @Addr(Rect#))
Print Rect#.Left&
Dispose Rect#
End
Der Fehler tritt beim Print auf.
Das ist kein besonders sinnvolles Programm, sondern soll nur mein Problem auf einfache Weise beschreiben ;-)
Danke und Tschüss
Stefan
|
| | Datum: 25.07.02 09:24 
(rgh-soft@t-online.de) | |
Hallo Stefan,
bei Strukturvariablen brauchst Du keine @Addr-Funktion, da das "Ergebnis" einer Strukturvariablen ihre Adresse ist:
Wert& = SVar#
Diese Zeile weist Wert& die Adresse der Struktur zu. (Siehe auch Handbuch zum Thema Strukturen.) Wenn Du also das @Addr wegläßt, sollte es gehen!
Gruß
Roland
|
|
|