日期:2014-05-20  浏览次数:20686 次

一个急迫的问题,大佬们抽点空帮我看看,小弟先谢谢了
我写了个程序 在我电脑上可以运行 而在老大电脑上运行不了。 我电脑没有代理服务器,老大电脑上用了代理(不用代理不能上网),我调试跟踪,发现是还是代理的问题,给为老大,大老门,是否有良策。
我贴部分代码给你们看
try
  {
  mailSendSock = new Socket(mailServerHost, 25);//用代理服务器后 运行到这里运行不下去了,而不用代理服务器不会出现这个问题
  outputStream = new PrintStream(mailSendSock.getOutputStream());//建立输入流
  inputStream = new BufferedReader(new InputStreamReader( //建立输出流
  mailSendSock.getInputStream()));
  serverReply = inputStream.readLine();
  if(serverReply.startsWith("4"))
  {
  //errorMsg = "Server refused the connect message : "+serverReply;
  return false;
  }
  }
  catch(NoRouteToHostException e)
  {
  sm.Error("网络连接失败");
  sm.sendEmail("");
  return false;
  }
  catch(ConnectException e)
  {
  sm.Error("连接失败检查IP地址");
  sm.sendEmail("");
  return false;
  }
  catch(NullPointerException e)
  {
  sm.Error("连接服务器失败");
  sm.sendEmail("");
  return false;
  }
  catch(Exception openError)  
  {
  openError.printStackTrace();
  close("Mail Socket Error");
  return false;
  }
   
  System.out.println("Succeed Connected to "+mailServerHost);
  return true;

------解决方案--------------------
防火墙穿透问题吧
------解决方案--------------------
等待高手的出现....
------解决方案--------------------
要代理服务器如(proxy)开放相应的端口吧
------解决方案--------------------
Java code
mailSendSock = new Socket(new Proxy(proxyType, proxyAddress));
mailSendSock.connect(inetSocketAddress);