首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TCP连接阻止我的WPF窗口?如何获得WPF窗口?

TCP连接阻止我的WPF窗口?如何获得WPF窗口?
EN

Stack Overflow用户
提问于 2013-04-15 07:16:59
回答 1查看 991关注 0票数 0

我开发一个应用程序,而开发则有一个问题。所以我想解决这个问题。我使用的是TCP服务器和客户端概念。我写代码写得很好。但是封锁我的WPF窗口。我该怎么解决呢?有人能帮我吗。

我的代码

代码语言:javascript
复制
private void LoadingInboxMessage(){
try {
  InboxTCPServer("127.0.0.1",1001);
  string []header = new string[]{"Name","Mobile","Address"};
  SQL sql = new SQL();
  MySqlConnection con = sql.ConnectServer("127.0.0.1","root","''","smsdb");
  if(con!=null) {
    MySqlDataReader dr = sql.SQLFetching(con,"SELECT * FROM receivedetails");
    CreateFlowDocument cfd = new CreateFlowDocument("inboxFlow");
    this.InboxFlowDocument.Document = cfd.CreateTable("inboxtable",header,dr);
 }
     else {
    MessageBox.Show("Not Connectioned");
    Application.Current.Shutdown(0);
 }
} catch(Exception e) {
   MessageBox.Show(e.Message);
     }
}

public void InboxTCPServer(string ipv4, int port){
try {
  IPAddress ip = IPAddress.Parse(ipv4);
  TcpListener serv = new TcpListener(ip,port);
  serv.Start();
  Socket s = serv.AcceptSocket();
  byte[] b = new byte[1000];
  int k = s.Receive(b);
  MessageBox.Show(b.ToString());
} catch(Exception e) {
    MessageBox.Show(e.Message);
}
}

请“救救我”

EN

回答 1

Stack Overflow用户

发布于 2013-04-15 07:25:53

您可能需要查看C#异步TCP/IP管理。我认为您的问题是,您挂起您的代码,等待在同一个线程中的连接,而这个线程正在呈现UI,导致一个没有响应的程序。下面是几个例子的链接:

  • 异步客户端套接字示例
  • 异步服务器套接字示例
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16009648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档