Markus schrieb:
> OK, danke. Hab die beiden Strukturen WINDOWINFO
> (http://www.pinvoke.net/default.aspx/Structures/WINDOWINFO.html) und
> RECT (http://www.pinvoke.net/default.aspx/Structures/RECT.html)
> rüberkopiert und bekomme als Fehlermeldung "Inconsistent accessibility:
> parameter type 'out WindowsFormsApplication1.Form1.WINDOWINFO' is less
> accessible than method
> 'WindowsFormsApplication1.Form1.GetWindowInfo(System.IntPtr, out
> WindowsFormsApplication1.Form1.WINDOWINFO)'
GetWindowInfo erwartet im "Original" einen Zeiger auf eine Struktur vom
Typ WINDOWINFO. D.h. in C# wäre das richtige Attribut ref und nicht out
(so wie es auch auf pinvoke.net gemacht wird).
out wird verwendet, um bspw. mehrere Werte zurückzugeben wobei die
aufgerufene Funktion/Methode dann einen Wert zuweisen muss. Anders
gesagt: Der Aufrufer darf auch nicht initialisierte (Zeiger auf)
Variablen übergeben.
ref dagegen erwartet initialisierte Variablen.
Die Fehlermeldung kommt sehr wahrscheinlich daher, dass WINDOWINFO jetzt
irgendwo anders definiert wird, aber nicht public gemacht wurde. D.h.
die Struktur ist einfach nicht sichtbar.
>
> Sehr frustrierend alles. Ich muss wohl leider wieder MCs only
> programmieren, C# ist irgendwie zu hoch für mich :-(