今天給客戶做維護的時候碰到乙個怪問題,客戶機不能通地dhcp得到ip位址,啟用禁用網絡卡後本地連線直接顯示受限制,後來我就手動設定了乙個固定ip,執行cmd ping測試了乙個,可以ping 通公網ip 位址,但是ping網域名稱直接顯示網域名稱無效,請檢查。
對於這種問題我的第一反應就是dns有問題,檢查了dns沒有問題,別人也能正常使用這個dns,難道是hosts檔案出問題了,檢視hosts檔案也沒有問題。暈了.........................
the following error occurred when renewing adapter 本地連線:在乙個非套接字上嘗試了乙個操作
暈倒,還是第一次碰到這種問題,不過還好至少看到了乙個錯誤資訊,使用google了一下,找到解決方法:
以下是引用」部分說明
錯誤:在乙個非套接字上嘗試了乙個操作症狀:
可以登入qq,不能開啟網頁
原因:
如果 winsocks 庫或 tcp/ip 堆疊損壞,則可能會發生此問題。
解決方案:
需要重灌tcp/ip協議
引用「如何重灌tcp/ip協議
1、開始——執行——regedit.exe,開啟登錄檔編輯器,刪除以下兩個鍵(請先備份這兩個鍵值再刪除):
hkey_local_machine\system\currentcontrolset\services\winsock
hkey_local_machine\system\currentcontrolset\services\winsock2
2、用記事本開啟c:\windows\inf\nettcpip.inf檔案,找到:
[ms_tcpip.primaryinstall]
characteristics = 0xa0 <------把此處的0xa0改為0x80 儲存退出
3、開啟本地連線的tcp/ip屬性---新增協議——從磁碟安裝——瀏覽找到剛剛儲存的nettcpip.inf(%winroot%\inf\nettcpip.inf)檔案,然後選擇「tcp/ip協議」(不是選擇那個tcp/ip 版本6)。
經過這一步之後,又返回網路連線的視窗,但這個時候,那個「解除安裝」按鈕已經是可用的了。點這個「解除安裝」按鈕來把tcp/ip協議刪除,然後重啟一次機器。
4、重啟後再照著第3步,重新安裝一次tcp/ip協議便可。
5、再重啟一次,這時應該可以了,可以照著需要,設定一下ip位址。
重啟後檢視本地連線,已經獲取到了ip地地,上網測試,問題解決。
C 無法立即完成乙個非阻擋性套接字操作
今天使用c 的socket做乙個監聽端,同步socket,超時設定為5秒 recv client.receive data client.receivetimeout 5000 執行過程中會出現異常 無法立即完成乙個非阻擋性套接字操作 socket預設情況下即為阻塞模式,見msdn ms help ...
使用socketserver寫乙個套接字程式
使用socketserver寫乙個套接字程式來實現多執行緒,即伺服器端可與多個客戶端進行通話,首先伺服器端程式為 usr bin python coding utf 8 import socketserver class mytcphandle socketserver.baserequesthan...
在必須返回乙個物件時,不要去嘗試返回乙個引用
一旦程式設計師把注意力都轉向了物件傳值方式隱含的效率問題 參見第 20 條 時,許多人都變成了極端的 改革運動者 他們對傳值方法採取斬草除根的態度,在他們不屈不撓追求傳遞引用方式的純粹性的同時,他們也犯下了致命的錯誤 有時候傳遞的引用所指向的物件並不存在。這決不是一件好事情。請看下面的示例,其中的 ...