C#传送EXE档无法执行

j13667981518 2010-09-09 09:42:27
各位高手以下代码是接受服务器传出的EXE档代码,如有写错的地方请帮忙指出
private void StartDownload()
{
pssbar.Maximum = 100;
pssbar.Minimum = 1;
string ReceiveContent = "";
//服務器IP
String ServerIP = "192.168.10.15";
//文件存放路徑
string filename = Application.StartupPath + @"\ProduceManage.exe";
try
{
ServerInfo = new IPEndPoint(IPAddress.Parse(ServerIP), 11000);

try
{
ClientSocket.Connect(ServerInfo);

ClientSocket.Send(Encoding.Unicode.GetBytes(Client_info + " 进入系统!\n"));
Byte[] buff = new Byte[256];
int result;
FileStream fs = new FileStream("sdasd.exe", FileMode.OpenOrCreate, FileAccess.ReadWrite);
StreamWriter sr = new StreamWriter(fs);
int number = 0;
while (true)
{
number = number + 1;
buff = new Byte[256];
result = ClientSocket.Receive(buff); //接收来自绑定的 Socket 的数据。
sr.Write(Encoding.Default.GetString(buff));
if (result < 256)
break;
pssbar.Minimum =number;
}
sr.Close();
fs.Close();
MessageBox.Show("文件下载完成");
}
catch
{
MessageBox.Show("登录服务器連接失敗,请确认服务器是否正常工作!");
}
this.Close();

}
catch (SocketException ex)
{
Console.WriteLine(ex.ToString());

}
}
...全文
92 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
oneatree 2010-09-09
  • 打赏
  • 举报
回复
传值方法有问题
liuqilin1987 2010-09-09
  • 打赏
  • 举报
回复
可能是不是安全性的问题哦?socket中好像有个传出权限的,你看看,.exe好像是不能直接传输的。
j13667981518 2010-09-09
  • 打赏
  • 举报
回复
没有报错,打开接收后的EXE档一闪而过自动关闭
j13667981518 2010-09-09
  • 打赏
  • 举报
回复
我服务端的发送是用socket.SendFile(filename)方式
  • 打赏
  • 举报
回复
报什么错
wuyq11 2010-09-09
  • 打赏
  • 举报
回复
Socket传输数据都是以字节流形式的
按照socket.Send(buffer)的形式传送,buffer是字节流
hyblusea 2010-09-09
  • 打赏
  • 举报
回复
传输过程中文件受损了??
wubudang 2010-09-09
  • 打赏
  • 举报
回复
用QQ传下看看,疼迅的解决方法

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧