我有個位的C#代碼看起來像這樣:GetWindowRect()沒有返回一個矩形
[DllImport("user32.dll")]
private static extern bool GetWindowRect(IntPtr hWnd, ref Rect rect);
Rect rect = Rect.Zero;
NativeMethods.GetWindowRect(hWnd, ref rect);
然而,當我運行該代碼時,rect
變量仍然等於Rect.Zero
(頂/底/左/右都是零),即使GetWindowRect()
返回成功。這個函數調用序列在C++中執行時效果很好,但在C/P/Invoke中調用時不會。
我確定我正在打電話給GetWindowRect()
;那不是問題。問題是GetWindowRect()
總是返回RECT
的{0,0,0,0}
,無論我如何更改函數調用或我如何定義P/Invoke。
http://www.pinvoke.net/default.aspx/user32/getwindowrect.html –
這可能有所幫助:http://stackoverflow.com/a/6415255/301857 –
您能否顯示'Rect'的定義? –