Socket tempSocket;
try
{
    IPAddress addr = IPAddress.Parse(ip);
    IPEndPoint endpt = new IPEndPoint(addr, port);
    tempSocket = new Socket(endpt.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
    tempSocket.Connect(endpt);
}
catch
{
    OnDisconnected("Connection Error");
    return false;
}
我的控制台程序不断崩溃,并显示错误消息,指出存在套接字异常,因为目标机器主动拒绝连接。这很好,因为有时另一端没有运行,这是正常的。我的问题是,如何正确处理这个问题,以便程序不会崩溃,而只是返回 False?我尝试用谷歌搜索这个,但找不到任何东西。 

您的程序不会因您显示的代码而“崩溃”;即,如果您捕获异常并从函数中返回 false。
您看到的窗口(“异常助手”)是可选的,可以帮助您进行调试,如果您在 Visual Studio 之外运行程序,或者关闭在任何异常时始终中断代码的选项,则不会显示该窗口。它可以在 Debug => Exceptions 中配置。