SystemManage.cs
上传用户:shjujing
上传日期:2022-07-28
资源大小:11244k
文件大小:27k
源码类别:

Email客户端

开发平台:

Visual C++

  1. using System;
  2. using System.Drawing;
  3. using System.Collections;
  4. using System.ComponentModel;
  5. using System.Windows.Forms;
  6. using System.Data;
  7. using System.Drawing .Printing ;
  8. using System.Reflection ;
  9. using System.Runtime .InteropServices ;
  10. using System.Diagnostics ;
  11. using System.IO ;
  12. using MailManageSystem.RegisterAccount ;
  13. using MailSend;
  14. namespace MailManageSystem
  15. {
  16. /// <summary>
  17. /// Form1 的摘要说明。
  18. /// </summary>
  19. public class SystemManage : System.Windows.Forms.Form
  20. {
  21. private System.Windows.Forms.MainMenu mainMenu1;
  22. private System.Windows.Forms.MenuItem menuItem1;
  23. private System.Windows.Forms.MenuItem menuItem2;
  24. private System.Windows.Forms.MenuItem menuItem3;
  25. private System.Windows.Forms.MenuItem menuItem4;
  26. private System.Windows.Forms.MenuItem menuItem5;
  27. public System.Windows.Forms.TreeView treeView1;
  28. private System.Windows.Forms.Splitter splitter1;
  29. private System.Windows.Forms.Panel panel1;
  30. private System.Windows.Forms.Splitter splitter2;
  31. private System.Windows.Forms.RichTextBox richTextBox1;
  32. private System.Windows.Forms.ContextMenu contextMenu1;
  33. private System.Windows.Forms.MenuItem menuItem6;
  34. private System.Windows.Forms.ImageList imageList1;
  35. private System.Windows.Forms.MenuItem menuItem7;
  36. private System.Windows.Forms.MenuItem menuItem8;
  37. private System.Windows.Forms.MenuItem menuItem9;
  38. private System.Windows.Forms.MenuItem menuItem10;
  39. private System.Windows.Forms.MenuItem menuItem11;
  40. private System.Windows.Forms.MenuItem menuItem12;
  41. private System.Windows.Forms.MenuItem menuItem13;
  42. private System.Windows.Forms.MenuItem menuItem14;
  43. private System.Windows.Forms.MenuItem menuItem15;
  44. private System.Windows.Forms.MenuItem menuItem16;
  45. private System.Windows.Forms.MenuItem menuItem17;
  46. private System.Windows.Forms.MenuItem menuItem18;
  47. private System.Windows.Forms.MenuItem menuItem19;
  48. private System.ComponentModel.IContainer components;
  49. private System.Windows.Forms.Timer timer1;
  50. //用于调用发送邮件类的用户名
  51. public   static string UserName;
  52. //用于调用发送邮件类的密码
  53. public  static string PassWd;
  54. //用于调用发送邮件类发送邮件人地址
  55. public   static string MailAddress;
  56. //新建的帐户名
  57. public   static string AccountName;
  58. //用于调用发送邮件类的SMTP服务器名
  59. public  static string SmtpName;
  60. public   static int    SmtpPort=21;
  61. public   static int    letterNumber;
  62. //确定是否启动计时器的标志位
  63. internal static bool flag=false;
  64. public string htmlbody;
  65. private System.Windows.Forms.ToolBarButton toolBarRecive;
  66. private System.Windows.Forms.ToolBarButton toolBarSend;
  67. private System.Windows.Forms.ToolBarButton toolBarWrite;
  68. private System.Windows.Forms.ToolBar toolBar1;
  69. private System.Windows.Forms.PrintDialog printDialog1;
  70. private System.Windows.Forms.ToolBarButton toolBarButton1;
  71. private System.Windows.Forms.StatusBar statusBar1;
  72. private System.Windows.Forms.StatusBarPanel sbWeclome;
  73. private System.Windows.Forms.StatusBarPanel sbTime;
  74. private System.Windows.Forms.StatusBarPanel sbCpmputerName;
  75. private System.Windows.Forms.StatusBarPanel sbIp;
  76. private System.Windows.Forms.MenuItem menuItem20;
  77. private System.Windows.Forms.MenuItem menuItem21;
  78. private System.Windows.Forms.MenuItem menuItem22;
  79. private System.Windows.Forms.MenuItem menuItem23;
  80. private System.Windows.Forms.MenuItem menuItem24;
  81. private System.Windows.Forms.PrintPreviewDialog printPreviewDialog1;
  82. private System.Drawing.Printing.PrintDocument printDocument1;
  83. private System.Windows.Forms.MenuItem menuItem25;//语言编码 
  84.    
  85. //MailSend命名空间下的附加类
  86. AddExtra extra;
  87. private System.Windows.Forms.MenuItem menuItem26;
  88. private System.Windows.Forms.MenuItem menuItem27;
  89. private System.Windows.Forms.ImageList imageAccount;
  90. private System.Windows.Forms.ListView ltReceive;
  91.    
  92. //API函数的声明
  93. [DllImport ("Shell32.dll")]
  94. public static extern int ShellAbout(IntPtr hWnd ,string szApp,string szOtherStuff,IntPtr hIcon);
  95. public SystemManage()
  96. {
  97. //
  98. // Windows 窗体设计器支持所必需的
  99. //
  100. Application.EnableVisualStyles ();
  101. Application.DoEvents ();
  102. InitializeComponent();
  103. //
  104. // TODO: 在 InitializeComponent 调用后添加任何构造函数代码
  105. //
  106. }
  107. /// <summary>
  108. /// 清理所有正在使用的资源。
  109. /// </summary>
  110. protected override void Dispose( bool disposing )
  111. {
  112. if( disposing )
  113. {
  114. if (components != null) 
  115. {
  116. components.Dispose();
  117. }
  118. }
  119. base.Dispose( disposing );
  120. }
  121. #region Windows 窗体设计器生成的代码
  122. /// <summary>
  123. /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  124. /// 此方法的内容。
  125. /// </summary>
  126. private void InitializeComponent()
  127. {
  128. this.components = new System.ComponentModel.Container();
  129. System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(SystemManage));
  130. this.mainMenu1 = new System.Windows.Forms.MainMenu();
  131. this.menuItem1 = new System.Windows.Forms.MenuItem();
  132. this.menuItem7 = new System.Windows.Forms.MenuItem();
  133. this.menuItem8 = new System.Windows.Forms.MenuItem();
  134. this.menuItem9 = new System.Windows.Forms.MenuItem();
  135. this.menuItem10 = new System.Windows.Forms.MenuItem();
  136. this.menuItem11 = new System.Windows.Forms.MenuItem();
  137. this.menuItem12 = new System.Windows.Forms.MenuItem();
  138. this.menuItem13 = new System.Windows.Forms.MenuItem();
  139. this.menuItem14 = new System.Windows.Forms.MenuItem();
  140. this.menuItem15 = new System.Windows.Forms.MenuItem();
  141. this.menuItem2 = new System.Windows.Forms.MenuItem();
  142. this.menuItem20 = new System.Windows.Forms.MenuItem();
  143. this.menuItem21 = new System.Windows.Forms.MenuItem();
  144. this.menuItem22 = new System.Windows.Forms.MenuItem();
  145. this.menuItem23 = new System.Windows.Forms.MenuItem();
  146. this.menuItem24 = new System.Windows.Forms.MenuItem();
  147. this.menuItem25 = new System.Windows.Forms.MenuItem();
  148. this.menuItem3 = new System.Windows.Forms.MenuItem();
  149. this.menuItem4 = new System.Windows.Forms.MenuItem();
  150. this.menuItem5 = new System.Windows.Forms.MenuItem();
  151. this.menuItem26 = new System.Windows.Forms.MenuItem();
  152. this.menuItem27 = new System.Windows.Forms.MenuItem();
  153. this.menuItem16 = new System.Windows.Forms.MenuItem();
  154. this.menuItem17 = new System.Windows.Forms.MenuItem();
  155. this.menuItem18 = new System.Windows.Forms.MenuItem();
  156. this.menuItem19 = new System.Windows.Forms.MenuItem();
  157. this.treeView1 = new System.Windows.Forms.TreeView();
  158. this.splitter1 = new System.Windows.Forms.Splitter();
  159. this.panel1 = new System.Windows.Forms.Panel();
  160. this.statusBar1 = new System.Windows.Forms.StatusBar();
  161. this.sbWeclome = new System.Windows.Forms.StatusBarPanel();
  162. this.sbTime = new System.Windows.Forms.StatusBarPanel();
  163. this.sbCpmputerName = new System.Windows.Forms.StatusBarPanel();
  164. this.sbIp = new System.Windows.Forms.StatusBarPanel();
  165. this.richTextBox1 = new System.Windows.Forms.RichTextBox();
  166. this.splitter2 = new System.Windows.Forms.Splitter();
  167. this.ltReceive = new System.Windows.Forms.ListView();
  168. this.contextMenu1 = new System.Windows.Forms.ContextMenu();
  169. this.menuItem6 = new System.Windows.Forms.MenuItem();
  170. this.imageList1 = new System.Windows.Forms.ImageList(this.components);
  171. this.timer1 = new System.Windows.Forms.Timer(this.components);
  172. this.toolBarRecive = new System.Windows.Forms.ToolBarButton();
  173. this.toolBarSend = new System.Windows.Forms.ToolBarButton();
  174. this.toolBarWrite = new System.Windows.Forms.ToolBarButton();
  175. this.toolBar1 = new System.Windows.Forms.ToolBar();
  176. this.toolBarButton1 = new System.Windows.Forms.ToolBarButton();
  177. this.printDialog1 = new System.Windows.Forms.PrintDialog();
  178. this.printPreviewDialog1 = new System.Windows.Forms.PrintPreviewDialog();
  179. this.printDocument1 = new System.Drawing.Printing.PrintDocument();
  180. this.imageAccount = new System.Windows.Forms.ImageList(this.components);
  181. this.panel1.SuspendLayout();
  182. ((System.ComponentModel.ISupportInitialize)(this.sbWeclome)).BeginInit();
  183. ((System.ComponentModel.ISupportInitialize)(this.sbTime)).BeginInit();
  184. ((System.ComponentModel.ISupportInitialize)(this.sbCpmputerName)).BeginInit();
  185. ((System.ComponentModel.ISupportInitialize)(this.sbIp)).BeginInit();
  186. this.SuspendLayout();
  187. // 
  188. // mainMenu1
  189. // 
  190. this.mainMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
  191.   this.menuItem1,
  192.   this.menuItem2,
  193.   this.menuItem3,
  194.   this.menuItem16});
  195. // 
  196. // menuItem1
  197. // 
  198. this.menuItem1.Index = 0;
  199. this.menuItem1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
  200.   this.menuItem7,
  201.   this.menuItem8,
  202.   this.menuItem9,
  203.   this.menuItem10,
  204.   this.menuItem11,
  205.   this.menuItem12,
  206.   this.menuItem13,
  207.   this.menuItem14,
  208.   this.menuItem15});
  209. this.menuItem1.Text = "文件(F)";
  210. // 
  211. // menuItem7
  212. // 
  213. this.menuItem7.Index = 0;
  214. this.menuItem7.Text = "收取当前邮箱邮件";
  215. // 
  216. // menuItem8
  217. // 
  218. this.menuItem8.Index = 1;
  219. this.menuItem8.Text = "收取所有邮箱邮件";
  220. // 
  221. // menuItem9
  222. // 
  223. this.menuItem9.Index = 2;
  224. this.menuItem9.Text = "发送所有待发邮件";
  225. // 
  226. // menuItem10
  227. // 
  228. this.menuItem10.Index = 3;
  229. this.menuItem10.Text = "-";
  230. // 
  231. // menuItem11
  232. // 
  233. this.menuItem11.Index = 4;
  234. this.menuItem11.Text = "打印机设置";
  235. this.menuItem11.Click += new System.EventHandler(this.menuItem11_Click);
  236. // 
  237. // menuItem12
  238. // 
  239. this.menuItem12.Index = 5;
  240. this.menuItem12.Text = "打印预览";
  241. this.menuItem12.Click += new System.EventHandler(this.menuItem12_Click);
  242. // 
  243. // menuItem13
  244. // 
  245. this.menuItem13.Index = 6;
  246. this.menuItem13.Text = "打印";
  247. // 
  248. // menuItem14
  249. // 
  250. this.menuItem14.Index = 7;
  251. this.menuItem14.Text = "-";
  252. // 
  253. // menuItem15
  254. // 
  255. this.menuItem15.Index = 8;
  256. this.menuItem15.Text = "退出";
  257. this.menuItem15.Click += new System.EventHandler(this.menuItem15_Click);
  258. // 
  259. // menuItem2
  260. // 
  261. this.menuItem2.Index = 1;
  262. this.menuItem2.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
  263.   this.menuItem20});
  264. this.menuItem2.Text = "查看(V)";
  265. // 
  266. // menuItem20
  267. // 
  268. this.menuItem20.Index = 0;
  269. this.menuItem20.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
  270.    this.menuItem21,
  271.    this.menuItem22,
  272.    this.menuItem23,
  273.    this.menuItem24,
  274.    this.menuItem25});
  275. this.menuItem20.Text = "邮件文字大小";
  276. // 
  277. // menuItem21
  278. // 
  279. this.menuItem21.Index = 0;
  280. this.menuItem21.Text = "最大";
  281. // 
  282. // menuItem22
  283. // 
  284. this.menuItem22.Index = 1;
  285. this.menuItem22.Text = "较大";
  286. // 
  287. // menuItem23
  288. // 
  289. this.menuItem23.Index = 2;
  290. this.menuItem23.Text = "中等";
  291. // 
  292. // menuItem24
  293. // 
  294. this.menuItem24.Index = 3;
  295. this.menuItem24.Text = "较小";
  296. // 
  297. // menuItem25
  298. // 
  299. this.menuItem25.Index = 4;
  300. this.menuItem25.Text = "最小";
  301. // 
  302. // menuItem3
  303. // 
  304. this.menuItem3.Index = 2;
  305. this.menuItem3.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
  306.   this.menuItem4,
  307.   this.menuItem5,
  308.   this.menuItem26,
  309.   this.menuItem27});
  310. this.menuItem3.Text = "邮箱(B)";
  311. // 
  312. // menuItem4
  313. // 
  314. this.menuItem4.Index = 0;
  315. this.menuItem4.Text = "修改邮箱属性";
  316. // 
  317. // menuItem5
  318. // 
  319. this.menuItem5.Index = 1;
  320. this.menuItem5.Text = "新建邮箱帐户";
  321. this.menuItem5.Click += new System.EventHandler(this.menuItem5_Click);
  322. // 
  323. // menuItem26
  324. // 
  325. this.menuItem26.Index = 2;
  326. this.menuItem26.Text = "-";
  327. // 
  328. // menuItem27
  329. // 
  330. this.menuItem27.Index = 3;
  331. this.menuItem27.Text = "删除邮箱";
  332. this.menuItem27.Click += new System.EventHandler(this.menuItem27_Click);
  333. // 
  334. // menuItem16
  335. // 
  336. this.menuItem16.Index = 3;
  337. this.menuItem16.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
  338.    this.menuItem17,
  339.    this.menuItem18,
  340.    this.menuItem19});
  341. this.menuItem16.Text = "帮助(H)";
  342. // 
  343. // menuItem17
  344. // 
  345. this.menuItem17.Index = 0;
  346. this.menuItem17.Text = "帮助主题";
  347. // 
  348. // menuItem18
  349. // 
  350. this.menuItem18.Index = 1;
  351. this.menuItem18.Text = "-";
  352. // 
  353. // menuItem19
  354. // 
  355. this.menuItem19.Index = 2;
  356. this.menuItem19.Text = "关于";
  357. this.menuItem19.Click += new System.EventHandler(this.menuItem19_Click);
  358. // 
  359. // treeView1
  360. // 
  361. this.treeView1.Dock = System.Windows.Forms.DockStyle.Left;
  362. this.treeView1.Font = new System.Drawing.Font("宋体", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));
  363. this.treeView1.ImageList = this.imageAccount;
  364. this.treeView1.Location = new System.Drawing.Point(0, 43);
  365. this.treeView1.Name = "treeView1";
  366. this.treeView1.Size = new System.Drawing.Size(121, 462);
  367. this.treeView1.TabIndex = 1;
  368. this.treeView1.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView1_AfterSelect);
  369. // 
  370. // splitter1
  371. // 
  372. this.splitter1.BackColor = System.Drawing.Color.FromArgb(((System.Byte)(192)), ((System.Byte)(192)), ((System.Byte)(255)));
  373. this.splitter1.Location = new System.Drawing.Point(121, 43);
  374. this.splitter1.Name = "splitter1";
  375. this.splitter1.Size = new System.Drawing.Size(5, 462);
  376. this.splitter1.TabIndex = 2;
  377. this.splitter1.TabStop = false;
  378. // 
  379. // panel1
  380. // 
  381. this.panel1.Controls.Add(this.statusBar1);
  382. this.panel1.Controls.Add(this.richTextBox1);
  383. this.panel1.Controls.Add(this.splitter2);
  384. this.panel1.Controls.Add(this.ltReceive);
  385. this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
  386. this.panel1.Location = new System.Drawing.Point(126, 43);
  387. this.panel1.Name = "panel1";
  388. this.panel1.Size = new System.Drawing.Size(762, 462);
  389. this.panel1.TabIndex = 3;
  390. // 
  391. // statusBar1
  392. // 
  393. this.statusBar1.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));
  394. this.statusBar1.Location = new System.Drawing.Point(0, 430);
  395. this.statusBar1.Name = "statusBar1";
  396. this.statusBar1.Panels.AddRange(new System.Windows.Forms.StatusBarPanel[] {
  397.   this.sbWeclome,
  398.   this.sbTime,
  399.   this.sbCpmputerName,
  400.   this.sbIp});
  401. this.statusBar1.ShowPanels = true;
  402. this.statusBar1.Size = new System.Drawing.Size(762, 32);
  403. this.statusBar1.TabIndex = 3;
  404. // 
  405. // sbWeclome
  406. // 
  407. this.sbWeclome.Alignment = System.Windows.Forms.HorizontalAlignment.Center;
  408. this.sbWeclome.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Spring;
  409. this.sbWeclome.Text = "欢迎使用ArgentSwan邮件管理系统";
  410. this.sbWeclome.Width = 186;
  411. // 
  412. // sbTime
  413. // 
  414. this.sbTime.Alignment = System.Windows.Forms.HorizontalAlignment.Center;
  415. this.sbTime.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Spring;
  416. this.sbTime.Width = 186;
  417. // 
  418. // sbCpmputerName
  419. // 
  420. this.sbCpmputerName.Alignment = System.Windows.Forms.HorizontalAlignment.Center;
  421. this.sbCpmputerName.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Spring;
  422. this.sbCpmputerName.Width = 186;
  423. // 
  424. // sbIp
  425. // 
  426. this.sbIp.Alignment = System.Windows.Forms.HorizontalAlignment.Center;
  427. this.sbIp.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Spring;
  428. this.sbIp.Width = 186;
  429. // 
  430. // richTextBox1
  431. // 
  432. this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
  433. this.richTextBox1.Location = new System.Drawing.Point(0, 141);
  434. this.richTextBox1.Name = "richTextBox1";
  435. this.richTextBox1.Size = new System.Drawing.Size(762, 321);
  436. this.richTextBox1.TabIndex = 2;
  437. this.richTextBox1.Text = "";
  438. // 
  439. // splitter2
  440. // 
  441. this.splitter2.BackColor = System.Drawing.Color.FromArgb(((System.Byte)(192)), ((System.Byte)(192)), ((System.Byte)(255)));
  442. this.splitter2.Dock = System.Windows.Forms.DockStyle.Top;
  443. this.splitter2.Location = new System.Drawing.Point(0, 136);
  444. this.splitter2.Name = "splitter2";
  445. this.splitter2.Size = new System.Drawing.Size(762, 5);
  446. this.splitter2.TabIndex = 1;
  447. this.splitter2.TabStop = false;
  448. // 
  449. // ltReceive
  450. // 
  451. this.ltReceive.Dock = System.Windows.Forms.DockStyle.Top;
  452. this.ltReceive.Location = new System.Drawing.Point(0, 0);
  453. this.ltReceive.MultiSelect = false;
  454. this.ltReceive.Name = "ltReceive";
  455. this.ltReceive.Size = new System.Drawing.Size(762, 136);
  456. this.ltReceive.TabIndex = 0;
  457. this.ltReceive.View = System.Windows.Forms.View.Details;
  458. // 
  459. // contextMenu1
  460. // 
  461. this.contextMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
  462.  this.menuItem6});
  463. // 
  464. // menuItem6
  465. // 
  466. this.menuItem6.Index = 0;
  467. this.menuItem6.Text = "默认连接";
  468. // 
  469. // imageList1
  470. // 
  471. this.imageList1.ImageSize = new System.Drawing.Size(16, 16);
  472. this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream")));
  473. this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
  474. // 
  475. // timer1
  476. // 
  477. this.timer1.Enabled = true;
  478. this.timer1.Tick += new System.EventHandler(this.timer1_Tick);
  479. // 
  480. // toolBarRecive
  481. // 
  482. this.toolBarRecive.DropDownMenu = this.contextMenu1;
  483. this.toolBarRecive.ImageIndex = 0;
  484. this.toolBarRecive.Style = System.Windows.Forms.ToolBarButtonStyle.DropDownButton;
  485. this.toolBarRecive.Text = "收取";
  486. // 
  487. // toolBarSend
  488. // 
  489. this.toolBarSend.ImageIndex = 1;
  490. this.toolBarSend.Text = "发送";
  491. // 
  492. // toolBarWrite
  493. // 
  494. this.toolBarWrite.ImageIndex = 2;
  495. this.toolBarWrite.Text = "写邮件";
  496. // 
  497. // toolBar1
  498. // 
  499. this.toolBar1.Appearance = System.Windows.Forms.ToolBarAppearance.Flat;
  500. this.toolBar1.Buttons.AddRange(new System.Windows.Forms.ToolBarButton[] {
  501. this.toolBarRecive,
  502. this.toolBarSend,
  503. this.toolBarButton1,
  504. this.toolBarWrite});
  505. this.toolBar1.ButtonSize = new System.Drawing.Size(70, 37);
  506. this.toolBar1.Divider = false;
  507. this.toolBar1.DropDownArrows = true;
  508. this.toolBar1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));
  509. this.toolBar1.ImageList = this.imageList1;
  510. this.toolBar1.Location = new System.Drawing.Point(0, 0);
  511. this.toolBar1.Name = "toolBar1";
  512. this.toolBar1.ShowToolTips = true;
  513. this.toolBar1.Size = new System.Drawing.Size(888, 43);
  514. this.toolBar1.TabIndex = 0;
  515. this.toolBar1.ButtonClick += new System.Windows.Forms.ToolBarButtonClickEventHandler(this.toolBar1_ButtonClick);
  516. // 
  517. // toolBarButton1
  518. // 
  519. this.toolBarButton1.Style = System.Windows.Forms.ToolBarButtonStyle.Separator;
  520. // 
  521. // printPreviewDialog1
  522. // 
  523. this.printPreviewDialog1.AutoScrollMargin = new System.Drawing.Size(0, 0);
  524. this.printPreviewDialog1.AutoScrollMinSize = new System.Drawing.Size(0, 0);
  525. this.printPreviewDialog1.ClientSize = new System.Drawing.Size(400, 300);
  526. this.printPreviewDialog1.Enabled = true;
  527. this.printPreviewDialog1.Icon = ((System.Drawing.Icon)(resources.GetObject("printPreviewDialog1.Icon")));
  528. this.printPreviewDialog1.Location = new System.Drawing.Point(44, 58);
  529. this.printPreviewDialog1.MinimumSize = new System.Drawing.Size(375, 250);
  530. this.printPreviewDialog1.Name = "printPreviewDialog1";
  531. this.printPreviewDialog1.TransparencyKey = System.Drawing.Color.Empty;
  532. this.printPreviewDialog1.Visible = false;
  533. // 
  534. // imageAccount
  535. // 
  536. this.imageAccount.ImageSize = new System.Drawing.Size(16, 16);
  537. this.imageAccount.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageAccount.ImageStream")));
  538. this.imageAccount.TransparentColor = System.Drawing.Color.Transparent;
  539. // 
  540. // SystemManage
  541. // 
  542. this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
  543. this.ClientSize = new System.Drawing.Size(888, 505);
  544. this.Controls.Add(this.panel1);
  545. this.Controls.Add(this.splitter1);
  546. this.Controls.Add(this.treeView1);
  547. this.Controls.Add(this.toolBar1);
  548. this.Menu = this.mainMenu1;
  549. this.Name = "SystemManage";
  550. this.Text = "邮件管理系统";
  551. this.Load += new System.EventHandler(this.Form1_Load);
  552. this.panel1.ResumeLayout(false);
  553. ((System.ComponentModel.ISupportInitialize)(this.sbWeclome)).EndInit();
  554. ((System.ComponentModel.ISupportInitialize)(this.sbTime)).EndInit();
  555. ((System.ComponentModel.ISupportInitialize)(this.sbCpmputerName)).EndInit();
  556. ((System.ComponentModel.ISupportInitialize)(this.sbIp)).EndInit();
  557. this.ResumeLayout(false);
  558. }
  559. #endregion
  560. /// <summary>
  561. /// 应用程序的主入口点。
  562. /// </summary>
  563. [STAThread]
  564. static void Main() 
  565. {
  566. Application.Run(new SystemManage());
  567. }
  568. PrintDocument print=new PrintDocument ();
  569. private void menuItem11_Click(object sender, System.EventArgs e)
  570. {
  571. this.printDialog1 .Document =print;
  572. if(this.printDialog1 .ShowDialog ()==DialogResult.OK )
  573. {
  574. print.Print ();
  575. }
  576. }
  577. private void printDocument1_PrintPage(object sender, 
  578. System.Drawing.Printing.PrintPageEventArgs e)
  579. {
  580. e.Graphics.DrawString(this.richTextBox1 .Text , 
  581. new Font("Arial", 80, FontStyle.Bold), Brushes.Black, 150, 125);
  582. }
  583. private void menuItem12_Click(object sender, System.EventArgs e)
  584. {
  585. try
  586. {
  587. this.printDocument1.PrintPage += new
  588. System.Drawing.Printing.PrintPageEventHandler
  589. (this.printDocument1_PrintPage);
  590. this.printPreviewDialog1 .Document =this.printDocument1 ;
  591. this.printPreviewDialog1 .ShowDialog ();
  592. }
  593. catch(Exception ex)
  594. {
  595. // MessageBox.Show ("请确定你已经安装了打印机");
  596. MessageBox.Show (ex.ToString ());
  597. }
  598. }
  599. //退出应用程序
  600. private void menuItem15_Click(object sender, System.EventArgs e)
  601. {
  602. Application.Exit ();
  603. }
  604. private void toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
  605. {
  606. switch(toolBar1.Buttons .IndexOf (e.Button ))
  607. {
  608. case 0:
  609. break;
  610. case 1:
  611. break;
  612. default:
  613. if(AccountName==null)
  614. {
  615. MessageBox.Show ("请先注册帐号!");
  616. return;
  617. }
  618. SendMailForm send=new SendMailForm ();
  619. send.Show ();
  620. break;
  621. }
  622. }
  623. private void menuItem5_Click(object sender, System.EventArgs e)
  624. {
  625. try
  626. {
  627. NewAccount newaccount=new NewAccount ();
  628. newaccount.Show ();
  629. }
  630. catch(Exception ee)
  631. {
  632. MessageBox.Show (ee.ToString ());
  633. }
  634. }
  635. private void Form1_Load(object sender, System.EventArgs e)
  636. {
  637. extra=new AddExtra();
  638. this.sbCpmputerName.Text ="主机名:"+extra.GetName ();
  639. this.sbTime .Text =extra.GetTime ();
  640. this.sbIp .Text ="IP地址:";
  641. string []IpAddress=extra.GetIP ();
  642. for(int i=0;i<IpAddress.Length/2;i++)
  643. {
  644. this.sbIp .Text+=IpAddress[i];
  645. }
  646. LoadAccount();
  647. }
  648. //再加载窗口的同时加载已经注册的帐户
  649. public  void LoadAccount()
  650. {
  651. try
  652. {
  653. AccountOperate acOperate=new AccountOperate();
  654. ArrayList Array=acOperate.ReadFromDataBase ("select AccountName from Users","AccountName");
  655. for( int i=0;i<Array.Count ;i++)
  656. {
  657. TreeNode Nodes=new TreeNode (Array[i].ToString (),0,0);
  658. treeView1 .Nodes .Add (Nodes);
  659. TreeNode SubNode1=new TreeNode ("收信箱",1,1);
  660. Nodes.Nodes .Add (SubNode1);
  661. TreeNode SubNode2=new TreeNode ("发件箱",2,2);
  662. Nodes.Nodes .Add (SubNode2);
  663. TreeNode SubNode3=new TreeNode ("已发送邮件箱",3,3);
  664. Nodes.Nodes .Add (SubNode3);
  665. TreeNode SubNode4=new TreeNode ("垃圾邮件箱",4,4);
  666. Nodes.Nodes .Add (SubNode4);
  667. TreeNode SubNode5=new TreeNode ("废件箱",5,5);
  668. Nodes.Nodes .Add (SubNode5);
  669. }
  670. }
  671. catch(Exception ex)
  672. {
  673. MessageBox.Show (ex.ToString ());
  674. }
  675. this.ltReceive.Columns .Add("作者",100,HorizontalAlignment.Center);
  676. this.ltReceive.Columns .Add ("主题",150,HorizontalAlignment.Center);
  677. this.ltReceive.Columns .Add ("日期",200,HorizontalAlignment.Center);
  678. this.ltReceive.Columns .Add ("大小",120,HorizontalAlignment.Center);
  679. }
  680. //在新建一个帐户的同时,将它加载到TreeView控件中
  681. public void addNewAccount()
  682. {
  683. try
  684. {
  685. TreeNode Nodes=new TreeNode (AccountName);
  686. treeView1 .Nodes .Add (Nodes);
  687. TreeNode SubNode1=new TreeNode ("收信箱",1,1);
  688. Nodes.Nodes .Add (SubNode1);
  689. TreeNode SubNode2=new TreeNode ("发件箱",2,2);
  690. Nodes.Nodes .Add (SubNode2);
  691. TreeNode SubNode3=new TreeNode ("已发送邮件箱",3,3);
  692. Nodes.Nodes .Add (SubNode3);
  693. TreeNode SubNode4=new TreeNode ("垃圾邮件箱",4,4);
  694. Nodes.Nodes .Add (SubNode4);
  695. TreeNode SubNode5=new TreeNode ("废件箱",5,5);
  696. Nodes.Nodes .Add (SubNode5);
  697. }
  698. catch(Exception ex)
  699. {
  700. MessageBox.Show (ex.ToString ());
  701. }
  702. }
  703. private void menuItem19_Click(object sender, System.EventArgs e)
  704. {
  705. //调用关于窗口
  706. Assembly ass=Assembly.GetExecutingAssembly();
  707. FileVersionInfo myVersion=FileVersionInfo.GetVersionInfo(ass.Location );
  708. ShellAbout(this.Handle ,"邮件收发系统#","版本"+myVersion.FileMajorPart +"."+myVersion.FileMinorPart+"." +myVersion.CompanyName ,this.Icon .Handle );
  709. }
  710. private void timer1_Tick(object sender, System.EventArgs e)
  711. {
  712. //新建帐号的时候
  713. if(flag)
  714. {
  715. addNewAccount();
  716. }
  717. flag=false;
  718. }
  719. //在选中一个帐户的时候,所有的相关信息跟着改变(主要是发送邮件的参数)
  720. private void treeView1_AfterSelect(object sender, System.Windows.Forms.TreeViewEventArgs e)
  721. {
  722. //帐户操作的有关类
  723. AccountOperate acOperate=new AccountOperate();
  724. try
  725. {
  726. //判断是否是根节点
  727. if(e.Node .Parent==null)
  728. {
  729. AccountName =e.Node.Text ; 
  730. }
  731. else if(e.Node .Parent !=null)
  732. {
  733. AccountName=e.Node .Parent .Text ;
  734. }
  735. string []accountInfo=acOperate.AccountFileInfo("Select userName,PassW, MailAddress,Smtp,Port from users where AccountName='"+AccountName +"'");
  736. UserName=accountInfo[0];
  737. PassWd=accountInfo[1];
  738. MailAddress=accountInfo[2];
  739. SmtpName=accountInfo[3];
  740. SmtpPort=int.Parse (accountInfo[4]);
  741. }
  742. catch(Exception ex)
  743. {
  744. MessageBox.Show (ex.ToString ());
  745. }
  746. }
  747. //删除选定帐户的操作
  748. private void menuItem27_Click(object sender, System.EventArgs e)
  749. {
  750. try
  751. {
  752. AccountOperate acOperate=new AccountOperate();
  753. acOperate.AddDelAccount("delete * from users where AccountName='"+AccountName+"'");
  754. if(this.treeView1.SelectedNode !=null)
  755. {
  756. if(MessageBox.Show ("你确定要删除吗?","请确认",MessageBoxButtons.OKCancel,MessageBoxIcon.Question)==DialogResult.OK)
  757. {
  758. this.treeView1.Nodes .Remove(this.treeView1 .SelectedNode );
  759. }
  760. }
  761. }
  762. catch(Exception ex)
  763. {
  764. MessageBox.Show(ex.ToString());
  765. }
  766. }
  767. }
  768. }