- 浏览: 1198860 次
文章分类
最新评论
-
sucheng2016:
### Error querying database. C ...
Sybase数据类型 -
Jiafun:
加油吧,少年
这可能是人生最后一个暑假 -
hermesdai:
少年很努力啊...学习了
一名毕业生的程序员之路 -
panda_eyes:
...
一名毕业生的程序员之路 -
yyue_li1988:
哥们,你写却是挺好的。同样给我们这种工作一两年的人,感触颇深啊 ...
一名毕业生的程序员之路
c#抓取邮件内容解析
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Net;
using System.Net.Sockets;
using System.IO;
namespace MailReceiver
{
/// <summary>
/// Form1 的摘要说明。
/// </summary>
public class Form1 : System.Windows.Forms.Form
{
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.Label label6;
private System.Windows.Forms.TextBox PopServer;
private System.Windows.Forms.TextBox Username;
private System.Windows.Forms.TextBox Password;
private System.Windows.Forms.RichTextBox Message;
private System.Windows.Forms.TextBox MailNum;
private System.Windows.Forms.ListBox Status;
private System.Windows.Forms.Button Connect;
private System.Windows.Forms.Button Disconnect;
private System.Windows.Forms.Button Retrieve;
private System.Windows.Forms.CheckBox BackupChBox;
public TcpClient Server;
public NetworkStream NetStrm;
public StreamReader RdStrm;
public string Data;
public byte[] szData;
public string CRLF = "/r/n";
private System.Windows.Forms.Button BtnExit;
private System.Windows.Forms.Label label7;
private System.Windows.Forms.Label label8;
private System.Windows.Forms.Label label9;
private System.Windows.Forms.Label label10;
private System.Windows.Forms.Label label11;
private System.Windows.Forms.TextBox txtMailFrom;
private System.Windows.Forms.TextBox txtMailCharSet;
private System.Windows.Forms.TextBox txtMailTitle;
private System.Windows.Forms.Label label12;
private System.Windows.Forms.Label label13;
private System.Windows.Forms.RichTextBox txtMailContent;
private System.Windows.Forms.Button btnExplit;
private System.Windows.Forms.TextBox txtMailDate;
private System.Windows.Forms.TextBox txtMailTo;
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.Container components = null;
public Form1()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent();
//
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
}
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
#region Windows Form Designer generated code
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.label5 = new System.Windows.Forms.Label();
this.label6 = new System.Windows.Forms.Label();
this.PopServer = new System.Windows.Forms.TextBox();
this.Username = new System.Windows.Forms.TextBox();
this.Password = new System.Windows.Forms.TextBox();
this.MailNum = new System.Windows.Forms.TextBox();
this.Connect = new System.Windows.Forms.Button();
this.Disconnect = new System.Windows.Forms.Button();
this.Retrieve = new System.Windows.Forms.Button();
this.Message = new System.Windows.Forms.RichTextBox();
this.Status = new System.Windows.Forms.ListBox();
this.BackupChBox = new System.Windows.Forms.CheckBox();
this.BtnExit = new System.Windows.Forms.Button();
this.label7 = new System.Windows.Forms.Label();
this.label8 = new System.Windows.Forms.Label();
this.label9 = new System.Windows.Forms.Label();
this.label10 = new System.Windows.Forms.Label();
this.label11 = new System.Windows.Forms.Label();
this.txtMailFrom = new System.Windows.Forms.TextBox();
this.txtMailDate = new System.Windows.Forms.TextBox();
this.txtMailTitle = new System.Windows.Forms.TextBox();
this.txtMailTo = new System.Windows.Forms.TextBox();
this.txtMailCharSet = new System.Windows.Forms.TextBox();
this.label12 = new System.Windows.Forms.Label();
this.label13 = new System.Windows.Forms.Label();
this.txtMailContent = new System.Windows.Forms.RichTextBox();
this.btnExplit = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// label1
//
this.label1.Location = new System.Drawing.Point(16, 16);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(112, 23);
this.label1.TabIndex = 0;
this.label1.Text = "POP3 服务器地址:";
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// label2
//
this.label2.Location = new System.Drawing.Point(16, 48);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(56, 16);
this.label2.TabIndex = 1;
this.label2.Text = "用户名:";
this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// label3
//
this.label3.Location = new System.Drawing.Point(216, 48);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(48, 16);
this.label3.TabIndex = 2;
this.label3.Text = "密码:";
this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// label4
//
this.label4.Location = new System.Drawing.Point(304, 80);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(72, 23);
this.label4.TabIndex = 3;
this.label4.Text = "邮件编号:";
this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// label5
//
this.label5.Location = new System.Drawing.Point(16, 80);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(100, 16);
this.label5.TabIndex = 4;
this.label5.Text = "信息:";
this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// label6
//
this.label6.Location = new System.Drawing.Point(16, 584);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(100, 16);
this.label6.TabIndex = 5;
this.label6.Text = "状态:";
this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// PopServer
//
this.PopServer.Location = new System.Drawing.Point(136, 16);
this.PopServer.Name = "PopServer";
this.PopServer.Size = new System.Drawing.Size(168, 21);
this.PopServer.TabIndex = 0;
this.PopServer.Text = "pop.126.com";
//
// Username
//
this.Username.Location = new System.Drawing.Point(96, 48);
this.Username.Name = "Username";
this.Username.Size = new System.Drawing.Size(104, 21);
this.Username.TabIndex = 1;
this.Username.Text = "Hnxqf222";
//
// Password
//
this.Password.Location = new System.Drawing.Point(280, 48);
this.Password.Name = "Password";
this.Password.PasswordChar = '*';
this.Password.Size = new System.Drawing.Size(104, 21);
this.Password.TabIndex = 2;
this.Password.Text = "iwillwin";
//
// MailNum
//
this.MailNum.Location = new System.Drawing.Point(384, 80);
this.MailNum.Name = "MailNum";
this.MailNum.Size = new System.Drawing.Size(40, 21);
this.MailNum.TabIndex = 4;
this.MailNum.Text = "";
//
// Connect
//
this.Connect.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.Connect.Location = new System.Drawing.Point(448, 8);
this.Connect.Name = "Connect";
this.Connect.Size = new System.Drawing.Size(75, 24);
this.Connect.TabIndex = 7;
this.Connect.Text = "连接邮局";
this.Connect.Click += new System.EventHandler(this.Connect_Click);
//
// Disconnect
//
this.Disconnect.Enabled = false;
this.Disconnect.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.Disconnect.Location = new System.Drawing.Point(552, 8);
this.Disconnect.Name = "Disconnect";
this.Disconnect.Size = new System.Drawing.Size(75, 24);
this.Disconnect.TabIndex = 8;
this.Disconnect.Text = "断开连接";
this.Disconnect.Click += new System.EventHandler(this.Disconnect_Click);
//
// Retrieve
//
this.Retrieve.Enabled = false;
this.Retrieve.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.Retrieve.Location = new System.Drawing.Point(616, 80);
this.Retrieve.Name = "Retrieve";
this.Retrieve.Size = new System.Drawing.Size(72, 24);
this.Retrieve.TabIndex = 9;
this.Retrieve.Text = "收取邮件";
this.Retrieve.Click += new System.EventHandler(this.Retrieve_Click);
//
// Message
//
this.Message.Location = new System.Drawing.Point(8, 112);
this.Message.Name = "Message";
this.Message.ShowSelectionMargin = true;
this.Message.Size = new System.Drawing.Size(704, 136);
this.Message.TabIndex = 3;
this.Message.Text = "";
//
// Status
//
this.Status.HorizontalScrollbar = true;
this.Status.ItemHeight = 12;
this.Status.Location = new System.Drawing.Point(8, 608);
this.Status.Name = "Status";
this.Status.Size = new System.Drawing.Size(704, 136);
this.Status.Sorted = true;
this.Status.TabIndex = 6;
//
// BackupChBox
//
this.BackupChBox.Checked = true;
this.BackupChBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.BackupChBox.Location = new System.Drawing.Point(440, 80);
this.BackupChBox.Name = "BackupChBox";
this.BackupChBox.Size = new System.Drawing.Size(160, 24);
this.BackupChBox.TabIndex = 5;
this.BackupChBox.Text = "在邮件服务器上保留备份";
//
// BtnExit
//
this.BtnExit.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.BtnExit.Location = new System.Drawing.Point(648, 8);
this.BtnExit.Name = "BtnExit";
this.BtnExit.Size = new System.Drawing.Size(75, 24);
this.BtnExit.TabIndex = 11;
this.BtnExit.Text = "退出程序";
this.BtnExit.Click += new System.EventHandler(this.BtnExit_Click);
//
// label7
//
this.label7.Location = new System.Drawing.Point(8, 264);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(64, 23);
this.label7.TabIndex = 12;
this.label7.Text = "发件人:";
//
// label8
//
this.label8.Location = new System.Drawing.Point(8, 296);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(72, 23);
this.label8.TabIndex = 13;
this.label8.Text = "发信时间:";
//
// label9
//
this.label9.Location = new System.Drawing.Point(8, 328);
this.label9.Name = "label9";
this.label9.Size = new System.Drawing.Size(72, 23);
this.label9.TabIndex = 14;
this.label9.Text = "邮件标题:";
//
// label10
//
this.label10.Location = new System.Drawing.Point(304, 264);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(72, 23);
this.label10.TabIndex = 15;
this.label10.Text = "收件人:";
//
// label11
//
this.label11.Location = new System.Drawing.Point(304, 296);
this.label11.Name = "label11";
this.label11.Size = new System.Drawing.Size(72, 23);
this.label11.TabIndex = 16;
this.label11.Text = "内容编码:";
//
// txtMailFrom
//
this.txtMailFrom.Location = new System.Drawing.Point(96, 264);
this.txtMailFrom.Name = "txtMailFrom";
this.txtMailFrom.Size = new System.Drawing.Size(184, 21);
this.txtMailFrom.TabIndex = 17;
this.txtMailFrom.Text = "";
//
// txtMailDate
//
this.txtMailDate.Location = new System.Drawing.Point(96, 296);
this.txtMailDate.Name = "txtMailDate";
this.txtMailDate.Size = new System.Drawing.Size(184, 21);
this.txtMailDate.TabIndex = 18;
this.txtMailDate.Text = "";
//
// txtMailTitle
//
this.txtMailTitle.Location = new System.Drawing.Point(96, 328);
this.txtMailTitle.Name = "txtMailTitle";
this.txtMailTitle.Size = new System.Drawing.Size(392, 21);
this.txtMailTitle.TabIndex = 19;
this.txtMailTitle.Text = "";
//
// txtMailTo
//
this.txtMailTo.Location = new System.Drawing.Point(384, 264);
this.txtMailTo.Name = "txtMailTo";
this.txtMailTo.Size = new System.Drawing.Size(184, 21);
this.txtMailTo.TabIndex = 20;
this.txtMailTo.Text = "";
//
// txtMailCharSet
//
this.txtMailCharSet.Location = new System.Drawing.Point(384, 296);
this.txtMailCharSet.Name = "txtMailCharSet";
this.txtMailCharSet.TabIndex = 21;
this.txtMailCharSet.Text = "";
//
// label12
//
this.label12.Location = new System.Drawing.Point(496, 296);
this.label12.Name = "label12";
this.label12.Size = new System.Drawing.Size(72, 23);
this.label12.TabIndex = 22;
this.label12.Text = "邮件长度";
//
// label13
//
this.label13.Location = new System.Drawing.Point(8, 392);
this.label13.Name = "label13";
this.label13.Size = new System.Drawing.Size(80, 16);
this.label13.TabIndex = 24;
this.label13.Text = "邮件内容:";
this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// txtMailContent
//
this.txtMailContent.Location = new System.Drawing.Point(8, 416);
this.txtMailContent.Name = "txtMailContent";
this.txtMailContent.ShowSelectionMargin = true;
this.txtMailContent.Size = new System.Drawing.Size(704, 152);
this.txtMailContent.TabIndex = 25;
this.txtMailContent.Text = "";
//
// btnExplit
//
this.btnExplit.Enabled = false;
this.btnExplit.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnExplit.Location = new System.Drawing.Point(624, 264);
this.btnExplit.Name = "btnExplit";
this.btnExplit.Size = new System.Drawing.Size(72, 24);
this.btnExplit.TabIndex = 26;
this.btnExplit.Text = "解析内容";
//
// Form1
//
this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
this.ClientSize = new System.Drawing.Size(728, 753);
this.Controls.Add(this.btnExplit);
this.Controls.Add(this.txtMailContent);
this.Controls.Add(this.label13);
this.Controls.Add(this.label12);
this.Controls.Add(this.txtMailCharSet);
this.Controls.Add(this.txtMailTo);
this.Controls.Add(this.txtMailTitle);
this.Controls.Add(this.txtMailDate);
this.Controls.Add(this.txtMailFrom);
this.Controls.Add(this.label11);
this.Controls.Add(this.label10);
this.Controls.Add(this.label9);
this.Controls.Add(this.label8);
this.Controls.Add(this.label7);
this.Controls.Add(this.BtnExit);
this.Controls.Add(this.BackupChBox);
this.Controls.Add(this.Status);
this.Controls.Add(this.Message);
this.Controls.Add(this.Retrieve);
this.Controls.Add(this.Disconnect);
this.Controls.Add(this.Connect);
this.Controls.Add(this.MailNum);
this.Controls.Add(this.Password);
this.Controls.Add(this.Username);
this.Controls.Add(this.PopServer);
this.Controls.Add(this.label6);
this.Controls.Add(this.label5);
this.Controls.Add(this.label4);
this.Controls.Add(this.label3);
this.Controls.Add(this.label2);
this.Controls.Add(this.label1);
this.MaximizeBox = false;
this.Name = "Form1";
this.Text = "POP3邮件接收程序";
this.Load += new System.EventHandler(this.Form1_Load);
this.ResumeLayout(false);
}
#endregion
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.Run(new Form1());
}
private void Connect_Click(object sender, System.EventArgs e)
{
//将光标置为等待状态
Cursor cr = Cursor.Current;
Cursor.Current = Cursors.WaitCursor;
//用110端口新建POP3服务器连接
Server = new TcpClient(PopServer.Text,110);
Status.Items.Clear();
try
{
//初始化
NetStrm = Server.GetStream();
RdStrm= new StreamReader(Server.GetStream());
Status.Items.Add(RdStrm.ReadLine());
//登录服务器过程
Data = "USER "+ Username.Text+CRLF;
szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
NetStrm.Write(szData,0,szData.Length);
Status.Items.Add(RdStrm.ReadLine());
Data = "PASS "+ Password.Text+CRLF;
szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
NetStrm.Write(szData,0,szData.Length);
Status.Items.Add(RdStrm.ReadLine());
//向服务器发送STAT命令,从而取得邮箱的相关信息:邮件数量和大小
Data = "STAT"+CRLF;
szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
NetStrm.Write(szData,0,szData.Length);
Status.Items.Add(RdStrm.ReadLine());
//改变按钮的状态
Connect.Enabled = false;
Disconnect.Enabled = true;
Retrieve.Enabled = true;
//将光标置回原来状态
Cursor.Current = cr;
}
catch(InvalidOperationException err)
{
Status.Items.Add("Error: "+err.ToString());
}
}
private void Disconnect_Click(object sender, System.EventArgs e)
{
//将光标置为等待状态
Cursor cr = Cursor.Current;
Cursor.Current = Cursors.WaitCursor;
//向服务器发送QUIT命令从而结束和POP3服务器的会话
Data = "QUIT"+CRLF;
szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
NetStrm.Write(szData,0,szData.Length);
Status.Items.Add(RdStrm.ReadLine());
//断开连接
NetStrm.Close();
RdStrm.Close();
//改变按钮的状态
Connect.Enabled = true;
Disconnect.Enabled = false;
Retrieve.Enabled = false;
//将光标置回原来状态
Cursor.Current = cr;
}
private void Retrieve_Click(object sender, System.EventArgs e)
{
//将光标置为等待状态
Cursor cr = Cursor.Current;
Cursor.Current = Cursors.WaitCursor;
string szTemp;
string MailContent;
MailContent="";
Message.Clear();
try
{
//根据邮件编号从服务器获得相应邮件
Data = "RETR "+ MailNum.Text+CRLF;
szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
NetStrm.Write(szData,0,szData.Length);
szTemp = RdStrm.ReadLine();
string MailFrom="";
string MailTo="";
string MailTitle="";
string MailDate="";
if(szTemp[0]!='-')
{
//不断地读取邮件内容,只到结束标志:英文句号
int k=0;
while(szTemp!=".")
{
//Message.Text +="第"+i.ToString()+"行"+ szTemp + "/n";
MailContent+=szTemp+"/n";
szTemp = RdStrm.ReadLine();
if (k<10&&k>4)
{
txtMailContent.Text+=k.ToString();
if(szTemp.Substring(0,2).ToLower()=="to")
{
MailTo="发送到"+szTemp.Substring(2,szTemp.Length-2);
}
if(szTemp.Substring(0,4).ToLower()=="from")
{
MailFrom="来自"+szTemp.Substring(4,szTemp.Length-4);
}
if(szTemp.Substring(0,7).ToLower()=="subject")
{
MailTitle="标题"+szTemp.Substring(7,szTemp.Length-7);
}
if(szTemp.Substring(0,4).ToLower()=="date")
{
MailDate+="日期"+szTemp.Substring(4,szTemp.Length-4);
}
}
k=k+1;
}
Message.Text=MailContent;
//txtMailContent=MailContent;
txtMailFrom.Text=MailFrom;
txtMailTo.Text=MailTo;
txtMailTitle.Text=MailTitle;
txtMailDate.Text=MailDate;
//若BackupChBox未选中,则收取邮件后,删除保留在服务器上的邮件
if(BackupChBox.Checked == false)
{
Data = "DELE" + MailNum.Text + CRLF;
szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
NetStrm.Write(szData,0,szData.Length);
Status.Items.Add(RdStrm.ReadLine());
}
/*
//解析抓取过来的各种邮件部分
//
//txtMailContent.Clear();
char[] seperator = {'/n'};
string EmailContent;
EmailContent=content.ToString().Trim();
string[] str1 =EmailContent.Split(seperator,10);
for(int i=0;i<=9;i++)
{
//txtMailContent.Text+="/n"+str1.ToString();
/*126邮局的前面9行的内容
+OK 1161 octets
Received: from xqf222 (unknown [222.248.201.237])
by smtp3 (Coremail) with SMTP id wKjSjUpAVAFnNKJE39QhAA==.15858S2;
Wed, 28 Jun 2006 15:48:56 +0800 (CST)
thread-index: Acaah0d07Liy0sFNTsK6weudE0ML7A==
Thread-Topic: =?gb2312?B?1eLA78zu0LS499Pv1tbTyrz+serM4g==?=
From: <csharp222@126.com>
To: <hnxqf222@126.com>
Subject: =?gb2312?B?1eLA78zu0LS499Pv1tbTyrz+serM4g==?=
if(str1.ToString().Trim().Length!=0)
{
txtMailContent.Text+="/n解析内容"+str1.ToString();
if(str1.ToString().Substring(0,2).ToLower()=="to")
{
txtMailContent.Text+="发送到"+str1.ToString().Substring(2,str1.ToString().Length-2);
}
else
{
txtMailContent.Text+="/n没有抓取到收件人信息"+str1.ToString().Substring(0,2).ToLower();
}
if(str1.ToString().Substring(0,4).ToLower()=="from")
{
txtMailContent.Text+="来自"+str1.ToString().Substring(4,str1.ToString().Length-4);
}
else
{
txtMailContent.Text+="/n没有抓取到发件人信息"+str1.ToString().Substring(0,4).ToLower();
}
if(str1.ToString().Substring(0,7).ToLower()=="subject")
{
txtMailContent.Text+="标题"+str1.ToString().Substring(7,str1.ToString().Length-7);
}
else
{
txtMailContent.Text+="/n没有抓取到邮件标题信息"+str1.ToString().Substring(0,7).ToLower();
}
if(str1.ToString().Substring(0,4).ToLower()=="date")
{
txtMailContent.Text+="日期"+str1.ToString().Substring(4,str1.ToString().Length-4);
}
else
{
txtMailContent.Text+="/n没有抓取到邮件日期信息"+str1.ToString().Substring(0,4).ToLower();
}
txtMailContent.Text+="/n循环数组时候结束";
}
else
{
txtMailContent.Text="/n没有抓取到任何数据";
}
}
/*txtMailContent.Text+="内容: "+CRLF;
for(int j=12;j<str1.ToString().Length;j++)
{
if(str1[j].Trim().Length!=0)
{
txtMailContent.Text+=str1[j];
}
}
*/
//
}
else
{
Status.Items.Add(szTemp);
}
//将光标置回原来状态
Cursor.Current = cr;
//解析内容按钮显示
btnExplit.Enabled=true;
}
catch(InvalidOperationException err)
{
Status.Items.Add("Error: "+err.ToString());
}
}
private void BtnExit_Click(object sender, System.EventArgs e)
{
Application.Exit();
}
private void Form1_Load(object sender, System.EventArgs e)
{
}
}
}
相关推荐
C#ie实现自动下载示例、C#Socket基本编程、C# WinForm制作异形窗体与控件、...抓取远程Web网页信息的代码、缓存处理、C#开发网络防火墙技术分析、c#读取硬盘序列号、C#编写发送电子邮件、C#版ftp方法实现类的代码.........
19.2.1 如何抓取屏幕 488 19.2.2 创建AVI文件 488 19.2.3 向AVI文件中添加视频 489 19.2.4 分解AVI文件 490 19.2.5 设置快捷键 491 19.3 设计过程 494 19.3.1 主窗体设计 494 19.3.2 抓图功能 494 ...
明日科技出版的c#开发典型模块大全配套光盘,要的可以下载,因大小受限,分开上传! 第1章 认识C#及开发环境 1.1 C#概述 1.1.1 C#发展历程 1.1.2 C#语言编程环境 1.2.NETFramework2.0简介 1.2.1 什么是....
第1章 认识C#及开发环境 1.1 C#概述 1.1.1 C#发展历程 1.1.2 C#语言编程环境 1.2.NETFramework2.0简介 1.2.1 什么是.NETFramework2.0 1.2.2.NETFramework2.0特性 1.3 安装集成开发环境VisualStudio2005 1.3.1 安装...
明日科技出版的c#开发典型模块大全配套光盘,要的可以下载,因大小受限,分开上传! 第1章 认识C#及开发环境 1.1 C#概述 1.1.1 C#发展历程 1.1.2 C#语言编程环境 1.2.NETFramework2.0简介 1.2.1 什么是....
273 实例190 获取窗口文本 273 实例191 判断文件是否正在被使用 274 实例192 在程序中调用.HLP文件 275 实例193 C#中实现文件拖放 276 实例194 文件比较 276 第7章 操作系统与Windows...
实例102 获取控件名称和内容 145 第3章 组件应用 147 3.1 BackgroundWorker组件 148 实例103 BackgroundWorker组件执行异步操作 148 3.2 ErrorProvider组件 150 实例104 使用ErrorProvider组件验证文本框输入 ...
实例102 获取控件名称和内容 145 第3章 组件应用 147 3.1 BackgroundWorker组件 148 实例103 BackgroundWorker组件执行异步操作 148 3.2 ErrorProvider组件 150 实例104 使用ErrorProvider组件验证文本框输入 ...
实例102 获取控件名称和内容 145 第3章 组件应用 147 3.1 BackgroundWorker组件 148 实例103 BackgroundWorker组件执行异步操作 148 3.2 ErrorProvider组件 150 实例104 使用ErrorProvider组件验证文本框输入 ...
实例102 获取控件名称和内容 145 第3章 组件应用 147 3.1 BackgroundWorker组件 148 实例103 BackgroundWorker组件执行异步操作 148 3.2 ErrorProvider组件 150 实例104 使用ErrorProvider组件验证文本框输入 ...