[英]How to connect an application to a SQL Server using IP Adress in C#?
[英]C# TCP client does not connect to IP Adress
您好我正在使用Android手機Wi-Fi熱點創建網絡,然后使用C#連接到此熱點。
熱點的ipadress是:192.168.43.1。
首先,我通過筆記本電腦Wi-Fi連接到Wi-Fi熱點。
現在我正在使用C#代碼:
private void connectToServer()
{
try
{
TcpClient tcpclnt = new TcpClient();
Console.WriteLine("Connecting.....");
tcpclnt.Connect("192.168.43.1", 8001);
// use the ipaddress as in the server program
Console.WriteLine("Connected");
Console.Write("Enter the string to be transmitted : ");
String str = Console.ReadLine();
Stream stm = tcpclnt.GetStream();
ASCIIEncoding asen = new ASCIIEncoding();
byte[] ba = asen.GetBytes(str);
Console.WriteLine("Transmitting.....");
stm.Write(ba, 0, ba.Length);
byte[] bb = new byte[100];
int k = stm.Read(bb, 0, 100);
for (int i = 0; i < k; i++)
Console.Write(Convert.ToChar(bb[i]));
tcpclnt.Close();
}
catch (Exception e)
{
Console.WriteLine("Error..... " + e.Message);
}
}
但我總是得到這個例外:
錯誤.....無法建立連接,因為目標計算機主動拒絕它192.168.43.1:8001
嗨,經過一些搜索,我發現使用netstat在我的機器中找不到端口:
TCP 127.0.0.1:5037 admin-PC:65298 TIME_WAIT
TCP 127.0.0.1:5037 admin-PC:65299 TIME_WAIT
TCP 127.0.0.1:5037 admin-PC:65300 TIME_WAIT
TCP 127.0.0.1:5037 admin-PC:65301 TIME_WAIT
TCP 127.0.0.1:5037 admin-PC:65302 TIME_WAIT
TCP 127.0.0.1:5037 admin-PC:65304 TIME_WAIT
TCP 127.0.0.1:5037 admin-PC:65305 TIME_WAIT
TCP 127.0.0.1:49165 admin-PC:49436 ESTABLISHED
TCP 127.0.0.1:49263 admin-PC:49264 ESTABLISHED
TCP 127.0.0.1:49264 admin-PC:49263 ESTABLISHED
TCP 127.0.0.1:49265 admin-PC:49266 ESTABLISHED
TCP 127.0.0.1:49266 admin-PC:49265 ESTABLISHED
TCP 127.0.0.1:49436 admin-PC:49165 ESTABLISHED
TCP 127.0.0.1:49559 admin-PC:49560 ESTABLISHED
TCP 127.0.0.1:49560 admin-PC:49559 ESTABLISHED
TCP 127.0.0.1:51477 admin-PC:51478 ESTABLISHED
TCP 127.0.0.1:51478 admin-PC:51477 ESTABLISHED
TCP 127.0.0.1:55300 admin-PC:55301 ESTABLISHED
TCP 127.0.0.1:55301 admin-PC:55300 ESTABLISHED
TCP 127.0.0.1:61797 admin-PC:61798 ESTABLISHED
TCP 127.0.0.1:61798 admin-PC:61797 ESTABLISHED
TCP 127.0.0.1:61800 admin-PC:61801 ESTABLISHED
TCP 127.0.0.1:61801 admin-PC:61800 ESTABLISHED
TCP 127.0.0.1:61807 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:61809 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:61810 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:61811 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:61813 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63271 admin-PC:63272 ESTABLISHED
TCP 127.0.0.1:63272 admin-PC:63271 ESTABLISHED
TCP 127.0.0.1:63274 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63275 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63279 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63284 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63304 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63351 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63353 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63354 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63355 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63356 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63357 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63358 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63359 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63367 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63368 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63370 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63373 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63377 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63378 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63385 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63386 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63387 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63388 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63389 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63396 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:63462 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:64544 admin-PC:49333 TIME_WAIT
TCP 127.0.0.1:64545 admin-PC:64546 TIME_WAIT
TCP 127.0.0.1:64555 admin-PC:5037 TIME_WAIT
TCP 127.0.0.1:64557 admin-PC:5037 TIME_WAIT
TCP 127.0.0.1:64558 admin-PC:5037 TIME_WAIT
TCP 127.0.0.1:64919 admin-PC:5037 ESTABLISHED
TCP 127.0.0.1:65303 admin-PC:5563 SYN_SENT
TCP 192.168.1.34:64035 43.239.149.131:http TIME_WAIT
TCP 192.168.12.2:63262 192.168.12.101:22469 ESTABLISHED
我仍然讀了答案,但仍然得到這個錯誤。 這是我的android代碼:
public class MainActivity extends Activity {
private ServerSocket serverSocket;
Handler updateConversationHandler;
Thread serverThread = null;
private TextView text;
public static final int SERVERPORT = 8001;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
text = (TextView) findViewById(R.id.text2);
updateConversationHandler = new Handler();
this.serverThread = new Thread(new ServerThread());
this.serverThread.start();
}
@Override
protected void onStop() {
super.onStop();
try {
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
class ServerThread implements Runnable {
public void run() {
Socket socket = null;
try {
serverSocket = new ServerSocket(SERVERPORT);
} catch (IOException e) {
e.printStackTrace();
}
while (!Thread.currentThread().isInterrupted()) {
try {
socket = serverSocket.accept();
CommunicationThread commThread = new CommunicationThread(socket);
new Thread(commThread).start();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
class CommunicationThread implements Runnable {
private Socket clientSocket;
private BufferedReader input;
public CommunicationThread(Socket clientSocket) {
this.clientSocket = clientSocket;
try {
this.input = new BufferedReader(new InputStreamReader(this.clientSocket.getInputStream()));
} catch (IOException e) {
e.printStackTrace();
}
}
public void run() {
while (!Thread.currentThread().isInterrupted()) {
try {
String read = input.readLine();
updateConversationHandler.post(new updateUIThread(read));
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
class updateUIThread implements Runnable {
private String msg;
public updateUIThread(String str) {
this.msg = str;
}
@Override
public void run() {
text.setText(text.getText().toString()+"Client Says: "+ msg + "\n");
}
}
}
根據您獲得的異常,問題不在您的代碼中,而是在連接本身。 這可能是防火牆問題,也可能是在不同端口上偵聽的進程。
編輯:OP發現他遇到的問題是在IIS中, 重置IIS解決了他的問題 。 要重置IIS,您可以手動或通過命令提示符執行此操作:運行(Win + R) - >打開cmd(具有管理員權限) - >鍵入“iisreset”(不帶“”)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.