我正在使用Mono / Monomac框架与本机Mac库进行一些Interop。一般来说,它运作良好,但现在我需要找到屏幕分辨率。 Monomac已经为NSScreen定义了必要的进口产品。
不幸的是,NSScreen(Screens,MainScreen和DeepestScreen)上的所有属性都返回null。我倾向于相信他们从来没有工作,但我似乎在MonoDevelop的源代码中引用它们,所以很可能我忽略了一些东西。完整性的代码示例(异常抛出):
NSScreen[] shouldNotBeNull = NSScreen.Screens;
if (shouldNotBeNull == null)
throw new Exception("That was unexpected");
我也尝试了IntPtr scrRef = objc_getClass("NSScreen")
,在这种情况下,scrRef
也最终为null(嗯,IntPtr.Zero)。巧合还是线索?
编辑:OSX 10.7.4上的单声道2.10.9
答案 0 :(得分:0)
结果证明NSApplication.Init()未在此路径上被调用。