星期二, 2月 13, 2007

錯訊排除 : Exception has been thrown by the target of an invocation. The original message is 'Index and length must refer to a location within the string.

中文 : 索引和長度必須參考字串中的位置。\r\n參數名稱: length

英文 : Exception has been thrown by the target of an invocation. The original message is 'Index and length must refer to a location within the string. Parameter name: length'.


原因:String.Substring(0, 4)要取用的結束長度比原字串還長

星期一, 2月 12, 2007

Virtual Pc 的硬碟檔(vhd)案廋身法

最近要測一些元件,雖然使用Viutual PC或是vm很方便,但用久了難免會變得很肥大。不過可以透過一些方式讓檔案變小一點。

1.關閉xp的系統還原,清除不必要的檔案
2.install Virtual Machine Additions
3.Mount C:\Program Files\Microsoft Virtual PC\Virtual Machine Additions\Virtual Disk Precompactor.iso 執行裡頭的 precompact.exe
4.關閉執行中的系統
5.virtual pc console/ file / virtual disk wizard
6.edit an existing virtual disk / Compact it!

這樣子即可縮減hdd大小
不過只能使用在Dynamically expanding模式的磁碟,對於愛用differencing的熊並不適用

星期三, 12月 20, 2006

Visual Studio 2005 Sp1正式版安裝問題

最近Visual Studio 2005 Sp1出來了,但安裝時一直出現下列問題"Windows Installer 服務無法安裝升級",試著將Installer更到最新,但重安裝還是出現如下的問題。










弄到最後,只好試著把SP1(Beta)移除掉,重裝正式版即可,但安裝後發現一件更好玩的事情,menu跟快訊全變成中文了! 快吐血!

若有安裝sp1beta.要移除時.記得先準備好你原來的安裝片!

星期一, 12月 18, 2006

Office 2007 各版本的差異

好久沒查看msdn發佈了什麼新玩意! 周日上午有些空檔,查看了一下簡直要昏倒! 出了一堆東西,看了一下有繁體版的office 2007,馬上download下來看看,將近700mb的檔案,花了30分鐘即下載完成,網路實在爭氣!

在下載前,查看了一下各版本分別,在這裡有蠻詳細的說明!

花了一下時間做升級,若想保留原始的版本也是可行,不過安裝時要選擇"自訂"從裡頭去勾選保留原始版本(除了outlook一定要移除舊版本外),安裝後覺得還蠻不錯用的! 尤其像outlook的附加檔案預視功能,點選到附加檔案時,下面即會切到該檔案的預視功能!



雖然他有很強大的功能,不過他的工月具列卻很佔空間,對1280*768的解析度實在很吃力,找了一下不知道如何縮小工具列,但卻可以在工具列按右鍵選擇自動隱藏。

星期六, 12月 02, 2006

增加你無線網卡的火力--以intel網卡為例

最近因為工作的因素.需要做搬家的動作,而在台北的網路需要優先做處份,因為到時的cable modem要先還給東森,若到月底可能就沒有這些時間了!

回到家拿出了公司配的NB在做規格的檢視,突然無線網路就連上了一家沒設密碼的AP上,當下突然覺得,台北真是個好地方隨手一SCAN都有數個免費AP可用,不過訊號並不是很穩定。打開無線網卡的設定..疑.可以調整耶!

1.開啟Intel PROSet Wireless
2.MENU/進階/介面卡設定
3.將傳輸功率/電源管理 的使用DEFAULT值取消,將輸出功率加大!

本來不穩定的網路就變安份多了!

此時又開了命令模式,使用ping gateway -t 讓ping的指令連續不停運作,拿著nb四處移動,發覺一個很有趣的現像,連隔著一片"落地的玻璃窗(大約1cm)"對傳輸都會造成很大的影響! 打開落地玻璃窗即可坐在書桌前邊餵蚊子邊上網!

星期四, 11月 30, 2006

程式罷工時,程式設計師常對測試人員的20種說詞

程式罷工時,程式設計師會對測試人員常說的20種話! 看到第一個時真的是笑出來了! 哈哈

用我破破的英文把他翻成中文.不過第五個怎麼看都覺得怪怪的.若有好心人要幫我修正.那就先謝過了。
20. "怎麼這麼奇怪勒.."
19. "以前都沒有遇過耶。"
18. "昨天明明是正常的。"
17. "怎麼會這樣子"
16. "這一定是硬體的問題。"
15. "你是如何操作讓程式出錯??"
14. "一定是你資料的問題。"
13. "我己經很久沒有修改相關程式了!"
12. "你的版本是舊的。"
11. "這只是偶發性。"
10. "我沒辦法測試每一個細節!"
9. "這個錯不是因為那個原因。"
8. "客戶從n年前就一直在用這個程式,但從未發現這個問題。"
7. "一定有人偷改了我的代碼。"
6. "你有先掃毒嗎?"
5."你怎麼知道他有問題?" (11/30依照同學-也是資訊公司的負責人:帥eric的建議.做修正)
4. "你無法使用那個版本在您的系統。"
3. "為什麼你要用這種操作方式呢?"
2. "當程式瘋掉時.你人在那?"
1. "在我的機器跑的好好的"

Under The Sun: Top 20 replies by Programmers to Testers when their programs don't work

COUNT DOWN......
20. "That's weird..."
19. "It's never done that before."
18. "It worked yesterday."
17. "How is that possible?"
16. "It must be a hardware problem."
15. "What did you type in wrong to get it to crash?"
14. "There is something funky in your data."
13. "I haven't touched that module in weeks!"
12. "You must have the wrong version."
11. "It's just some unlucky coincidence."
10. "I can't test everything!"
9. "THIS can't be the source of THAT."
8. "It works, but it hasn't been tested."
7. "Somebody must have changed my code."
6. "Did you check for a virus on your system?"
5. "Even though it doesn't work, how does it feel?
4. "You can't use that version on your system."
3. "Why do you want to do it that way?"
2. "Where were you when the program blew up?"
1. "It works on my machine"
Replies by Programmers to Testers when their software don't work.

星期日, 11月 26, 2006

Visual studio 2005 數個DEBUG的技巧

  1. 遇到異常的錯訊.不知道死在那的Debug方式
  2. 享受Debug的樂趣,且遇到exception時,不會讓程式程式無法繼續往下Debug。
  3. 組件(非執行檔)的DEBUG方式

1.有時在DEBUG會跳出錯誤訊息,但是中斷點卻沒有停留在程式錯誤的地方,或是程式的錯誤讓你感到很無厘頭時的處理方式。

  • 把你主程式與你認為有錯的組件,進到project option中,把 Enabled unmanaged debugging打勾
  • Menu/debug/exception,把所有的類型的打勾(或你想看的類型自行打勾),若下回要回覆原來的預設值只要點選reset all即可
  • 再重編專案進入debug即可

2.有時程式中會有一些自行引發的例外,他可能是你有處理的或是無聲的例外,若在RUNTIME執行時並不會有訊息,但在DEBUG MODE時只要遇到就都過不去了!讓你無法往下做DEBUG。

  • 先重編你的專案
  • 自行點選執行檔執行你要偵錯的程式
  • 點選vs2005上的Debug/Attach to process(若有多個主程式那可以用CTRL+MOUSE做多選)
  • 按Attach即可,此時再去RUN你的程式
  • 快快樂樂的去DEUBG吧!

3.組件(非執行檔)的DEBUG方式

  • 方法同2

星期二, 11月 14, 2006

在中國無法使用google或上台灣網站的解決方式

公司換了住的地方,順便也換了網路! 但不幸的是,連google或是一些台灣的網站都上不了!

連上google首頁打上csharp按下enter都直接死機!這還得了~無法使用google的日子該怎麼辦!! 再試了一下gmail,microsoft,blogger都有很多網站無法使用! 真是萬里防火牆!

當下用pcanywhere連回台北的電腦,查了一下代理伺服器,結果發現這個網站有天天更新的列表,設上了代理伺服器後.通通可以上了! :(

星期日, 11月 12, 2006

CSharp OpenSource 挖寶的好地方

這是挖寶的好地方
http://csharp-source.net/


開放源碼的小畫家 Paint.Net
http://www.getpaint.net/download.html

開發源碼的計算機 Open Source C# Programmable Calculator
http://www.personalmicrocosms.com/Pages/cspcalc.aspx

星期一, 11月 06, 2006

Use Optimistic concurrency

使用ado.net使資料更新時.常常會發生
Concurrency violation: the UpdateCommand affected 0 of the expected 1 records
並行違規: UpdateCommand 已經影響必須是 1 記錄的 0.

解決的方式為
當使用TableAdapter Configuration Wizard定義時,選Advanced Options,把Use Optimistic concurrency選項去除,讓產生的update,delete語法只使用key值比對即可解決

而此訊息說真的蠻困擾的,有時是不定時發生 :(

可以參考說明 http://msdn2.microsoft.com/en-us/library/aa0416cz(VS.80).aspx

星期日, 11月 05, 2006

防止廣告軟體、垃圾郵件、病毒、線上騙局 McAfee SiteAdvisor

這是一套免費的軟體,可以提醒你一些網頁的狀況,例如網頁的內容可能有木馬,註冊為會員可能會收到的廣告、垃圾信的數量,也可以在你使用搜索引擎找到的結果,在還沒進到該網站前,即給你提示!

IE7 或是 FireFox 2.0都適用oh!