Author Archives: 璉璉

[WU] 升級 Windows 10 1803 雜記


週四比較閒,早上先下載 Win10 影像檔,打算中飯的時候更新。

到 MSDN Subscription 網站搜尋,Win10 1803 跟 Win10 1709 命名方式又不同,Win10 1709 除企業版外,統合在一片,Win10 1803 則分成消費者版跟商用版。

所以專業版、企業版在商用版內,

企業版下載這張光碟

企業版下載這張光碟

而家用版、專業版則在消費者版內。

家用版下載這張光碟

家用版下載這張光碟

我習慣除了下載下來外,另外先把光碟燒好,以免不時之需。從命名來看,都是升級光碟,不能空機安裝,有沒有燒起來其實還好,不過趕不及午餐前更新,午餐時還在燒光碟,所以吃完午餐午休前開始跑更新,12:30 開始跑,還在 Windows 畫面約跑到 13:30 (87%) 開始重新開機,整個跑完大概到 15:00 ,其他同事都沒我跑的這麼久,可能我有 Hyper-V / VS2015 / VS2017 / MSSQL 2016 等大型軟體吧。

這樣的硬體要跑兩個半小時

這樣的硬體要跑兩個半小時

上次跑 Win10 1709 整個 Hyper-V 網卡都被重置,Win10 1803 也一樣,設定都跑了,停用的網卡也被重新安裝啟用了。

IE 所有 Cookies 都被清除,所以所有網站都得重新登入。

剛開機畫面顯示:

從 Win8 以後就不能沒有它

從 Win8 以後就不能沒有它

重設完成後就正常執行。

另外通知主動告知:

封包監測對開發人員很重要

封包監測對開發人員很重要

到微軟網站還沒看到 Microsoft Network Monitor 3.4 針對 Win10 1803 的更新放出來。

剛開完機 OS CPU / 硬碟 Loading 很重,急著在 Outlook 2016 找信找不到,還重建索引,結果一看 Loading ,近乎滿載,所以剛重新開完機後,關注一下 Loading 是否仍然偏高,偏高時可能會發生部分功能不正常。

重開兩次 Skype 桌面版 7.41 Loading 很高,明日開機後再關注看看。

[05/04 09:17]

Skype 桌面版還沒點開,還在開始工具列上最小化執行時還正常,一點開 CPU Loading 就爆表,如下圖,訊息區出不來,全白,滑鼠一直呈現轉圈圈的狀態,比對工作管理員,SkypeBrowerHost.exe 一下變很多個,CPU Loading 從 6% 衝到 37% 後上下跳躍。

Skype 好忙

Skype 好忙

最後移除 7.41 後,再重新安裝 7.41 就正常了,SkypeBrowerHost.exe 正常運作時,只有兩個。

[05/04 14:30]
設定在 Excel 開啟舊檔下的釘選都被清掉了,可能是帳號重置造成。

[05/04 16:21]

鼎新 Workflow 開啟時可能會發生錯誤,有些正常有些異常,例如如下錯誤畫面:

Workflow 錯誤畫面 1

Workflow 錯誤畫面 1

確定後約過 30 秒再跳另一個畫面:

Workflow 錯誤畫面 2

Workflow 錯誤畫面 2

重新安裝後可恢復正常運作。

[05/04 18:05]

忽然注意到一直在做安全稽核,大概吃掉 12% CPU ,吃了一下午。

安全稽核事件

安全稽核事件

大概 7 分鐘左右寫入事件檢視器 37,065 筆,持續覆蓋舊紀錄,真正要查事件都別查了。看起來是每個帳號輪完一次再繼續,不知道幹嘛,下周上班再查可能問題。

[05/07 10:22]

參考這篇:

Fix WmiPrvSE.exe WMI Provider Host High CPU Usage In Windows 10

https://usefulpcguide.com/18548/wmiprvse-exe-wmi-provider-host-high-cpu-issue/

裡面的步驟有些被阻擋,最後有提到移除不相容軟體,我把 Microsoft Network Monitor 3.4 移除就正常了… 事件檢視器的安全稽核就沒有一直塞 WmiPrvSE.exe 的 4798 事件了。

[05/11 14:21]

升級 1803 後,從 Hyper-V 管理員就無法連線本機伺服器,想先從 systeminfo 檢查起,結果 systeminfo 也無法跑:

systeminfo 不能執行

systeminfo 不能執行

systeminfo /? 可以正常執行,我懷疑是升級過程中某些檔案受損或權限錯誤造成,但是不確定什麼出問題了。

參考這篇來掃瞄檢查系統狀況:

https://support.microsoft.com/zh-tw/help/929833/use-the-system-file-checker-tool-to-repair-missing-or-corrupted-system

系統健康掃描

系統健康掃描

可以正常跑完。

用新增移除元件,把 Hyper-V 移除後,重新開機,再新增元件加回,再重新開機,還是無效。

也參考這篇重新安裝 Hyper-V:

https://docs.microsoft.com/zh-tw/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v

也是沒有效果。

整個 1803 升級光碟重新跑一次還是一樣,反而回到一開始狀況,Skype / ERP 等不正常,最後只好 Format 掉 C 碟重灌。

只格式化掉 C 還不能直接重灌,最後整顆清乾淨重灌,清乾淨重灌後,我懷疑應該是當初自動建成 GPT ,所以只砍 C 不行,要把系統保留區也砍掉磁區,然後重新新建磁區讓系統分配,才能保留資料碟。1803 空機重灌預留的保留區約比 1607 大,約為 550 MB 左右~

重灌完後,有一個 .Net framework 2.0 的程式會閃退,參考這篇:

[WU] 關於 .Net framework 2.0 2016/03 的安全性更新

同事發現裝了 Intel® 驅動程式與支援助理後可正常執行:

https://www.intel.com.tw/content/www/tw/zh/support/detect.html

我先裝起來後,並沒有更新任何驅動程式,可將該 .Net framework 2.0 的軟體正常跑後,再移除Intel® 驅動程式與支援助理,避免沒事就掃描驅動程式吃資源,該 .Net framework 2.0 的軟體仍可正常跑。

我自己不太用Intel® 驅動程式與支援助理,因為我沒 Intel 內顯,所以只掃得到無線網卡跟藍芽,AHCI、Chipset 都得自己找,所以乾脆全部自己上 Intel 網站下載更新。

目前我的 Win10 1803 x64 企業版終於正常運作。

[05/14 16:21]

在論壇上有人說 RDP 會閃退,我也碰上了。

我連到 Win7 一直閃退,直接從 Win7 看事件檢視器,有正常登入又被踢,後來連線 Win2008r2 有跳錯誤訊息才知道問題在哪。錯誤訊息為:

發生驗證錯誤。
不支援要求的功能
遠端電腦: xxxx
這可能是因為 CredSSP 加密 Oracle 補救。
如需詳細資訊,請參閱 https://go.microsoft.com/fwlink/?linkid=866660

參考連結:

CVE-2018-0886 的 CredSSP 更新 https://support.microsoft.com/zh-tw/help/4093492/credssp-updates-for-cve-2018-0886-march-13-2018

基於安全理由,Windows Update 後不能透過遠端桌面連結到不安全的 Server ,是個雙向的問題,簡單點就把所有的 Windows 都更新到最新,但是我的目標還包含沒更新的 WinXP/2003/2008/7/2008r2 ,所以直接依據上面那篇,把:

HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters
AllowEncryptionOracle=2
(DWORD 32 bits)

或著透過群組原則改也可以:

gpedit.msc 群組原則修改

gpedit.msc 群組原則修改

改完 RDP 就能暢通舊版 Windows 了。

廣告
Categories: 工作點滴 | 標籤: | 1 則迴響

[Hyper-V] Win10 1709 執行 WinXP


公司有些舊的 VB6 程式,考慮到 DLL Hell 下,是放在 WinXP SP2 虛擬機上開發的,沒錯,SP2 ,這樣碰上 DLL Hell 的機率才能降低。

隨著 OS 演進,從 Win7 的 Virtual PC 、轉變到 Win8 的 Hyper-V ,最後到 Win10 的 Hyper-V 。

我在 Win10 1703 還用過這個 WinXP 客體,還用來做這篇的 Hyper-V Loopback 速率 10 Gbps 測試:

[Hyper-V] 在 Visual Studio Emulator For Android 我的虛擬網路設定

升級 Win10 1709 後,這兩天有需求要維護舊的 VB6 程式碼,才啟用 Hyper-V 管理員打算啟用影像檔,這算是升級 1709 後第一次開 Hyper-V。

打開 Hyper-V 管理員,居然找不到這台虛擬機?重新載入虛擬機跳錯,說原先設定檔載入失敗,反正虛擬硬碟都還在,就重新開新的虛擬機拉虛擬硬碟進來,第一次忘了 WinXP SP2 不支援 UEFI,選了第二代模擬機,一直卡在開機說不支援,只好把虛擬機砍掉重練,改用第一代模擬機,之後加入 Microsoft Loopback 虛擬網卡、ReomteFX 3D 虛擬顯卡,從 Win10 1703 遺留下來的 Microsoft Loopback 虛擬網卡加入後顯示錯誤,最後只好把這張虛擬網卡砍掉重建,重新加入虛擬機後,就能正常開機了,重建以後的虛擬機版本顯示為 8.2 ,比 1703 留下一堆 Android 虛擬機 8.0 高兩個小版本。

但是開機後,顯示有些虛擬裝置不支援,就想找出 Win8 Hyper-V 內有的 vmguest.iso 。

找到的大部份資料,是說 Win10 的 Hyper-V 已經不支援 WinXP/Win2003 了…

Hyper-V 整合元件更新 Windows 10 或 Windows 伺服器 2016年為基礎的主機上執行的 Windows 虛擬機器 https://support.microsoft.com/zh-tw/help/3071740/

ㄜ,要不是先前有寫網誌,確定我的虛擬機是在 Win10 1703 下跑,我也比對虛擬硬碟檔案最後存取日期 (我比對備份檔) ,的確是我寫網誌的那天,我都要懷疑我有老年癡呆症了,但是我還真想不起來,Win10 1703 下,我有做啥調整… (我懷疑可能沒加入 RemoteFX 3D 虛擬顯卡?)

過去不須追憶,繼續從網海翻文,找到這篇:

Manage Hyper-V Integration Services https://docs.microsoft.com/zh-tw/windows-server/virtualization/hyper-v/manage/manage-hyper-v-integration-services

看起來只要有虛擬光碟就能解決,這不廢話。

又看到這篇:

FAQ: Windows Server 2016 and Hyper-V Integration Services https://rlevchenko.com/2017/02/18/faq-windows-server-2016-and-hyper-v-integration-services/

說到,只要有 Win2012 R2 裡面的 vmguest.iso 就可以,剛好公司有台 Win2012 R2 ,從裡面抓出 vmguest.iso ,再跟這個網站的 vmguest.iso (vmguest_nov172.zip) 比對,除了網站上為英文的 setup.exe 外,其他檔案日期版本相同,當然以安全來源優先,使用公司的 vmguest.iso 。

安裝 vmguest 中

安裝 vmguest 中

然後就正常更新了…

感嘆微軟總會逼走使用者,打算把這台虛擬機遷移到 VirtualBox :

https://www.virtualbox.org/wiki/Downloads

正好碰上 5.2.8 在 4/17 釋出,Windows 版本尚未準備好:

VirtualBox

VirtualBox

算了,只好下次再搬家,反正現在能用了。

Categories: 工作點滴, 技術分享 | 標籤: | 發表留言

[Modbus] 保護主義下的通訊協定設計,造成應用的困擾


某國內上市以羅馬字母為名的科技大廠,以下簡稱 D,2011 新出的太陽能逆變器 (以下簡稱 Inverter) 通訊協定推測是基於保護自家監測系統設計出來。

這不是技能問題,而是故意為之。

並聯型的 Inverter 功能是將太陽能板的直流電轉換為交流電,併入台電電網供電。

在國際規範有相關的規定,跟監測相關的是 1998 編訂的 IEC 61724,在 2017 有更新版釋出,1998 的國際規範要求的不多,就要求要有 EIA-485 及 9600 bps 的支援,監測項目則有交直流電壓、電流、功率、頻率、累積發電量等規定。

由於近年來太陽能產業技術快速發展,又隨時有新產品上線、舊產品停產等變化,而太陽能板保固是 25 年,Inverter 保固 5 年,必然產生 Inverter 需要替換的問題,而 IEC 相關規定只有大方向,因此近年民間超過 100 家太陽能廠商成立協議組織,共同訂定 SunSpec 相關規範,其中就包含 Inverter 通訊協定除使用 Modbus 外,並要求通訊位置列表的一致性。

好比你今天電腦內的硬碟故障,你隨時可以買一顆新硬碟取代,遵守 SunSpec 通訊協定的,你只要設定好 Inverter 參數,就可以正常上線,不會影響到你既有系統的運作。

D 廠牌早期的 Inverter 功率小,通訊雖然使用 Modbus ,但 ID 只能使用 1 ~ 31 ,通訊協定只有 2400 bps ,早期技術欠佳可以理解容忍。

2011/2014 出的新產品,裡面最神奇的地方就是透過通訊協定設計,形成技術障礙,讓大部分設備均無法支援。

一般來說,Modbus 通訊通常只要讀資料,除維護外,不輕易寫入設備。因此大部分的工業設備在設計上,都是透過設定讀取對照表來取得對應數據。

D 廠牌利用一個奇異的邏輯:

在 800 位置分別寫入目前項目 (0, 1, 2, 48, 49)

可在 1055 連續位置分別讀取 (AC1, AC2, AC3, DC1, DC2) 的目前項目、電壓、電流、功率、頻率 等資訊。

沒錯,要寫入、讀取、判讀目前項目、計算平均、累加。

這對自己有能力開發軟體的系統商其實不難,但是會破壞原先通用架構的邏輯,我的作法是加入動態原始碼支援方式處理。

VB6 版本的透過 Script Control ,載入我加密過後的 VBScript (可選擇使用 javascript)

VBNET 版本則是透過動態編譯方式處理。(我網站上有動態編譯原始碼)

但沒能力開發的系統商,既有系統或工業設備無力支援這個複雜的邏輯,就變成必須購買 D 廠牌提供的監控套件,買了後還不知道該怎樣整合。

D 廠牌不是沒能力處理通訊協定,以下情況可以說明之:

  1. 舊版 2400 bps 的通訊對照表正常。
  2. 2013 D 廠牌替斯奈德 OEM 的 Inverter 通訊對照表正常,硬體相同,只有差韌體。
  3. 2017 版的韌體支援 SunSpec ,但只對國外銷售,內銷想買還不出貨,只能買到奇怪通訊協定的版本。
  4. D 廠牌有其他工業設備、UPS 都屬正常通訊對照表。

早先國內太陽能案場多數 500 kWp 以下,2017 起,逐漸邁向 2 MWp 以下為大宗,當規模增加後,自然設備就會分散布置,485 雖然有很多方式分散式讀取,但穩定度畢竟不如光纖網路,因此分散式的環境下,我會使用 Modbus TCP Gateway 來將網路訊號轉換成 Modbus RTU 。

這裡面又發生了很瞎的狀況。

Modbus RTU 就像教室裡面只能有一個老師 (Master),老師上課的時候就會喊 3 號 (Slave),你來唸下面這段課文,3 號就會開始唸。但教室裡面不能同時有兩個老師,或是說兩個老師不能同時發命令。

Modbus TCP 就像是多個教務組員隨時透過電話 (Gateway) 打給老師詢問學生狀況,老師如果知道可以立即回覆,老師不知道可以問學生,老師要不要問學生就決定快取 (Cache) 時間有多長。

由於 D 廠牌設計很瞎的通訊協定造成 AC1/AC2/AC3/DC1/DC2 都在同一位置,因此在快取情形下,就可能發生問 DC1 時,還在回應 AC1 。

大部分 Cache 是全自動不可設定,還好我使用泓格的有調整 Read Cache 毫秒數,預設為 980ms ,0 ms 為停用,我改設定為 0 ms ,整個系統就能正常運作,當然,基本上就變成把 Modbus TCP 當 Modbus RTU 在用了。

謠傳,下半年或明年起,國內各太陽能案場需使用國產的 Inverter ,我對於保護主義尚能接受,但我只有一個要求,你他媽的至少要支援 SunSpec 這類國際規範,不接受胡搞瞎搞的廠牌。

註:

VB6 呼叫 VBScript 可參閱下面兩篇:

  1. [VBScript] VB6 Variant 變數傳遞給 VBScript 的相容檢討
  2. [VBScript] 傳遞陣列到 VB6 的物件

動態編譯可參考:[VB2005] 程式碼動態編譯執行引擎(模擬 Script Control)

Categories: 工作點滴, 技術分享 | 標籤: | 發表留言

[Stat] 數值 常態分佈累積機率函數 比較


最近開始整理水文統計網頁,打算重新用 ASP.NET 再寫一遍。 (關於 水文統計 – 線上分析 網頁)
最早的程式碼使用 Quick Basic 4.5 開發,是大四上 (1993) 修水文統計時開始寫的,當時以周文德[1]水文學原文為主。
念博一前半年 (2000) 的時候改寫成 ASP,採用 VBScript,那時工作要做動態網頁,所以當練功將大四的程式碼拿來改。

開始改寫時,想說精益求精,就開始把相關數值模型重新 research 。

參考維基百科[2] 的內容,原來數值模型還有好幾種,興起比較的意圖。

先用原先周文德水文學的方程式係數找到原作者跟年分[3],分別把方程式使用 Excel 2013 VBA 寫成函數比較,另外加入 Excel 內建的 Excel NORM.S.DIST 函數一起比較,如下表:

標準差 1 2 3 4 5 6
Wiki 表 0.8413447460685000 0.9772498680520000 0.9986501019685000 0.9999683287580000 0.9999997133485000 0.9999999990135000
Excel NORM.S.DIST 0.8413447460685430 0.9772498680518210 0.9986501019683700 0.9999683287581670 0.9999997133484280 0.9999999990134120
Abramowitz and Stegun, 1965
周文德水文學
0.8411238352705170 0.9774369986442540 0.9984208362961290 0.9999107486493130 0.9999941679910000 0.9999995054414810
Zelen and Severo, 1964 0.8413447404219760 0.9772499379836130 0.9986500327776380 0.9999683139654060 0.9999997128950000 0.9999999990098780
Hart, 1968 0.8413447460685430 0.9772498680518210 0.9986501019683700 0.9999683287581670 0.9999997133484280 0.9999999990134120
Marsaglia, 2004 0.8413447461005850 0.9772498680966180 0.9986500987983220 0.9999401630918050 0.9935899936665050 0.8832228594191580

由於不知道正確數值該多少,所以從維基百科[2]的表格做為比對依據,網頁上的數值位數有限,拿來跟 Excel 函數比對,假定 Excel 函數是正確的。

Marsaglia 使用泰勒級數展開,初步測試,17 項以上,小數點就沒有太大的變化,所以使用 20 項,2*20+1 = 41 ,x 的最高次方項為 x^41 。做到泰勒級數展開式時,不得不回來幹繳 VBA 7.1 LongLong 的識別字元是 ^ ,搞得我級數函數一值錯…

[VBA] LongLong 超長整數

Hart 則直接參考 West 2009 年的論文[4],裡面直接用 VB6 寫,剪來貼就可以了,West 說他把原始的 Fortran 函數轉成 VB 函數,果然我以前 Fortran 沒白學,以前的學者都用 Fortran 。

從比較表來看,以前水文統計使用周文德的累積機率函數誤差有點大,Zelen 的誤差都小於該函數,而 Hart 跟 Excel 結果完全一致,該不會 Excel 也用此函數來近似吧?

而 Marsaglia 使用泰勒級數展開,照理說泰勒級數展開應該要更準,不知道是寫錯還是其他問題,我懷疑也有可能是數值精度誤差問題,因為 x ^ 41 已經非常小,算完再去做除數,感覺誤差就被放大了。

所以我決定新版的水文統計在常態分佈累積機率函數就使用 Hart 了。(皮卡丘就是你了)

寫在這也希望給水利海洋相關從業人員參考,找個新函數比周文德的教科書更逼近,好吧,這是資訊從業人員的一種病。

1. https://zh.wikipedia.org/wiki/%E5%91%A8%E6%96%87%E5%BE%B7
2. https://en.wikipedia.org/wiki/Normal_distribution#Numerical_approximations_for_the_normal_CDF
3. https://books.google.com.tw/books?id=V1pHDwAAQBAJ&pg=PT523&lpg=PT523
4. https://s2.smu.edu/~aleskovs/emis/sqc2/accuratecumnorm.pdf

銀河的歷史,又翻過一頁~ 今年要重畫了,好期待~~~

Categories: 技術分享, 決策支援系統 | 標籤: | 發表留言

[Word] Mathematics 4.0


話說,前一篇 Mathematics 為 2.0 ,可直接嵌入到 Word 2010 內:

[Word]有趣的數學計算器增益集 – 方程式的擴充功能

上一篇 Mathematics 為 2013 ,直接嵌入到 Word 2013 。

[Word] Mathematics 增益集 2013

但是我一開始安裝的是 Mathematics 4.0

下載位置:https://www.microsoft.com/zh-tw/download/details.aspx?id=15702

我以為會像 2.0 一樣,直接嵌入到 Word 2013 ,但是沒有,找了一下,才知道,Word 2013 改版要用增益集。

比了一下,Mathematics 4.0 使用 .Net framework 3.5 ,Mathematics 2013 則使用 .Net framework 4.0 ,當然從微軟下載中心說明可以看出,Mathematics 2013 比較新,但 Mathematics 4.0 多了一個好處,是可以獨立執行,更有彈性。

Mathematics 4.0 安裝好,會在開始工具列上出現 (老樣子,我使用 Classic Shell 比 Win8 以後動態磚好用多了)

開始工具列

開始工具列

點開執行後,有獨立的 Logo 畫面

Logo

Logo

拿昨天的方程式來測試

輸入方程式

輸入方程式

 

繪圖輸出

繪圖輸出

 

切換到工作表可看到完整的指令,若要直接輸出,可直接使用指令。不過我認為應該不會直接使用指令,這應該是給 Automation 用的指令。

指令語法

指令語法

最好的是,連結到中文說明書。

線上手冊

線上手冊

稍微翻了一下中文說明書,可以解方程式,還有其他功能,測試看看解方程式,再拿女兒作業來翻。

圖解方程式可直接看到兩直線方程式相交點為解答。

圖解方程式

圖解方程式

改用解析解方程式。先從下拉式選單選擇方程式數量,之後輸入方程式後按下 [求解]。

輸入方程式

輸入方程式

直接可以得到解答,另外可以看到有三種求解方法。

求得解答

求得解答

拉下一個求解方式看看。

超詳細的求解過程

超詳細的求解過程

超詳細… 那身為爸爸,以後還有作用嗎?或說老師還有作用嗎?好吧,當作輔助教學來說完全夠用了,女兒完全不用我教了,通通丟給電腦吧。

 

Categories: 電腦和網際網路, Office | 標籤: | 發表留言

[Word] Mathematics 增益集 2013


女兒在做考古題,忽然跑來找我借 iPad Mini ,要用以前玩的方程式立體圖看她無法會意的題目 (我跟她說明 3D 退化為 2D),沒想到該 App 已經轉為付費版,輸入方程式就跳出要升級才能使用。

忽然想到,以前玩過微軟免費的類似功能:

[Word]有趣的數學計算器增益集 – 方程式的擴充功能

試了一下,2.0/4.0 均不能在 Word 2013 出現增益集,不過倒是在相關下載找到 (作圖的時候只找到英文版):

https://www.microsoft.com/zh-tw/download/details.aspx?id=36777

那就來安裝吧,安裝畫面就只截幾個來瞧…

開始安裝

開始安裝

 

預設目錄

預設目錄

 

安裝完成

安裝完成

 

自動呼叫 DirectX 安裝

自動呼叫 DirectX 安裝

 

安裝完成

安裝完成

安裝完成

參考先前那篇,可以知道,要畫圖的話就在 Word 內先輸入方程式,輸入完成後,先選取方程式再從上方 [Mathematics] 選擇繪圖功能 [Plot in 3D]

選擇方程式插入繪圖

選擇方程式插入繪圖

拖動滑鼠檢視 3D 視覺圖,小朋友習慣標準的 XY 座標,調整角度一下。

調整檢視角度

調整檢視角度

按下插入 [Insert] 就可以加到 Word 內。若需要再做進一步解題,可選擇解方程式。

選擇解方程式

選擇解方程式

不過這題因為短少一條方程式,只能解出參數式。

無限多組解

無限多組解

有空試試看能不能在 Word 2016 下用。

 

Categories: Office | 標籤: | 1 則迴響

關於 水文統計 – 線上分析 網頁


說實在的,我自己沒在用,所以從當練功在 2002 年寫好後,基本上沒啥改。

而我自己在 2005 就算是離開水利界了,有興趣的可以在這個網誌上翻到過去發生的事,所以,要不是有人問我不見一事,其實我根本忘了這個網頁。哈~~~

昨天收到有人透過 FB Messenger / 網誌線上留言給我,還說願意付費買,才知道還有人用。

先說找不到的狀況吧。

免費網域 twbbs.org 歷經 18 年終於停止服務,所以我另外申請新的免費網域,所以原先所有 tlcheng.twbbs.org 的全部改為 www.tlcheng.tk

水文統計線上分析的網址就變為:
http://www.tlcheng.tk/Tools/stat/Stat.asp

其次,這個網頁是在 2002 年寫的,那個年代只有 IE5 ,到現在都過了 16 年了,所以對新版相容度不夠,所以請改用桌面版的 IE 來瀏覽,最新版本的 IE11@Win7/8/8.1/10 仍然可以使用,但動態磚版本的 IE/Edge 或是 HTML5 瀏覽器 Chrome/FireFox 等就不能用。

因為早先這個網頁是基於推廣 VB 而採用 VBScript 寫的。

下面畫面是使用 IE11@Win2012r2 跑的。

使用 IE11 瀏覽水文統計線上分析網頁

使用 IE11 瀏覽水文統計線上分析網頁

我在這個網頁有加模擬 IE6 ,因此使用 IE 瀏覽時,不要在框架下用,直接瀏覽這個位置,才會啟用模擬功能,否則新版 IE11 會因為預設禁用 VBScript 而不能正常執行。

回歸曲線圖

回歸曲線圖

既然仍有人用,我今年會抽點時間改用 ASP.NET + JavaScript 改寫新版,這樣就能用 Chrome 開,自然也可以用行動裝置開了。

如果有建議可以在下面留言,我規畫時一併納入,如果希望加入不同機率分布函數,公式要需求的人提供,我沒時間做文獻回顧,所以有功能需求的請把資料整理給我。

其實我不太滿意當時的作法,不過一時之間也沒其他想法,可能就直接重寫,不動架構吧。

Categories: 嗜好, 決策支援系統 | 標籤: | 4 則迴響

[OWC] Group 的迷思


在先前的範例中:

[OWC] 雙 Y 軸的小範例

介紹了如何將數列解開群組後,重新群組在副 Y 軸。大部分在副 Y 軸不會有太多線,所以一直沒超過兩條線。

這次同事參照了這個範例,想要在副 Y 軸畫多條線,才發現 Group 不是我想像的。

我做了一個簡單的範例,資料內容為:

[Data]
Items=1,2,3
Z=6,9,3
A=20,40,60
B=10,30,50
C=30,60,90

A/B/C 是我要畫在副 Y 軸的。

例如以 A 為主時,我一直以為應該是 A.Group B ,A.Group C ,這次我發現中國人跟西方人真的腦袋不一樣…

測試結果,結論是 B.Group A,C.Group A ,主體是被 Group 的。

測試繪圖結果:

將三條線 Group 轉移到副 Y 軸

將三條線 Group 轉移到副 Y 軸

繪圖程式碼:

With nowChart

ReDim arrSeries(.SeriesCollection.Count – 1) : For i = 0 To .SeriesCollection.Count – 1 : Set arrSeries(i) = .SeriesCollection(i) : Next
idxLine = Array(1, 2, 3)
For i = 0 To UBound(idxLine) : arrSeries(idxLine(i)).Ungroup True : arrSeries(idxLine(i)).Type = chConst.chChartTypeLine : Next
For i = 1 To 2 : arrSeries(idxLine(i)).Group arrSeries(idxLine(0)) : Next
Set SumAxis = .Axes.Add(arrSeries(idxLine(0)).Scalings(chConst.chDimValues))

End With

注意迴圈內的 UnGroup / Group 位置,最後再參照 A 建立副 Y 軸。

Categories: 工作點滴, 技術分享 | 標籤: | 發表留言

[IE] IE11 包含新聞的「新索引標籤」


不知道這個功能內建多久。

今天用 IE 11 用到一半,點開新索引標籤,發現畫面變了,剛好舊畫面還可以返回前頁,可以比對新舊兩畫面的差異:

兩個新索引標籤畫面比較

兩個新索引標籤畫面比較

我習慣舊畫面了,這畫面超不習慣。

測試了在網址列輸入:about:Tabs

可以回到舊的畫面。

在網址列輸入:新索引標籤

則顯示新的畫面。

經過測試後,這個畫面會導向:

https://www.msn.com/spartan/ientp?locale=zh-TW&market=TW&enableregulatorypsm=0&NTLogo=1&IsFRE=0

把這網址前半段丟到 regedit 搜尋,也是沒結果。google 一下,還看到一篇推論為木馬…

最後在 IE 設定中找到:[網際網路選項] > [索引標籤]

網際網路選項

網際網路選項

 

從下拉式選單選擇 [新的索引標籤頁] ,就可以恢復舊的預設畫面。

新的索引標籤頁

新的索引標籤頁

當然,從下拉式選單選擇 [含有新聞摘要的新索引標籤頁面] ,就會顯示 MSN 的索引畫面。

我發現 [含有新聞摘要的新索引標籤頁面] 這邊會自動登入 Microsoft 帳號,而且會自動紀錄搜尋結果,因此我想應該是透過 MSN 連動後,讓你在不同電腦也能有相同的 [新索引標籤] 頁,包含同步到 Edge 去。

我還是習慣舊的,所以,我又切回來了。

Categories: 電腦和網際網路 | 標籤: | 發表留言

[Spam] 近日大量偽造 HiNet 官方通知的惡意郵件,請小心別執行


如圖,先前就收過類似郵件:

偽造 HiNet 通知信

偽造 HiNet 通知信

為了網友搜尋檢討方便,特別把內容剪貼如下:



敬啟者@msa.hinet.net,您好: 本公司接獲客戶檢舉收到@msa.hinet.net異常發送信件;經由系統查測,該信件是由您的電子郵件信箱帳號@msa.hinet.net於2017/13/11使用HiNet網頁郵件系統所發送,煩請儘速檢查您的電子郵件信箱帳號是否遭人盜用及您的電腦設備是否有資安漏洞。 若您在觀察期2017/13/11內未能回覆改善情形(請以email回覆客服信箱info@ms1.hinet.net 或是 致電客服0800-080-412;改善措施可參考信件下方的建議),依據「HiNet 郵件信箱服務使用規則」,為了保障網路環境之安全與維護消費者權益,我們將停止使用HiNet網頁郵件系統;造成您的不便,深感抱歉。 謝謝。 祝您 身體健康 萬事如意 中華電信數據通信分公司 敬上 客服專線: 0800-080-412
--- 本郵件來自HiNet WebMail ---


內容大部分是中華電信通知惡意郵件的過程,但是最重要的是附件與收件者不正確。

附件不應該有任何執行檔存在裡面,由於大部分軟體都會擋執行檔,所以他把執行檔藏在壓縮檔內。

上次收到信就直接電洽中華電信客服,對方直接就回說這是惡意郵件,不要點,直接刪除,看樣子中華電信也是被煩得要死。

如果你收到類似的郵件,裡面有壓縮檔藏執行檔,不管是甚麼郵件,基本上都是假的。不要執行。

 

Categories: 電腦和網際網路 | 標籤: | 發表留言

[SQL] SQL Server 2017 安裝體驗


十月初,接到財會要買一套報表系統,需要 ASP.NET + MS SQL,由於財會人數少,加上會計師也沒超過 10 個,每期報表約增加 2 MB 資料庫容量。
本來我是規劃用工業電腦 Windows Embedded Standard (W7E) + SQL Server 2014 Express 的,W7E 的 Web client 測過可以到 1000 條,MSSQL Express 可以到 10 GB,充分滿足需求,但是廠商沒試過 W7E + MSSQL Express,只有安裝在 Windows Server 上的經驗,所以最後從最小需求著手。

反正不是性能很大需求,所以我選了 ASUS RS300-E9-PS4 1U 機架伺服器。
https://www.asus.com/tw/Commercial-Servers-Workstations/RS300-E9-PS4/

IBM Server 被聯想買走,2015/12 人大要求 Server 一定要開後門,所以直接刷掉。
HP Server 上次打客服問一個說明書沒寫到的面板燈號意義,客服問兩句直接掛我電話,我惹不起 HP 難道躲不起?刷掉。
DELL Server 先前因為網站標錯價,直接結束台灣分公司來閃照價出貨,現在是代理商在進口,我實在很懷疑維護品質。刷掉。
最後也只剩華碩能選。

當然這個月要買的下一台 2U 那台會考慮 HP/DELL ,華碩也有華碩的好處,叫修快…
所以這台就用華碩的,不過討厭華碩 Server 硬碟抽取盒政策就是了。

由於使用人數少,就直接選擇 Windows Server 2012r2 Foundation ,這只要 7000 左右,限制 15 users ,不用買 CAL ,剛好可以給財會少少的人數使用。

SQL Server 則直接託經銷商買一個最新版 Standard 版掛到公司的大量授權帳號。

ASUS Server 附的是還原光碟,所以 RAID1 設定好後,直接倒入硬碟,就擺著等 SQL Server 到貨。

收到經銷商的註冊完畢通知信傻了一會,居然是 SQL Server 2017 ,我記得先前看到 MVP 跟 Microsoft 的資訊不是還是 RC2 嗎?搜尋了一下,原來 10 月上市,所以我們直接是最新版,上大量授權網站下載光碟開始安裝。

MSSQL 2017 光碟放入 Server 後,才想起來,ASP.NET 、.Net framework 等都還沒裝,就從伺服器管理員去新增元件跟角色,沒想到被踢掉,因為從光碟機讀不到 Windows 來源可以安裝,把光碟退出來反而就會從還原的快取路徑安裝,這華碩封裝的有問題啊…

元件、角色新增完後,一跑 MSSQL 安裝檢查,就被通知沒有 Windows Update ,不能安裝,只好開始跑安全性更新…

MSSQL 2017 Setup

MSSQL 2017 Setup

跑了一天終於開始安裝了,反正不是我要用,懶得細看項目,直接勾全選安裝,然後通知我得裝 Java Runtime Environment (JRE) …
http://www.oracle.com/technetwork/java/javase/downloads/index.html

依照連結去裝完最新版的 JRE 9.0.1.0 ,還是不能跑:

JRE 9.0.1.0 已安裝完成

JRE 9.0.1.0 已安裝完成

拜讀 google 大神:
Sql Server 2016 : Oracle JRE 7 Update 51 (64-bit) or higher is required for Polybase
https://sqltimes.wordpress.com/2017/04/08/sql-server-2016-oracle-jre-7-update-51-64-bit-or-higher-is-required-for-polybase/
這篇說裝了就能跑,沒用。

SQL Server (v2016) – Installation – Blocked – “Oracle JRE 7 Update 51 (64-bit) or higher is required for Polybase”
https://learningintheopen.org/2017/07/12/sql-server-v2016-installation-blocked-oracle-jre-7-update-51-64-bit-or-higher-is-required-for-polybase/
這篇有講到要裝 Server JRE ,但沒講清楚步驟,沒試成功。

SQL SERVER – 2016 FIX: Install – Rule “Oracle JRE 7 Update 51 (64-bit) or higher is required” failed
https://blog.sqlauthority.com/2015/07/08/sql-server-2016-fix-install-rule-oracle-jre-7-update-51-64-bit-or-higher-is-required-failed/
這篇把 polybase 查詢功能移除,可以安裝,想想反正不是我用,就先移除再說。

移除 Polybase 服務

移除 Polybase 服務

之後就很順利地裝到好,裝完要檢查時,才發現同事從大量授權網站抓下來的沒有 SSMS … 但是安裝光碟會自動導向微軟網站讓你抓最新的 SSMS 17.3:

下載 SQL Server Management Studio (SSMS)
https://docs.microsoft.com/zh-tw/sql/ssms/download-sql-server-management-studio-ssms

安裝好 SSMS 後,要登入 MSSQLSERVER 個體檢查時,發現不能登入:

SSMS 預設捷徑不能登入

SSMS 預設捷徑不能登入

我很確定我安裝 SQL Server 時,是將 Administrators 群組加進去,考慮到 Win2012r2 是 Win8 以後的 OS 會強制降階 User ,重新點連結,選擇以系統管理員身分執行,就可以正常開啟了,從圖上可看到 BUILTIN\Administrators 是加進去的:

SSMS 以系統管理員身分才能登入

SSMS 以系統管理員身分才能登入

測試關閉 UAC 也是沒用,乾脆改捷徑預設使用 Administrators 開啟。

關閉 UAC 沒用

關閉 UAC 沒用

基本上算是結束了。

不過 Win2012r2 Foundation 這時又出一個包,跳出了這個訊息:

EULA 超過 15 users

EULA 超過 15 users

查了一下,原來是我裝 SQL Server 時,全選,裡面 R Scripts 自動註冊了 21 個 users … 只好砍到剩五個。

R scripts 增加了 21 users

R scripts 增加了 21 users

弄完就回報財會通知廠商接手了。

Categories: 電腦和網際網路, 工作點滴 | 標籤: | 1 則迴響

[WU] 升級 Windows 10 1709 雜記


如果不想等自動推送,可以從此處下載:
https://www.microsoft.com/zh-tw/software-download/windows10

今天測試升級了企業版跟家用版。

除了企業版外,其他 Windows 10 的版本都可以從上述位置下載更新,但今天下載四次都有問題,有可能是網路快取就有問題,也有可能是微軟網站有問題,最後從 MSDN 下載的才能正常安裝。

企業版也只能從 MSDN 或大量授權網站下載新版。

MSDN 下載 DVD 的影像檔,在 Win10 掛載後即可安裝。

首先是紫色底色的畫面,這個畫面主要是拷貝檔案,可同時上網,依照硬碟速度,大概耗時 1 ~ 2 小時,完成後會直接重新開機,所有動作中的視窗會被直接關閉。

重新開機後是淺藍底色的畫面,這個畫面就是正式升級,此時啥事都沒得做,就是等,大概耗時 1 ~ 2 小時。我兩次的經驗各耗時 2.5 小時左右。

再次重開時,會重新初始化 Windows,會有一堆歡迎詞 ,你只能慢慢看,歡迎詞結束後,硬碟 loading 仍然很大,可能造成帳號無法登入,不用考慮修復,我直接從登入畫面選重新開機。

重新開機後帳號就可以正常登入,觀看程式和功能,會發現一堆程式的安裝日期變成今天。

第二次重新開機後,硬碟 loading 仍然很大,我等跑差不多後,再次重新開機後才恢復平時的負載。

碰上幾個問題:

  1. Skype 桌面版會一直閃爍,無法輸入訊息,從工作管理員會看到約自動產生 1x 個 SkypeBrowserHost.exe 持續開開關關,重新開機沒有用,把 Skype 全部砍掉也沒用,Skype 動態磚版沒事,只能移除 Skype 桌面版再安裝。移除後重新安裝會導致釘選在開始工具列上的結果不正常,關閉 Skype 並移除釘選後,重新開機就正常了。
  2. 原先我有跑其他 VM ,所以開機有 Without Hyper-V 兩個選項,bcdedit 編輯的兩個開機選單被移除,得重建。
  3. 我預設 NB 平常會停用其他網卡,包含虛擬網卡,只啟用無線網卡,安裝完以後,乙太網路、藍芽網路都被啟用,但可以停用,而 Hyper-V 更新後強制內建一個預設網路強制啟用,停用後重新開機變兩個,有點不習慣。
  4. 一堆預設軟體被改回 Windows 內建,比如說 Adobe Reader DC、Outlook、看圖軟體、Media Player 、網頁瀏覽器等,建議先跑一次預設程式,手動設定完常用軟體後,再進行正常操作,不正常的軟體建議移除重灌。
  5. Classic Shell 會需要重設,點選畫面上的對話盒即可。
  6. 系統列 (systray) 的網路圖示 > 滑鼠右鍵 > 開啟網路和共用中心 會變成動態磚版本,我喜歡視窗版本只得從 Classic Shell 那邊進去。
  7. 系統列 多了一個 聯絡人 在 動態圖示 左側,有點不習慣。

其它:

我覺得桌面 125% 的字型有變清晰,但不知道是不是錯覺,大家覺得呢?

Categories: 工作點滴, 更新與回報 | 發表留言

[RouterOS] 阻擋外對內的 DNS 遞迴查詢攻擊


先前這篇:
[RouterOS] 上傳流量爆頻寬

會阻擋所有的 DNS 查詢,相對代表另一件事,區域網路無法透過 Router 查詢 DNS ,只能設廣域網路的 DNS ,由於內部系統習慣使用 Router 作為 DNS Server ,便於外部網路的變化,不影響內部網路設定,因此得改防火牆配合。

建好的規則如下圖,在防火牆的過濾規則中設定,將來自於外網的 DNS 的查詢全數拋棄:

將來自於外網的 DNS 的查詢全數拋棄

將來自於外網的 DNS 的查詢全數拋棄

來分別看看此兩規則的設定值,其中 pppoe-HiNet 為外網的名稱,這邊是使用 ADSL 上網,使用 WAN 也可藉此修改:

DNS TCP General

DNS TCP General

DNS TCP Action

DNS TCP Action

DNS UDP General

DNS UDP General

DNS UDP Action

DNS UDP Action

最後,若需如清單畫面中,分群,在清單中按下滑鼠右鍵,在彈跳選單中選擇 [Comment] ,輸入分群名稱即可:

DNS Query TCP Comment

DNS Query TCP Comment

DNS Query UDP Comment

DNS Query UDP Comment

設定完成後,就可以允許 DNS 查詢了。

DNS Settings

DNS Settings

Categories: 工作點滴, 技術分享 | 標籤: | 發表留言

[WU] 10 月份 Windows Update 後,Excel ODBC/Oledb 異常


目前已知 10 月份 Windows Update 更新問題將會導致使用
Microsoft Jet 4.0 的 Excel Driver 會出問題,資料庫連線字串使用:
ODBC={Microsoft Excel Driver (*.xls)}
Provider=Microsoft.Jet.OLEDB.4.0;

無法正常使用。

由於目前 Windows Update 均為彙總套件更新,暫時無法鎖定問題發生在哪個 KB 。

緊急應變需先改用:
ODBC={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)}
Provider=Microsoft.ACE.OLEDB.12.0;

以上的資料庫連線字串版本。

如需同時安裝不同位元版本 x86/x64 的 driver ,需安裝不同 Office 版本才行,例如 Office 2016 x64 + Office 2013 x86 的 driver ,請依據個人電腦內使用 Office 版本搭配:
在微軟下載中心搜尋時,使用關鍵字為 Access Runtime :
2016: https://www.microsoft.com/zh-tw/download/details.aspx?id=50040
2013: https://www.microsoft.com/zh-TW/download/details.aspx?id=39358
2010: https://www.microsoft.com/zh-tw/download/details.aspx?id=10910
2007: https://www.microsoft.com/zh-tw/download/details.aspx?id=4438
註:2007 僅有 x86 版本。

一般來說,建議安裝最新版本的 Access Runtime ,也就是 2016/2013 ,但千萬記住,安裝前先確認自己電腦 Office 版本與位元版本。

在 VS2017 透過 ODBC 開啟 Excel 檔可以列舉資料庫結構,但不能顯示資料,如下圖:

VS2017 ODBC Excel 錯誤畫面

VS2017 ODBC Excel 錯誤畫面

軟體觸發錯誤事件的錯誤訊息為:
ERROR [HY000] [Microsoft][ODBC Excel Driver] 保留錯誤 (-5016);這個錯誤並無訊息。
ERROR [01000] [Microsoft][ODBC Excel Driver]一般警告 無法開啟登錄鍵 ‘Temporary (volatile) Jet DSN for process 0xeb4 Thread 0x23ac DBC 0x16bd6cf4 Excel’。
ERROR [IM006] [Microsoft][ODBC 驅動程式管理員] 驅動程式的 SQLSetConnectAttr 失敗

事件檢視器畫面如下:

事件檢視器 ODBC Excel 錯誤畫面

事件檢視器 ODBC Excel 錯誤畫面

目前微軟論壇討論可參考這篇:
https://social.msdn.microsoft.com/Forums/en-US/2feac7ff-3fbd-4d46-afdc-65341762f753/odbc-excel-driver-stopped-working-with-unexpected-error-from-external-database-driver-1?forum=sqldataaccess

由於是底層錯誤,所以不管是 ADO / ADO.NET / MFC 等,只要使用到這個資料庫連線字串的,都會掛。

Categories: 工作點滴, 更新與回報 | 標籤: | 5 則迴響

[Android] WebView 啟動時自動調整大小 – Xamarin for VS2017


我的目標網頁有設定在 html5 的 head 有設定下行:

<meta id="metaViewPort" name="viewport" content="width=480px" />

WebView 預設開啟時,並無法正確的映射到這個尺寸,雖然可以在螢幕上點兩下自動縮放到設定大小,但總是要多一手。

因此透過程式碼設定初始化大小,主要就是這句:

MobileBrowser.SetInitialScale(GetDeviceInitScale());

程式碼片段寫在 MainActivity.cs


private int GetDeviceInitScale()
{

// 預設寬度 480d, 100%: 100d
double val = (double) Resources.DisplayMetrics.WidthPixels / 480d * 100d;
return (int)val;

}

protected override void OnCreate (Bundle bundle)
{

base.OnCreate (bundle);

SetContentView(Resource.Layout.Main);

MobileBrowser = FindViewById<WebView>(Resource.Id.MobileBrowser);

//啟用Javascript Enable
MobileBrowser.Settings.JavaScriptEnabled = true;

//支援縮放 ViewPort
MobileBrowser.Settings.LoadWithOverviewMode = true;
MobileBrowser.Settings.UseWideViewPort = true;

// 計算螢幕比例
MobileBrowser.SetInitialScale(GetDeviceInitScale());

MobileBrowser.SetWebViewClient(new CustomWebViewClient());

//載入網址
MobileBrowser.LoadUrl(“http://www.company.com/");

}


這樣開啟 WebView 就會自動縮放到網頁大小了。

Categories: 工作點滴, 技術分享 | 標籤: | 發表留言

[QNAP] 升級 4.3.3 以後,網頁不能被嵌入


上週公司的 Nas 系統受損,在 QNAP 原廠工程師協助下,用新版的 系統 上線,看到有些新功能,就打算把 www 也更新上去。

公司的 www 是以靜態網頁為主,由版面設計師負責,所以有些電廠介紹的網頁,要嵌入在電廠發電網站用的,就請版面設計師處理,在透過 frame/iframe 嵌入在發電網站。

www 更新的很順利,所以更新完也忘了它。過兩天後,慢慢有同仁反映電廠介紹的網頁無法正確顯示,由於我電腦正常,剛好更新韌體後,又有 Windows Update,我就沒積極處理,讓 IT 協助其他同仁去解決。

直到連資訊部的開發人員也發生同樣問題,資訊部同仁電腦狀況我比較熟,我就切入追蹤,我的電腦還是正常,所以在 IE 下強制重新整理 (Ctrl+F5) ,就開始不正常了,看了錯誤訊息是指此網頁不能顯示在框架中,所以之前正常應該是讀我電腦內的快取。

一開始我檢查網頁內容,以為是 google Analytics 改程式碼了,導致形象工程師內嵌在裡面的 script 做了阻擋,請形象設計師移除後,還是不正常,就改用開發模式看:

新韌體預設值變更為拒絕框架

新韌體預設值變更為拒絕框架

疑?居然有 X-Frame-Options 的設定?

用這關鍵字加上 QNAP 一搜尋就有解答,看起來是新版韌體預設加入。

新版韌體

新版韌體

依照 FAQ 是要透過 SSH 連入修改下面這個檔案:
/etc/config/apache/apache.conf

雖然 SSH 有 vi 可以編輯檔案,但我指令早忘了,要查起來使用說明還要花時間,還不如用 SFTP 進去抓檔修改再上傳:

啟用 SSH / SFTP 服務

啟用 SSH / SFTP 服務

config 是個虛擬目錄,要特別注意,點選後路徑會變更:

虛擬目錄 config

虛擬目錄 config

下載 apache.conf 來修改

下載 apache.conf 修改

下載 apache.conf 修改

可以把這行刪掉,官網建議加上 # 註解

用 Visual Studio Code 註解

用 Visual Studio Code 註解

改完後,QNAP 的 www 服務要重新啟用,就恢復正常了。

 

Categories: 工作點滴, 技術分享 | 標籤: | 發表留言

[WINS] 網卡內的 NetBIOS over Tcpip 無法正常啟用


在先前的

[Hyper-V] 在 Visual Studio Emulator For Android 我的虛擬網路設定
https://tlcheng.wordpress.com/2017/08/03/hyper-v-%e5%9c%a8-visual-studio-emulator-for-android-%e6%88%91%e7%9a%84%e8%99%9b%e6%93%ac%e7%b6%b2%e8%b7%af%e8%a8%ad%e5%ae%9a/

我的無線網卡在測試 Hyper-V 的虛擬交換器建立中,解除虛擬交換器後,忽然發生無法正常使用網路芳鄰,經檢視網卡後,發現我的 [IPv4 WINS 伺服器] 設定沒有顯示,[NetBIOS over Tcpip 已啟用] 顯示為 否。

下圖為修好後的截圖。

NetBios Over Tcpip 是否啟用

NetBios Over Tcpip 是否啟用

公司有架設兩台 WINS 伺服器,所以所有公司及 VPN 內都會設定 WINS ,在 [進階 TCP/IP 設定] 可正常顯示,但在 網路連線詳細資料 或是 ipconfig/all 就是無法顯示。即使試著強制啟用,如下圖,設定為 [啟用 [NetBIOS over TCP/IP](N)] 也沒有作用 (這邊 WINS IP 被我遮掉)。

進階 TCP/IP 設定

進階 TCP/IP 設定

我測試多種情形,包含從裝置管理員移除裝置時,同時刪除驅動程式,讓他自動新增時,使用 Win10 1703 內建驅動程式,但是還是沒用。

經過 google 網海後,我靠下面論壇這篇解決。
https://social.technet.microsoft.com/Forums/windowsserver/en-US/f3a909c8-04e8-485d-894c-3f92683c0fd7/can-not-enable-netbios-over-tcpip-on-shared-network-interface

首先,需要知道問題網卡的 GUID ,若是所有網卡都是預設值,可以將問題網卡上圖設定為 [啟用 [NetBIOS over TCP/IP](N)] ,然後到機碼:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters\Interfaces

找 [NetbiosOptions] 為 1 的,如下圖的項目:

登錄編輯程式

登錄編輯程式

記下這位置的 GUID ,為了確保這張是你的問題卡號,先選到這張卡,回到 [進階 TCP/IP 設定] 改設定為 [預設值(F)] ,回到先前 GUID 檢視 [NetbiosOptions] 是否變成 0 ?若是,這就是你問題網卡的 GUID 。

依序到下面五個機碼下:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Linkage
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Linkage
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBIOS\Linkage
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Linkage
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Linkage

底下的三個多字串值 (REG_MULTI_SZ)
Bind
Export
Route

加入你的網卡。
操作上我建議先複製其他網卡的片段來改 GUID ,再於最後一行貼入,大部分的情況都有多行要貼入。

編輯多字串

編輯多字串

修改完成後,重新開機,讓服務跟網卡都重新啟用就可以恢復正常了。

我另一個同事跟我一樣,在測試 Hyper-V @ Win10x64 時,因為同時 [乙太網路] 跟 [WiFi] 兩張網卡同時加入 Hyper-V 的 虛擬交換機管理員 內,造成兩張網卡的 NetBIOS over Tcpip 都無法啟用,也利用此方法恢復了,我是懷疑可能是 Hyper-V 加入虛擬網卡,移除實體網卡 NetBIOS 能力,當解除虛擬網卡時,未正確自動恢復實體網卡的 NetBIOS 能力。

最後,依據上述關鍵字,在手動修復前或許可以先測試這篇:

如何使用 NetShell 公用程式重設 TCP/IP
https://support.microsoft.com/zh-tw/help/299357/how-to-reset-tcp-ip-by-using-the-netshell-utility

用內建工具程式修看看。

Categories: 工作點滴, 技術分享 | 標籤: | 1 則迴響

在 WordPress.com 建立免費網站或網誌.

%d 位部落客按了讚: