private void button1_Click(object sender, System.EventArgs e)
{

int port=21;

            string str=textBox1.Text;
tcpClient=new TcpClient();
tcpClient.Connect("hyperbeta",port);
netStream=tcpClient.GetStream();
statusBar1.Text="已连接服务器!";
private void upload()
{
int port=21;

reply=recievemessage(ref netStream);
readReply();


sendmessage(ref netStream,"USER "+"ftp");
reply=recievemessage(ref netStream);

readReply();

if(retValue==331)
{

sendmessage(ref netStream,"PASS "+"123456");
reply=recievemessage(ref netStream);
readReply();
//textBox2.Text=retValue.ToString();
if(retValue==230)
{


sendmessage(ref netStream,"STOR "+Path.GetFileName(@textBox1.Text.ToString()));
reply=recievemessage(ref netStream);


readReply();
                    

if(retValue==150)
{



reply=recievemessage(ref netStream);
readReply();
textBox2.Text=retValue.ToString();
if(retValue==125)
{
try
{

statusBar1.Text="正在上传......";

up(ref netStream);
tcpClient.Close();

}
catch
{
MessageBox.Show("不能建立连接!");
}
try
{   

fileStream=new FileStream(@str,FileMode.Open,FileAccess.ReadWrite);
Thread thread =new Thread(new ThreadStart(upload));

thread.Start();
               statusBar1.Text="开始线程!";
}
catch
{

  MessageBox.Show("无法上传!");
}
}private void up(ref NetworkStream stream1)
{
try
{
int n=0;
int writeNumber=0;
byte[] byt=new byte[64];
              
while((writeNumber=fileStream.Read(byt,0,64)>0)
{
stream1.Write(byt,0,64); stream1.Flush();
n++;
                  
}
textBox2.Text=n.ToString();
fileStream.Close();
statusBar1.Text="上传完毕!";
MessageBox.Show("上传完毕!");

}
catch 
{
MessageBox.Show("不能上传!");

}
}