C# 套接字编程
我试图在c#中创建一个服务器应用程序。在代码中,我使用TcpListener类C# 套接字编程,c#,sockets,C#,Sockets,我试图在c#中创建一个服务器应用程序。在代码中,我使用TcpListener类 TcpListener t = new TcpListener(5555); t.Start(); 但是,它提供的错误是:类、结构或接口成员声明中的令牌“(”无效 是否需要其他参考资料? 请帮忙 namespace WindowsApplication1 { public partial class lanmessenger : Form { [DllImport
TcpListener t = new TcpListener(5555);
t.Start();
但是,它提供的错误是:类、结构或接口成员声明中的令牌“(”无效
是否需要其他参考资料?请帮忙
namespace WindowsApplication1
{
public partial class lanmessenger : Form
{
[DllImport("user32.dll")]
static extern bool HideCaret(IntPtr hWnd);
public lanmessenger()
{
InitializeComponent();
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
StringBuilder sb = new StringBuilder(this.textBox1.Text);
sb.AppendLine(this.textBox2.Text);
this.textBox1.Text = sb.ToString();
this.textBox2.Text = "\0";
HideCaret(this.textBox1.Handle);
}
private void textBox1_MouseClick(object sender, MouseEventArgs e)
{
HideCaret(this.textBox1.Handle);
}
StreamWriter streamWriter;
StreamReader streamReader;
NetworkStream networkStream;
TcpListener t = new TcpListener(5555);
t.Start();
}
}
这是到目前为止的完整源代码。我找不到错误。对我来说很好。您需要在代码中添加以下行
使用System.Net.Sockets;对我来说很好。您需要在代码中添加以下行
使用System.Net.Sockets;如果您在项目中有对System.dll的引用,并且对System.Net.Sockets命名空间有一个using语句,那么您提供的代码没有问题 看起来你有一个太多的()躺在某处 对t.Start()的调用必须在类的方法中。这是错误的:
class lanmessenger
{
...
TcpListener t = new TcpListener(5555); // ok to initialize like this
t.Start(); // wrong...put this in a method
}
这是正确的:
class lanmessenger
{
TcpListener t = new TcpListener(5555); // ok to initialize like this
public lanmessenger
{
InitializeComponent();
t.Start(); // put it here
}
}
如果您在项目中有对System.dll的引用,并且有System.Net.Sockets命名空间的using语句,那么您提供的代码没有任何错误 看起来你有一个太多的()躺在某处 对t.Start()的调用必须在类的方法中。这是错误的:
class lanmessenger
{
...
TcpListener t = new TcpListener(5555); // ok to initialize like this
t.Start(); // wrong...put this in a method
}
这是正确的:
class lanmessenger
{
TcpListener t = new TcpListener(5555); // ok to initialize like this
public lanmessenger
{
InitializeComponent();
t.Start(); // put it here
}
}
您是否忘记将该代码放在某个类的某个方法中?您是否忘记将该代码放在某个类的某个方法中?是的,这里的问题只是该代码不在您的类中的某个方法中: t、 Start()
这就是给您带来特定编译器错误的原因。您不能在类本身中调用方法,而必须在其他方法中调用。从语法上讲,其他东西在它所在的地方是可以的。是的,这里的问题是,此代码不在您的类中的方法中: t、 Start()
这就是给您带来特定编译器错误的原因。您不能在类本身中调用方法,而该方法必须在其他方法中。从语法上讲,其他东西在它所在的位置是可以的。您确定不想在服务器应用程序中使用WCF吗?您确定不想在服务器应用程序中使用WCF吗请把完整的源代码和包含这个方法的类放在一起,伙计们。非常感谢。我真是太傻了。我知道我们说的是“完整”源代码,但我认为没有必要包含using语句,所以我把它们拿了出来。请把完整的源代码和包含这个方法的类放在一起。伙计们,谢谢。我真是太傻了。我知道我们说的是“完整”源代码,但我不认为有必要包含using语句,所以我将其删除。也这样做了..我不知道问题可能在哪里。是否需要对visual studio中的默认设置进行任何更改?也这样做了..我不知道问题可能在哪里。是否需要对b进行任何更改e在visual studio中设置为默认设置??这就是它。它是Start()调用的开始参数。这就是它。它是Start()调用的开始参数。