使用x11-api和Mono / C#了解活动窗口

时间:2014-10-05 15:09:07

标签: c# ubuntu mono x11

我试图在Ubuntu上使用X11-api和Mono和C#。 当我试图了解活动窗口时,我有一个SIGSEGV。

导入:

[DllImport("libX11")]
public static extern void XGetInputFocus(IntPtr display, IntPtr focus_return, int revert_to_return);

[DllImport("libX11")]
public static extern IntPtr XOpenDisplay(string display_name);

使用:

IntPtr rootWind = XOpenDisplay(null);           
IntPtr wind;
int ret = 0;

XGetInputFocus(rootWind, wind, ret); //SIGSEGV there

我尝试过使用指针,引用等等,但有一个结果。 其他一些api-functions正常工作。 怎么了?

1 个答案:

答案 0 :(得分:0)

尝试一下:

[DllImport("libX11")]
public static extern void XGetInputFocus(IntPtr display, ref IntPtr focus_return, ref int revert_to_return);

IntPtr rootWind = XOpenDisplay(null);           
IntPtr wind;
int ret = 0;
XGetInputFocus(rootWind, ref wind, ref ret);