将任何文件发送到localhost

时间:2014-08-04 07:44:43

标签: c#

我想将数据库文件只保留在服务器上,所以当我上传文件时我想将它发送到“127.0.0.1”我试过以下代码

private void SendFile(string fileName = "C:\\test.txt")
{
    IPHostEntry ipHost = Dns.GetHostEntry(Dns.GetHostName());
    IPAddress ipAddr = ipHost.AddressList[0];
    IPEndPoint ipEndPoint = new IPEndPoint(ipAddr, 11000);

    Socket client = new Socket(ipAddr.AddressFamily,
            SocketType.Stream, ProtocolType.Tcp);

    client.Connect(ipEndPoint);

    byte[] fileBytes = File.ReadAllBytes(fileName);

    client.Send(fileBytes);

    client.Shutdown(SocketShutdown.Both);
    client.Close();
}

但它一直让我这个错误:“无法建立连接,因为目标计算机主动拒绝它”这意味着服务器没有监听。

所以,

1)如何修复此问题以便能够将任何文件发送到localhost

2)我如何通过“127.0.0.1 [FileName]。[Ext]”打开浏览器中的文件。

1 个答案:

答案 0 :(得分:0)

您需要使用SocketServer类编写一些内容来侦听端口。您编写的代码要求服务器在11000中侦听连接。这是使用Listener.Listen()方法完成的。一个完整的例子:http://msdn.microsoft.com/en-us/library/fx6588te(v=vs.110).aspx