public void ConnectToServer(NetworkStream ns,StreamReader sr,string serverName,string serverPassword)
{
string temp = "";
data = "USER " + serverName + "/r/n";
szdata = System.Text.Encoding.ASCII.GetBytes(data.ToCharArray());
ns.Write(szdata,0,szdata.Length);
toolStripStatusLabel1.Text = sr.ReadLine();
data = "PASS " + serverPassword + "/r/n";
szdata = System.Text.Encoding.ASCII.GetBytes(data.ToCharArray());
ns.Write(szdata, 0, szdata.Length);
toolStripStatusLabel1.Text = sr.ReadLine();
data = "STAT" + "/r/n";
szdata = System.Text.Encoding.ASCII.GetBytes(data.ToCharArray());
ns.Write(szdata, 0, szdata.Length);
temp=sr.ReadLine();
toolStripStatusLabel1.Text = temp;
mailStat = Convert.ToInt32(temp.Substring(temp.IndexOf(" "), (temp.LastIndexOf(" ") - temp.IndexOf(" "))));
}
public void RetrieveMail(NetworkStream ns, StreamReader sr)
{
listView1.Items.Clear();
for (int number = 1; number <= mailStat; number++)
{
data = "RETR " + number + "/r/n";
szdata = System.Text.Encoding.ASCII.GetBytes(data.ToCharArray());
ns.Write(szdata, 0, szdata.Length);
ns.Flush();
string sztemp = "";
sztemp = sr.ReadLine();
if (sztemp[0] != '-')
{
while (sztemp != ".")
{
if (sztemp.Contains("Subject:"))
{
listView1.Items.Add(sztemp.Substring(sztemp.IndexOf("Subject:") + 8, (sztemp.Length - sztemp.IndexOf("Subject:") - 8)));
}
sztemp = sr.ReadLine();
}
}
}
}
//动态增加节点
while (reader.Read())
{
TreeNode tn = treeView1.Nodes[0].Nodes.Add(reader.GetString(0));
tn.ImageIndex = 3;
tn.SelectedImageIndex = 3;
tn.EnsureVisible();
TreeNode MyRecvMail = tn.Nodes.Add("收件箱");
MyRecvMail.ImageIndex = 1;
MyRecvMail.SelectedImageIndex = 2;
TreeNode MySendMail = tn.Nodes.Add("发件箱");
MySendMail.ImageIndex = 1;
MySendMail.SelectedImageIndex = 2;
}
//点击右上角的叉关闭
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (MessageBox.Show("退出程序", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
{
e.Cancel = false;
}
else
{
e.Cancel = true;
}
}
//双击节点事件代码
TreeNode selectednode = treeView1.GetNodeAt(pi);
if (pi.X>selectednode.Bounds.Left && pi.X < selectednode.Bounds.Right)
{
}