⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 inbox.cs

📁 老外Logix Mobile mCoreLib短信控件源码 通过串口或者手机数据线进行连接,可对手机进行 读写操作.
💻 CS
📖 第 1 页 / 共 2 页
字号:
                    this.a.av();
                    flag = false;
                    if (this.a.co.Count > 0)
                    {
                        flag = true;
                    }
                }
                catch (Exception exception1)
                {
                    ProjectData.SetProjectError(exception1);
                    Exception exception = exception1;
                    this.a.a.b("[Inbox:HasMessages:1] " + exception.Message);
                    ProjectData.ClearProjectError();
                }
                this.a();
                return flag;
            }
        }

        public bool IsEmpty
        {
            get
            {
                bool flag;
                try
                {
                    this.a.av();
                    flag = false;
                    if (this.a.co.Count <= 0)
                    {
                        flag = true;
                    }
                }
                catch (Exception exception1)
                {
                    ProjectData.SetProjectError(exception1);
                    Exception exception = exception1;
                    this.a.a.b("[Inbox:IsEmpty:1] " + exception.Message);
                    ProjectData.ClearProjectError();
                }
                this.a();
                return flag;
            }
        }

        public bool mCore.IInbox.Concatenate
        {
            get
            {
                this.a.av();
                return this.a.bp;
            }
            set
            {
                this.a.av();
                this.a.bp = value;
            }
        }

        public int mCore.IInbox.Count
        {
            get
            {
                int count;
                try
                {
                    this.a.av();
                    count = this.a.co.Count;
                }
                catch (Exception exception1)
                {
                    ProjectData.SetProjectError(exception1);
                    Exception exception = exception1;
                    this.a.a.b("[Inbox:Count:1] " + exception.Message);
                    ProjectData.ClearProjectError();
                }
                this.a();
                return count;
            }
        }

        public bool mCore.IInbox.HasMessages
        {
            get
            {
                bool flag;
                try
                {
                    this.a.av();
                    flag = false;
                    if (this.a.co.Count > 0)
                    {
                        flag = true;
                    }
                }
                catch (Exception exception1)
                {
                    ProjectData.SetProjectError(exception1);
                    Exception exception = exception1;
                    this.a.a.b("[Inbox:HasMessages:1] " + exception.Message);
                    ProjectData.ClearProjectError();
                }
                this.a();
                return flag;
            }
        }

        public bool mCore.IInbox.IsEmpty
        {
            get
            {
                bool flag;
                try
                {
                    this.a.av();
                    flag = false;
                    if (this.a.co.Count <= 0)
                    {
                        flag = true;
                    }
                }
                catch (Exception exception1)
                {
                    ProjectData.SetProjectError(exception1);
                    Exception exception = exception1;
                    this.a.a.b("[Inbox:IsEmpty:1] " + exception.Message);
                    ProjectData.ClearProjectError();
                }
                this.a();
                return flag;
            }
        }

        private class a
        {
            private Inbox a;
            private f b;
            private MessageType c;
            private bool d;
            internal bool e;

            internal a(ref Inbox A_0, ref f A_1, MessageType A_2, bool A_3)
            {
                this.a = A_0;
                this.b = A_1;
                this.c = A_2;
                this.d = A_3;
            }

            internal void a()
            {
                if (Monitor.TryEnter(this.a, this.b.@as))
                {
                    try
                    {
                        if (Monitor.TryEnter(this.b, this.b.@as))
                        {
                            bool flag = false;
                            int ar = this.b.ar;
                            this.b.ar = ar * 3;
                            try
                            {
                                this.b.av();
                                if ((this.c >= MessageType.ReceivedUnreadMessages) & (this.c <= MessageType.ReceivedAllMessages))
                                {
                                    flag = this.b.a((int) this.c, this.d);
                                    if (!flag)
                                    {
                                        if (this.b.bu == 0L)
                                        {
                                            this.b.bu = 0x1392L;
                                            this.b.bt = "Read message error";
                                        }
                                        this.b.a(this.b.bu, this.b.bt, "SMSREAD");
                                    }
                                }
                                else
                                {
                                    flag = false;
                                    this.b.a(0x1393L, "Invalid read message type option", "SMSREAD");
                                }
                                this.e = flag;
                            }
                            catch (Exception exception1)
                            {
                                ProjectData.SetProjectError(exception1);
                                Exception exception = exception1;
                                this.b.a.b("[Inbox:Refresh_Class:Refresh:1] " + exception.Message);
                                ProjectData.ClearProjectError();
                            }
                            finally
                            {
                                this.b.ar = ar;
                                Monitor.Exit(this.b);
                            }
                        }
                        else
                        {
                            this.b.a(0x2333L, "Thread monitor enter attempt timeout [Inbox:Refresh_Class:Refresh:A]", "SMSREAD");
                            this.e = false;
                        }
                    }
                    finally
                    {
                        Monitor.Exit(this.a);
                    }
                }
                else
                {
                    this.b.a(0x2333L, "Thread monitor enter attempt timeout [Inbox:Refresh_Class:Refresh:B]", "SMSREAD");
                    this.e = false;
                }
            }
        }

        [Obsolete("mCore.Inbox.EnumMessageType enumerator was obsoleted in version 1.1. Use mCore.MessageType instead", true)]
        public enum EnumMessageType
        {
            ReceivedUnreadMessages,
            ReceivedReadMessages,
            ReceivedAllMessages
        }

        public class InboxEnumerator : IEnumerator
        {
            private Inbox a;

            public InboxEnumerator(Inbox Ibox)
            {
                this.a = Ibox;
                this.Reset();
            }

            public bool MoveNext()
            {
                if (this.a.b == (this.a.Count - 1))
                {
                    return false;
                }
                Inbox a = this.a;
                a.b++;
                return true;
            }

            public void Reset()
            {
                this.a.b = -1;
            }

            public object Current
            {
                get
                {
                    return this.a.Message(this.a.b + 1);
                }
            }

            public object System.Collections.IEnumerator.Current
            {
                get
                {
                    return this.a.Message(this.a.b + 1);
                }
            }
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -