1. 将“System.Configuration.ConfigurationSettings.AppSettings”替换为ConfigurationManager,引用了System.configuration,但是“ConfigurationManager”还输出不来?
答:在项目上面 右键 添加引用 选择.net 找到 System.configuration 点确定 在输入ConfigurationManager时之前 要添加命名空间using System.Configuration.
2. C#编译时出现“不安全代码只会在使用 /unsafe 编译的情况下出现”错误的解...
原因是:在编译的代码里面有不安全类型unsafe方法或类!解决方法:将项目属性页中生成下的“允许不安全代码”复选框打上对勾即可,方法如下:项目属性对话框->生成->允许不安全代码块 选中即可。
3. c#中加入了引用,但是一编译,引用就会消失,造成没有命名空间的错误
解决方法:原来关键点就是.NET Framework 4 client Profile 只是.NET Framework 4 的一个精简版。下次碰到到不了命名空间的奇异事件时,首先该检查一下编译的目标框架是 不是选择了client Profile 版本。改成.NET Framework 4就可以了。
4. 在主线程中添加thread.join()方法导致主线程死机。
解决方法:再添加一个线程,将thread.join()放在该线程里,再有主线程控制该线程即可,这样主线程就不会死机。
5. System.Net.IPAddress[] addressList = Dns.GetHostByName(Dns.GetHostName()).AddressList;
iph.ip_srcaddr = Convert.ToUInt32(IPAddress.Parse(addressList[0].ToString()).Address);
当你连接NAT时,addressList[0].ToString()).Address并非自己的本地地址,所以mysocket.IOControl(IOControlCode.ReceiveAll, inValue, outValue);时会报错10045。
解决方法:addressList[1].ToString()).Address,将0变为1,使得地址为本地地址。