在VS2010上依据接口,写了个WiFi共享软件,在Win7旗舰班上正确无误,而在却在Win7家庭版上运行不了,报“已停止工作”错误。
解决方法:
1、下载安装vs2010对应的.Net平台:Microsoft .NET Framework 4 (Standalone Installer)
http://www.microsoft.com/en-us/download/confirmation.aspx?id=17718
2、开始→运行→输入:services.msc 点确定,或按下回车键(Enter)打开服务列表。找到 WLAN AutoConfig 服务,启动类型已经是自动,但是该服务却是停止的,单击启动
软件正确无误,却报已停止工作等错误,要结合软件,从系统中找问题。建议首先看相关服务是否启动,是所有exe都报还是唯独单个报。。。
尝试但未能解决问题的方法如下:
法1:下载vs2010对应的.Net平台:Microsoft .NET Framework 4 (Standalone Installer)
http://www.microsoft.com/en-us/download/confirmation.aspx?id=17718
法2:右击计算机-属性(如没有计算机选项,可以让用户在左下角开始-计算机-属性也可),选择左上方的高级系统设置。选择“高级”,再选择性能栏里的“设置”,选择“数据执行保护”,选择“为除下列选定程序之外的所有程序和服务启用DEP(U)”,再点击下方的“添加”从硬盘中选中该程序即可。
法3:目标机的语言设置为主机语言(中文简体)都为设置non unicode。首先,点击“开始菜单”中的“控制面板”;在“控制面板”窗口中,找到“时钟、语言和区域”下的“更改显示语言”;如果你弹出来的窗口如下,那么恭喜你,你的电脑安装了不止一种显示语言,直接更改即可,在下拉菜单中选择你更换的语言(中文简体)。格式、管理下的也是中文简体。
法4:将原代码工程引用的dll复制一份到exe可执行文件目录:
Best thing to do is to go back to your project. Click the "Show All Files" icon on the toolbar in the Solution Explorer window. That now shows the References node. Expand it and select the PowerPacks reference. In the Properties window, change the Copy Local property to True.
Rebuild and your build directory now will have a copy of the DLL. Copy it along with the EXE onto the target machine.
Here is the URL to download Microsoft Visual Basic Power Packs 10.0
http://go.microsoft.com/fwlink/?LinkID=145727&clcid=0x804
法5:将UAC设置为最低
法6:右击.exe可执行软件,设置其兼容性
参考网址:
1、http://connect.microsoft.com/VisualStudio/feedback/details/642206/net-framework-3-5-windows-service-crashes-with-clr20r3-net-runtime-error
后来将源码工程考到目标机上进行测试,经调试才找出错误原因:是无限自动配置服务未启动。
参考解决方法:
1、开始→运行→输入:services.msc 点确定,或按下回车键(Enter)打开服务列表。找到 WLAN AutoConfig 服务,启动类型已经是自动,但是该服务却是停止的,单击启动,弹出 Windows 无法启动WLAN AutoConfig 服务。错误1747:未知的身份验证服务。出错提示。
2、开始→运行→输入:regedit 点击确定,或按下回车键(Enter)打开注册表,定位到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Ndisuio查看其DisplayName 键值是NDIS Usermode I/O Protocol 如缺损,可新建。
3、双击右边窗口的 Start 编辑DWORD值(如没有可新建),双击打开,修改数值数据为2,点击确定,按F5键刷新。
4、开始→运行→输入:CMD 点击确定,或按下回车键(Enter)打开命令提示符。输入:netsh winsock reset 回车执行开启无线服务命令。
5、重启电脑,确认设置,问题解决。
命令解析:
netsh是:能够操作几乎所有网络相关设置接口的命令,比如:设置IP,DNS,网卡,无线网络等。
Winsock是:系统内部目录,Winsock是Windows网络编程接口,winsock工作在应用层,它提供与底层传输协议无关的高层数据传输编程接口。
reset:是对Winsock的重置操作。
netsh winsock reset命令:作用是重置 Winsock 目录。如一台机器上的Winsock协议配置有问题,将会导致网络连接等问题,就需用这条命令来重置Winsock目录,恢复网络。此命令可重新初始化网络环境,解决由于软件冲突、病毒原因造成的参数错误问题。当执行完winsock的命令重启计算机后,需要重新配置IP。