调用本机代码的单一异常

时间:2017-10-17 06:37:28

标签: c# mono

我们用mono。

编写多平台程序

现在我想在mac上使用一些本机代码。

我找到了NSLocal课程并希望使用:

string test = NSLocale.CurrentLocale.CountryCode;

但是当程序遇到这段代码时我遇到异常:

  

消息:发生类型System.ArgumentNullException的异常。   消息是:值不能为空。参数名称:obj

堆栈跟踪:

  

at(包装器托管到原生)   System.Object的:__ icall_wrapper_mono_monitor_enter_v4_internal   (object,intptr)在ObjCRuntime.Runtime.TryGetNSObject(System.IntPtr)   ptr,System.Boolean evenInFinalizerQueue)[0x00009] in   < 1a80b695c02b4e7dbda63e331ae0ac27>:0

其他代码如:

    string[] test2 = NSLocale.ISOCountryCodes;

也会遇到异常:

  

消息:System.TypeInitializationException类型的异常   发生。消息是:' Foundation.NSString'的类型初始值设定项。   抛出异常。

堆栈跟踪:

  

在Foundation.NSArray.StringArrayFromHandle(System.IntPtr句柄)   [0x00047]在< 1a80b695c02b4e7dbda63e331ae0ac27>:0 at   Foundation.NSLocale.get_ISOCountryCodes()[0x00010] in   < 1a80b695c02b4e7dbda63e331ae0ac27>:0

以及我做错了什么?当我调用这个本机代码时?

由于

0 个答案:

没有答案