Monthly Archives: 六月 2006

.Net framework 讀取結構作法 (VBNET)


在 .Net framework 2.0 以前,在 Managed Code 中居然沒有直接讀取結構的方法?
我原先以為是 .Net framework 文件太多,我沒看到相關記載,在 VB 命名空間下,是有個 FileGet 勉強可以用,另外可以用 Unmanaged Code 讀取,但是 Unmanaged 讀的有點問題,例如下面這個結構:
Structure sTest
   GPSTime As Double
   Week As Short
   x As Double
End Structure
 
直接用 Unmanaged Code 去讀時,例如呼叫 Windows API 的 CopyMemory 或是 Marshal.Copy ,會把原先看起來是 18 Bytes 的結構耗用 24 Bytes 去讀,而問題就在於 Week 這個屬性,2 個 Bytes 會當成 8 Bytes 去讀。
 
所以這個問題我把它發到台灣微軟技術支援處去詢問 (CSS) ,問題代號 SRT060620775183 。
 
最後確認, .Net framework 內的確沒有直接讀結構的方法,必須一個個屬性去讀,若要直接處理整個結構,必須透過 Unmanaged Code 來讀,而上面 Week 當成 8 Bytes 的問題是 .Net framework 在封裝遞送結構變數時,並非是依據結構屬性變數順序排列,且不會緊密排序,預設每 8 Bytes 做一個 pack ,所以直接呼叫 Unmanaged 會出問題。
 
故上面的結構應改寫為:
<System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack:=1, CharSet:=System.Runtime.InteropServices.CharSet.Ansi)> _
Structure sTest
   GPSTime As Double
   Week As Short
   x As Double
End Structure
 
這樣在 Unmanaged Code 使用上就會恢復正常,並保證依序讀取。
有空我會整理從 Stream / Byte Array 內載入結構的函式庫放到 .Net 原始碼分享網頁。
廣告
Categories: 更新與回報 | 3 則迴響

網路論壇與公用資源的應用


當初我的網站在開設論壇時,認為論壇宜使用公開資源,有利於文章的保存與共用:
水海科技系統研發驗證工作室 Web News Reader 討論區緣起
最近在試用 Microsoft ReachOut 2.0 for Outlook 2003 ,把 RSS (feed) 、 Microsoft Forums 、 Newsgroup 都納入進來,很方便,雖然還有點小 bug 。
可參閱附圖所示。
 
所以網路資源用公開資源可以有很多好處。
 
Categories: 測試版 | 3 則迴響

MSN Messenger 8.0.0792 繁中 支援 Yahoo Messenger ?


阿昌哥通知:
注意 如果您要新增 Yahoo! Messenger 立即訊息地址,請輸入完整的電子郵件地址。
 ——— *支援WLM 8 的 MSG Live Plus! 星期六(95/06/23)會出喔!
 
不過我沒有雅虎的聯絡人…
 
支援 Windows Live Messenger 的 Messenger Plus! Live 釋出  4.0.0.234
http://www.peppery9.net/stuff/MsgPlusLive-400.exe
Categories: 電腦和網際網路 | 發表留言

Messenger 8.0.0787 繁中 正式版


原來已經是正式版了…
 
早上阿昌哥的通知:
已經在玩 Windows Live Messenger 8.0 Beta 繁中的親友們,新版的繁中正式版放出來了:
Windows Live Messenger 8.0.0787 正體中文版 14.5MB 在全球最受歡迎的立即傳訊服務網路上,和親朋好友享受立即連結和共用功能 http://download.microsoft.com/download/0/f/f/0ffd0344-afe7-4fd6-9712-bed73bc265f5/ZH-TW/Install_Messenger.exe
(作業系統需求 Microsoft® Windows® XP)
 
 
我基本上不建議裝 Plus Beta 啦,只要裝新的 Live Messenger 就好,若有需要可以考慮更新。
Categories: 電腦和網際網路 | 發表留言

Vista 5384 tw x86/x64


6/6 Vista 繁中測試版放出來了,目前用起來覺得比英文版好用,螢幕畫面仍然有問題啦,其他是還好。
 
工作管理員在英文版叫出來的時候都會問要不要同意,這是我覺得滿白爛的,我既然叫工作管理員出來,當然是要執行,這部份中文版比英文版好,沒有特別問,其他還沒啥特別跑到的。
 
有空打算把 IIS 7.0 裝上去測看看。
灌好好幾天了,不過最近很多東西要趕,Spaces 這邊也沒啥新增。
Categories: 測試版 | 發表留言

MSN Spaces 網址變更~


最近比較忙,所以沒上線寫 MSN Spaces 。
這兩天完成資料庫移植,把歷史資料全部從文字檔灌入資料庫後,晚上終於有點空檔可以上 MSN Spaces 看看統計與回應~
忽然發現,MSN Spaces 的網址改變了,變的更親善,更個人化。
原先的網址是:
後來變更為:
http://spaces.msn.com/[使用者帳號]
現在變更為:
 
這樣的網址,更具個人化。
不過網誌清單就要全面重新改新的位置了…
希望系統能自動幫我改啦~
Categories: 娛樂 | 發表留言

0609豪雨曾文水庫進水量最高達 5,374 cms


5,374 cms 的進水量對曾文水庫到底有多大呢?
扣去第一的賀伯颱風、第二九三水災、第三去年的泰利颱風、第四應該是前年的敏督利颱風,大概就屬這次的豪雨吧。
其中九三水災雖然是豪雨造成,但是是颱風九月一日離開後,所引進的西南氣流造成。所以這次的降雨量算是完全跟颱風無關中最大的一次。
在曾文水庫運用要點中所稱之豪雨,在設計時基本上是指颱風離去引進的西南氣流造成,並非是針對本次降雨類型所設計,反過來說,當初沒有寫明的情況下,反而這次可以順利放水。
 
但是這次放水是有問題的,事後有機會應該好好檢討。
  1. 防洪運轉啟動條件符合運用要點第15點規定,這部份沒啥好討論的。
  2. 啟動後可知,洪峰已於 6/9 5,374 cms 發生,所以應使用運用要點第16點的最大放水量。
  3. 洪峰流量已過,水庫停止防洪運轉條件應使用運用要點第17點第一款,所以在 6/10 20:00 ~ 22:00 間就應停止防洪運轉,但是放水到貼文時間為止,仍然還在放水。
所以我想,這次應該事後要檢討一下運用要點對於本次豪雨的配合修改,此外,運用要點第22點應一併檢討,這條本身與前面防洪運轉條文衝突,以運用要點規線為界,也是有極大的問題的。
防洪運轉停止條件主要是避免水庫未來水資源的短絀,所以在洪水消退時,水庫應關閉閘門,改以電廠排水來持續排放水量,降低調節水庫水位,由於水庫防洪運轉啟動時,洪峰已過,所以開啟閘門時,可以較平緩的調整,當水庫放水量大於進水量連續三小時後,水庫水位又低於225公尺,宜考慮減少閘門開度降低放水量,因此在11日0時,就應該考慮降低閘門放水到 650 cms,含電廠自然河道到770 cms,在11日7時以後,則就應執行降低閘門放水量到650 cms,拖到11日12時才將閘門放水降到 650 cms,這時水庫水位已經降低到223.81公尺,應該考慮閘門放水降到300 cms。
當然,實務上因為氣象局豪雨特報發到週一,所以操作人員可能想要更安全的操作水庫,但是這樣已經有違反運用要點的疑慮,應做更謹慎的操作。
Categories: 決策支援系統 | 發表留言

小心小眼睛


剛剛看了瀏覽記錄,疑似有小眼睛來瀏覽 MSN Spaces 相關特定主題,請還在那邊的學弟妹自己注意,明哲保身~
 
雖然那邊換 ip 了,不過還是過濾出小眼睛的 ip 位置,今年尚有監視記錄,所以請相關人員小心點,要是要留言時,切記不要洩漏可能的來源資料,免得被記恨,自找麻煩~
 
Categories: 組織 | 2 則迴響

在WordPress.com寫網誌.

%d 位部落客按了讚: