コード例 #1
0
        private void mnOpenJam_Click(object sender, System.EventArgs e)
        {
            OpenFileDialog fd = new OpenFileDialog();

            fd.Title    = "请选择GECHO信区设置文件";
            fd.FileName = "AREAFILE.GE";
            fd.Filter   = "GECHO信区设置文件AREAFILE.GE|AREAFILE.GE";
            if (DialogResult.OK != fd.ShowDialog())
            {
                return;
            }
            // 打开信包
            MailArea[] Areas = MailArea.LoadAreasFromFile(fd.FileName);
            if (Areas == null || Areas.Length == 0)
            {
                MessageBox.Show("打开信区配置文件出错!或是没有配置任何信区.");
                return;
            }

            this.GEchoFile = fd.FileName;

            // 试着打开第一个文件
            if (!File.Exists(Areas[0].sFullPathName))
            {
                MessageBox.Show("没有找到信区配置里指定的文件,可能是因为计算机环境的改变引起的,您可以手工指定信包文件.");

                fd.Title    = "请选择指定的信包文件";
                fd.FileName = Areas[0].sFileName + ".JHR";
                fd.Filter   = "信包文件" + Areas[0].sFileName + ".JHR|" + Areas[0].sFileName + ".JHR";
                if (DialogResult.OK != fd.ShowDialog())
                {
                    MessageBox.Show("由于没有打到信包文件,信区无法打开");
                    return;
                }
                // 找出信包文件的路径
                string sPath = fd.FileName.Substring(0, fd.FileName.LastIndexOfAny(new char[] { '\\', ':' }) + 1);
                this.JamPath = sPath;
                this.OpenJam();
            }

            return;
        }
コード例 #2
0
        private void OpenJam()
        {
            this.Cursor = Cursors.WaitCursor;
            MailArea[] Areas = MailArea.LoadAreasFromFile(this.GEchoFile);
            if (Areas == null)
            {
                MessageBox.Show("打不开你指出的GECHO设置文件! 请您再指定一下");
                this.mnOpenJam_Click(null, null);
                return;
            }

            this.lvArea.Items.Clear();
            for (int i = 0; i < Areas.Length; i++)
            {
                Areas[i].ChangePath(this.JamPath);
                Areas[i].LoadAreaInfo();
                ListViewItem lvi = this.lvArea.Items.Add(Areas[i].sAreaname);
                lvi.SubItems.Add(Areas[i].sDes);
                lvi.SubItems.Add(Areas[i].lMailCount.ToString("#,0"));
                lvi.Tag = Areas[i];
            }
            this.Cursor = Cursors.Default;
        }