
是TCP协议吧,原因是服务器没有启动,或者启动了没有处于侦听状态
是TCP协议,在实例化tcpclient = new TcpClient(remoteIpString, remotePort)的时候报错。
我想问一下,在同一个程序中怎么既充当服务器有充当客户端?
很有如果我用本机的ip做监听服务器地址,然后用127.0.0.1做客户机的ip地址可以嘛?
我想做的是P2P数据传送
这个8888应该是服务端的监听端口,如果netstat看不到的话肯定是会发生lz你所说的问题的。你应该还要启动这个服务端才对。
貌似不是在服务器端了,程序开始默认获取本机ip地址以及一个可用的端口,然后对这个端口进行监听。然后让你添加一个或多个好友ip地址及端口号。我是在添加好友的时候出现这个错误的。添加好友的ip我试过用127.0.0.1和本机ip,都报这个错
网上那些“范例”很多都是所谓的单机demo,不要相信是产品的。回答你#4楼的问题。最起码的,通用服务器不是什么什么127.0.0.1进行bind *** 作的。比较正规的是IPAddress.Any,比较业余的也是从dns对象中遍历IPAddress集合,找出其中第一个符合ipv4模式的地址。你看到127.0.0.1的,直接把这个写“范例”的作者当作骗子好了。
大规模的测试,产品化的测试,这是必需的。不要相信仅仅是为了掩饰一个特别方法随便写的所谓范例。即使是msdn上的通讯范例,大多数也是非产品化的。因为它如果按照产品设计必须有的要素来设计,初学者反而会“看不懂”。这就是一个现实矛盾。
服务器应该害是启动了的,服务器的ip是本机ip,端口号时一个随机可用的值。这是我的理解。
我把监听的代码贴上来,在程序加载方法里调用
ThreadStart myThreadStartDelegate = new ThreadStart(Listensing)
//创建一个用于监听的线程对象,通过代理执行线程中的方法myThread = new Thread(myThreadStartDelegate)
//启动线程
myThread.Start()
一下是监听方法
private void Listensing()
{
Socket socket = null
//获取本机上第一个可用的IP地址myIPAddress = (IPAddress)Dns.GetHostAddresses(Dns.GetHostName()).GetValue(0)
Random r = new Random()
while (true)
{
try
{
//随机产生一个0~65535之间的端口号
myPort = r.Next(65535)
//myPort = 8888
//创建TcpListener对象,在本机的IP和Port端口监听连接到该IP和端口的请求
tcpListener = new TcpListener(myIPAddress, myPort)
//开始监听,如果不出现异常,则说明IP地址和端口号可用
tcpListener.Start()
//显示IP地址和端口
ShowLocalIPAndPort()
//在信息窗口显示成功信息
ShowMyMessage(string.Format("尝试用端口{0}监听成功", myPort))
ShowMyMessage(string.Format("<message>[{0}]{1:h点m分s秒}开始在端口{2}监听与本机的连接", myIPAddress, DateTime.Now, myPort))
break
}
catch
{
//继续while循环,以便随机找下一个可用端口号,同时显示失败信息
ShowMyMessage(string.Format("尝试用端口{0}监听失败", myPort))
}
}
while (true)
{
try
{
//使用阻塞方式接受客户端连接,根据连接信息创建Tcpclient对象
//注意:AcceptSocket接受到新的连接请求才会继续执行其后的语句
socket = tcpListener.AcceptSocket()
//如果往下执行,说明已经根据客户端连接请求创建了套接字
//使用创建的套接字接受客户端发送的信息
NetworkStream stream = new NetworkStream(socket)
StreamReader sr = new StreamReader(stream)
string recieveMessage = sr.ReadLine()
int i1 = recieveMessage.IndexOf(",")
int i2 = recieveMessage.IndexOf(",", i1 + 1)
int i3 = recieveMessage.IndexOf(",", i2 + 1)
string ipString = recieveMessage.Substring(0, i1)
string portString = recieveMessage.Substring(i1 + 1, i2 - i1 - 1)
string messageTypeString = recieveMessage.Substring(i2 + 1, i3 - i2 - 1)
string messageString = recieveMessage.Substring(i3 + 1)
ShowMyMessage(ipString, portString, messageTypeString, messageString)
}
catch
{
//通过停止TcpListener使AcceptSocket方法出现异常
//在异常处理中关闭套接字并终止线程
if (socket != null)
{
if (socket.Connected)
{
socket.Shutdown(SocketShutdown.Receive)
}
socket.Close()
}
myThread.Abort()
}
}
}
http://topic.csdn.net/u/20100506/18/19b27fcf-af70-4016-a30c-10de342c3214.html
System.Net.WebException: 无法连接到远程服务器 --->System.Net.Sockets.SocketException: 由于目标计算机积极拒绝,无法连接。 127.0.0.1:80
在 System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
在 System.Net.Sockets.Socket.InternalConnect(EndPoint remoteEP)
在 System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket&socket, IPAddress&address, ConnectSocketState state, IAsyncResult asyncResult, Int32 timeout, Exception&exception)
--- 内部异常堆栈跟踪的结尾 ---
在 System.Net.HttpWebRequest.GetRequestStream(TransportContext&context)
在 System.Net.HttpWebRequest.GetRequestStream()
在 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
第一,准备做微商的你必须要考虑一个问题,那就是你所要面对的客户群是什么样的一个群体,你要卖的是什么,你的产品主要针对的是哪一个群体,列如:高中生,大学生或者是社会青年还是全职妈妈,这些都是要考虑的,因为只有你锁定了一个消费群体,你才可以更好的展开自己的营销之路,才可以去实施你的产品销售。新手微商怎么做
第二,为自己找一个好上家, 一个好的上家是可以对你的微商之路起到很大作用的,那么怎样的一个上家才算得上一个好上家呢?就是能够提供你优质货源的同时也愿意跟你分享或者培训你关于微商知识技能的人,因为有的微商上家只顾给你发货,后续的事就不管不问,我想每一个微商新人对于这样的情况也是很苦恼的吧,因为刚起步的你,需要一个好的引导,好的老师,能够找到一个愿意引导自己的上家是一件多么幸运的事,一个靠谱的上家,他的产品质量,专业知识,社交能力都是要被认可的,这样你才可以在营销的同时学到更多的知识,才能更快的融入到微商营销的轨道上。
新手微商怎么做
第三,发朋友圈动态,初做微商的你不要一天想着发产品广告,要有自己的思路,不要盲目的发,这样会很容易被自己的朋友屏蔽的,你可以换一个角度去思考这个问题 , 试着想一下,如果你自己的朋友圈是一个充满了广告产品的朋友圈,你的心情会是怎样的,会不会很烦躁甚至是都不想去看自己的朋友圈,我想这个是肯定的,包括我自己在内,我也不喜欢整天看到的都是广告产品的朋友圈,有的时候发现个别朋友一天发的太多,我也会去屏蔽别人,因为感觉真的很吵。那么怎样才可以更好的发朋友圈动态呢?
一定要记住不要多发,当然如果你做到了自己手上有很多客源的时候可以发很多,因为那个时候有很多的客服认识你需要你的产品,你每发一个产品你的客服都会去关注然后通过了解而向你购买,因为那个时候你已经取得了他们的信任,但是现在的你还不行,你要做的就是引起朋友圈里朋友的注意,要让他们注意你然后帮助你推广宣传,那么怎样才可以让他们注意你呢?
其实很简单,你除了每天发你的产品广告外,你可以发发自己的心情,自己认为快乐的事,比如:多晒晒自己的快乐,自己的幸福,自己的生活,也可以转发一些自己认为好的有建设性的文章,但不要发太多的鸡汤文,因为我们不是老师,鸡汤文大都是一样的内容一样的道理,没有谁愿意听别人的训导,你要让你的朋友感觉到你是一个有思想有灵魂的人,你要让自己的朋友圈充满生机,充满活力。
而不是一个只会复制产品广告转发产品广告的机器人,还有你可以让自己的客服发产品的使用反馈,拍照什么的,这样就能更有力的吸引其他客户,因为已经有人对你的产品认可了,还在犹豫的客户就会更果断的来和你购买,这样也可以提升别人对你的信任度,你在销售产品的时候也会更有说服力,切记不要发太多的广告,一天最好发三条就可以了,更不要一次性连发好多条广告,这样更容易让人反感甚至屏蔽你。
新手微商怎么做
第四,这是最重要的一点,你要对自己的产品足够了解,要自己亲自体验自己的产品,要做一个负责任的微商,要把自己的使用效果用图片的形式传达给你的客服,这样你可以得到客服的信任,同时也可以为自己加分,让更多的客服愿意相信你,切记不可卖自己都没有使用的产品,这样不出问题好,一出问题你就会失去你好不容易建立起来的客户关系,将得不到客服的信任,这是最重要的一点。
新手微商怎么做
第五,微商不只是通过手机,当然手机是很重要的,除此之外,你还可以更好的利用自己的电脑,要让电脑起到一个铺垫的作用,多去微博里,论坛里逛逛,发表一下自己的见解,这样就会有更多的人认识你,了解你然后通过你发表的文章来找到你,续而发展成为你的客户或者 是朋友,这样你就多了一个关注自己的人,多一个人就多一个希望,何乐而不为呢?V:liunian234
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)