Esempio n. 1
0
            static LibLoader()
            {
                switch (Environment.OSVersion.Platform)
                {
                case PlatformID.Win32S:
                case PlatformID.Win32Windows:
                case PlatformID.Win32NT:
                case PlatformID.WinCE:
                    IsWindows = true;
                    break;

                case PlatformID.Unix:
                    try
                    {
                        var num = Marshal.AllocHGlobal(8192);
                        if (uname(num) == 0 && Marshal.PtrToStringAnsi(num) == "Darwin")
                        {
                            IsOSX = true;
                        }

                        Marshal.FreeHGlobal(num);
                        break;
                    }
                    catch
                    {
                        break;
                    }

                case PlatformID.MacOSX:
                    IsOSX = true;
                    break;

                default:
                    throw new ArgumentOutOfRangeException();
                }

                Logger = LoggerProvider.LoggerFor(typeof(ACBrSafeHandle));
            }