跳到主要內容

發表文章

目前顯示的是 三月, 2008的文章

VPC 執行FreeBSD的錯誤

用VPC或VMWare執行FreeBSD,有可能會出現"calcru:..."的錯誤訊息,此時看 這 沒用,因為太舊了:P 要看 這裏 。 解決方法:在 /etc/sysctl.conf 加上 kern.timecounter.hardware=TSC 就解決了。雖然在開機時還是會跳出一陣子的calcru的訊息,不過開機完也就沒事了。

升級Domain Controller的硬體

新電腦到了,想把公司的AD換到新電腦,查了一下資料: 如何備份、還原Active Directory的設定 如何在 Windows Server 2003 中重設目錄服務還原模式的系統管理員帳戶密碼 備份與恢復Win2003的AD資料庫 Active Directory 遷移工具 v3.0 ADAM 逐步手冊 如果網域要改名可以用 Windows Server 2003 Active Directory Domain Rename Tools ,參考 感受Windows 2003域更名工具 看了這麼多,我想像中的做法是: 新裝一台DC 再把兩台DC的IP互換 把原來的DC降成一般伺服器 舊DC退出網域 如果再不爽,用 這招 把新機換成原來機器的名字(忽然想起,UUU的講師說只有PDC上有administrator的private key,在移機前要先備份) 如果有好方法,請不吝提供,感恩呀~

難怪Vista會慢

公司的新電腦在經過兩年漫長的等待終於在昨天送到,為了身先士卒,要求讓我用隨機的Vista Business。剛裝完覺得速度非常慢,安裝Patch後稍有改善,但仍然覺得反應很遲頓。打開工作管理員一看,乖乖: 這....我什麼程式都還沒開,1GB的RAM就被吃個精光,Page File這麼多,難怪會慢呀。或許有人說是cache佔去,沒錯,但是700MB還是有點多,我若開個Firefox不就破表了?臨時去拔另一台新機器上的RAM過來: 雖然可用一樣顯示0,但是可以看到大部份都在cache,swap的機會少很多,此時整台機器的反應很明顯變快。來看一下分數,這是用1GB RAM剛裝好Vista後測出只有2.7分: 裝到2GB RAM後分數馬上變成3.4,因為有雙通道,所以分數馬上變高: 雖然在關掉一些陰影之類的特效後,有稍微快一點點,但仍然覺得不怎麼順(其實CPU是E8200,2.66Ghz已經夠快了),過幾天拿這台灌個Ubuntu試試效能吧XD

乖乖大神

同事寄來一封有趣的email,內容是關於用乖乖拜Server,稍微查了一下,最早的是 一年一度拜乖乖 ,令我驚訝的是iThome的 高效能伺服器研討會 為機房做室內設計 ,居然在"機房的風水學"這段也有提到乖乖桶。 以下其他的文章照時間排序: 千萬不要小看一包 乖乖 ! 沒有它! 搞網路的都會失業了! 最近乖乖大神會熱是因為mobile01這篇 關於乖乖大神的真人真事... 同事寄來的是引用 乖乖的妙用 乖乖大神? 看完這幾篇,鳥毅在想要不要去買幾包椰香乖乖了:P

給豬哥網的一個建議

雖然你們官方不能明著叫 豬哥網 ,但大家心知肚明,叫 豬哥網 我不用一直中英切換,打起字來比較快。 剛才看到六先生的 這篇 ,裏頭介紹 Chickipedia ;這正是 豬哥網 所欠缺的功能呀! 光是看美女真的會滿足嗎?只會愈看愈覺得空虛吧!如果有著美女的介紹,在看圖的同時就增加許多想像空間,增添不少趣味呀!讓認識圖片上美女的會員能夠增加美女的資訊,例如交過幾個男友、什麼學校畢業 、生了幾個小孩 等等,光想像就覺得很棒,獨孤前輩加油!

動態改變RDLC報表DataSource

先用設定好的DataSet(這裏叫Report.xsd)設定RDLC檔,以Report.rdlc為例。 接者在Asp.Net報表裏拉入Report Viewer,指向Report.rdlc,刪掉datasource那些用不到的東西,在aspx裏會看到類似 <rsweb:reportviewer id="ReportViewer1" runat="server" font-names="Verdana" font-size="8pt" height="400px" width="800px"> <LocalReport ReportPath="Report.rdlc"> </LocalReport> </rsweb:reportviewer> RDLC檔其實是一個xml,和Crystal Reports的rpt二進位格式大不同。用文字編輯器打開來看,會看到類似:<DataSet Name=" Report_ReportList "> 或是<DataSet Name> Report_ReportList </DataSet Name> 這裏Report是我在.xsd檔裏定義的DataSet名稱,而ReportList是table名稱,知道這個DataSet Name後,就可以動態改變RDLC的DataSource。 用我寫的程式片斷舉例: private void RefreshReport() { ReportViewer1.LocalReport.DataSources.Clear(); DataTable dt = getReportDataTable(); //這是我寫的private method ReportViewer1.LocalReport.DataSources.Add( new Microsoft.Reporting.WebForms.ReportDataSource(" Report_ReportList ", dt)); } 很簡單吧!只要加入一個Repor

另一個版本控制軟體--Mercurial

在下載 OpenJDK 時無意中發現 OpenJDK 已經轉換用 Mercurial 做 版本控制 。有個很詳細的手冊在 Distributed revision control with Mercurial 。 根據手冊上 Mercurial compared with other tools , Mercurial 針對 Subversion merge超弱這點有改進,害我也有點想跟進,有空得來看看這個 Python 寫的 版本控制 軟體。(我還不確定 Mercurial 能不能稱為 SCM ) 參考: Converting from Subversion to Mercurial

DataTable Select的陷阱

今天在測試 ZedGraph 時,發現我的報表資料有錯,查了DataTable裏的內容並沒有問題,仔細檢查才知道出在 dataTable.Select("部門編號=12"); 這段。 原因很簡單,我寫的DataTable並沒有強制設定欄位的Type,所以只能把每個欄位都當做字串處理,要改成 dataTable.Select("部門編號= ' 12 ' "); 就可以,特此誌之。

用ZedGraph畫統計圖

Update: 沒想到這篇居然變成Google搜尋ZedGraph第一篇中文網頁,不過還是誠心建議用Windows上的C#先看一下 免費的圖表元件:Microsoft Chart Controls ,除非你非得用.Net 2.0(Windows 2000)或是用 Mono 。 BTW,我並不想成為微軟MVP,所以本Blog並不是有問必答的喲^_^ 才剛貼完上一篇,馬上就有位朋友丟過來一個LGPL Open Source元件的網址: ZedGraph 。 參考: A flexible charting library for .NET

利用OWC畫統計圖

VB超人告訴我,可以用Microsoft Office Web Components(OWC)畫統計圖,比起其他的Asp.net統計圖,又多了些互動功能(在用戶端有裝Office的情況)。 下載: Office 2003 增益集:Office 網頁元件 參考: The Microsoft Office Web Components ASP.NET Server-Side Charting with OWC11 在Asp.Net 2.0的開發模式中,只要放在bin下就算加入參考,所以鳥毅先開一個檔案系統的網站 再把從codeproject下載的專案裏的bin目錄複製過來,省得自己找dll檔,在專案總管按下重新整理即可 把Alvin Bruney寫的這段Code複製到Page_Load,變成 view plain print ? protected void Page_Load( object sender, EventArgs e) { //First create a ChartSpace object to hold the chart ChartSpace objCSpace = new ChartSpaceClass(); //Add a chart and provide a type ChChart objChart = objCSpace.Charts.Add(0); objChart.Type = ChartChartTypeEnum.chChartTypePie3D; //add chart titles and legend objChart.HasTitle = true ; objChart.Title.Caption = "ASP.NET Charts" ; objChart.HasLegend = true ; objChart.Legend.Border.DashStyle = OWC11.ChartLineDashStyleEnum.chLineDash; objChart.Legend.Position = OWC11.ChartLegendPositionEnum.chLegendPo

Free Chart controls for ASP.NET

電腦管理程式的承辦人說希望能有長條圖,因此找了一下幾個免費的元件: WebChart Roll your own ASP.NET Chart Control NPlot A C# wrapper for the Google Chart API 不過說實話,如果沒有太特別的需求,內建的 Crystal Reports 就很好用,這個東西好像放在Server上要另外買。統計圖最有名的元件應該是 Proessentials ,我有下載試用一下,沒有像 Crystal Reports 和.Net整合的那麼好,而且一定要6.0版後才有支援UTF-8字元,敝公司已經買的5.0版就很可惜不能用(標題有堃會亂碼,好死不死敝公司有人的名字裏就有堃)。最後值得一試的是微軟自己的RDLC報表,雖然功能比不上 Crystal Reports ,但我的需求足夠了,而且預期會愈來愈強,應該就用RDLC了吧。 參考: Visual Studio 2008-初窺Report Viewer 2008 ASP.NET中动态控制RDLC报表 RDLC报表使用

沒寫完的程式

最近把公司的電腦管理程式寫完,想把source open出來,不知道會不會有比敝公司更小的公司需要?但是因為過度客制化,很多設計變得非常差 Orz... 好像有人說,在公司開發的軟體版權就算公司的,所以並不是我想丟出來就可以。 另外幾年前玩 龍博士魔術金字塔 卡關,寫程式解題寫到一半就卡住。我有成功解出一兩題啦,但速度實在太慢了。主要的問題在於我把每個棋子視為物件,再用窮舉法解太慢,而且我的邏輯有錯,重覆率過高;同時也需要介面輸入題目,這部份用Java寫比較麻煩,所以就停工了:P 若能夠寫到可以正常運作,很想把source提供出來,但不知道會不會有侵權問題。如果有哪位大哥知道此種棋類該如何解,煩請指點一下小弟該如何去做,先謝囉~

免費的燒錄軟體InfraRecorder

雖然大部份的燒錄機都有附燒錄軟體,但在公司軟體不歸我管,借軟體非常麻煩。前一段時間都用 CDBurnerXP ,但最近有朋友介紹 InfraRecorder ,這是Open Source的產品,當然二話不說就跳過來。基本功能包括資料光碟、影像DVD、音樂CD等都有,也可以製成iso影像檔,對我而言足夠了。 對了, InfraRecorder 有中文介面;如果覺得功能不夠強的話,就自己動手改吧!

又見免費防火牆

剛不小心又看到2個Windows用的Firewall: Webroot Desktop Firewall 和 PC Tools Firewall Plus 。 暫時沒空試,看看重灌狂人那裏會不會有測試報告:P 參考: 電腦好貼士:Webroot Desktop Firewall 防護功能齊全的免費中文防火牆軟體:PC Tools Firewall Plus 支援 Vista 的免費防火牆 - PC Tools Firewall Plus

不是長尾的書

朋友丟來一個 網址 ,據說這位女士的書熱銷八萬本,光靠賣書就賺進百萬。 所以她應該是超過若干本就能抽成,印象中有些出版社是用固定版稅,再刷時才有另外付錢。若以一本抽10元,就差不多有這位queen的收入,那麼算一下楚狂人應該賺了幾百萬,獨孤木應該也有六位數的收入... 朋友問我要不要寫本關於programming的書,我說別鬧了,程度好壞先不提,programming算是小眾市場,寫的很辛苦賺個幾萬塊還不如接case。電腦書賣得最好的應該是Office系列,其次是OS系列吧?不過市場大競爭也多,除了施先生的出版社,其他家應該沒辦法賣得太好,所以我完全沒考慮。當然囉,最近升級爸爸的良葛格和piggy以名講師身份賣的Java入門書銷路應該都還不錯,請繼續加油。

謀事在人、成事在天

再三天大家就會知道結果,鳥毅已經看到九五之尊的面相出現,因為洩漏天機會折壽,恕難奉告。葉教授和籃天威等人可能積許多福報,不怕折壽。 沒上的那位候選人也很優秀,各位別把勝負放在心上,畢竟謀事在人、成事在天。 參考: 歷史故事:謀事在人 成事在天 葉教授深談馬英九的八字 08卡位/籃天威大膽預言 謝長廷08坐大位 盲眼算命師 直斷謝長廷出線

FreeBSD 7.0 果然比較猛

忘記把FreeBSD 6.3的畫面抓下來 Orz 不過,在升級前我有確認過,Loading沒有跑到0.00過,不知道是不是FreeBSD 7.0 top的Bug呀XD 總之,就是拼了!在下把Mail Server從FreeBSD 6.3升級到7.0,再跑一次portupgrade -af,把所有的套件都升級,對,不是portupgrade -afP。以下是top畫面:

WretchXD不行了?

今天同學傳來一個 網址 ,叫我去看看。 因為在辦公室不方便看,想回家離線瀏覽,就拿出WretchXD,結果居然沒辦法下載。 看到"E"這個字母實在很想抓,最後還是得靠獨孤老大的Girl Digger呀... 不過後面兩位的都抓不下來,獨孤老大加油,咱們的福利都靠你了。

Posting Acceptor ActiveX更新

FIX: Posting Acceptor ActiveX Upload Control Does Not Load if Internet Explorer 6.0 SP1 Is Installed (自動翻譯: 如果安裝 Internet Explorer 6.0 SP 1 Posting Acceptor ActiveX 上載控制項不會載入 FIX: ) 剛才無意中看到這個更新,鼎新在EasyFlow用到Posting Acceptor這個微軟開發的上傳元件,但是在IE6SP1之後因為安全性被關閉。這是個老問題了,但台灣似乎很少人提到,鼎新的FAQ好像也沒提到。(敝公司的EasyFlow是2002年啟用,這個更新是2003年推出的,不怪鼎新) 我以前的做法是在user login時修改機碼,把 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{886E7BF0-C867-11CF-B1AE-00AA00A3F2C3}\Compatibility Flags數值改為512 解決法:下載 q329326.exe ,安裝後蓋掉原來的2個cab,再把原來html或asp裏的{886E7BF0-C867-11CF-B1AE-00AA00A3F2C3} 改成 {11D856F0-5660-4371-B131-C71A44F4E73E}

台灣真小

前幾天同事忽然問我知不知道 鄭子璉 ,鳥毅說因為 鄭子璉 是VB超人的偶像,所以知道;原來 鄭子璉 是他大學同學。另外一位同事是 leeym 的大學學長,還有一位年輕有為的同事則是 hlb 的高中學長。 這麼小的一間辦公室,居然有三位同事和名人認識;世界真小,哦,該說台灣真小。

非戰之罪

朋友看到 一些關於 VeryXD 的技術解疑 ,問我為什麼新創網站為什麼很多網站都用RoR?鳥毅的答案很簡單:練功。 Ruby On Rails這兩三年真是火熱到不行,因此一堆技術愛好者蜂擁而至前仆後繼勇往直前去學習,並且實作網站來練功。但同時RoR也是不斷改版,向前相容性並不是很好;一位同事談到PHP,認為幾乎每個open source的PHP portal,到一個程度就砍掉重練,沒有延續性。軟體的生命週期在企業中是很重要的事,就算是 XP 強調的快速改版,若原始碼三天兩頭就因為相容性需要大幅度改版,大概會被主管K到死。 看一下XDite在這篇說的: VeryXD 平日的 PV 約是一天2萬,歷史尖峰是16萬。平常開一條就夠,歷史尖峰那次開了四條。Reverse Proxy 的用量大概是平常一天 5~7G,歷史尖峰 42G 。... 後來正式營運的時候筆者才發現一件寫小網站時不知道的事,就是 Rails 是個巨大的怪獸,非常非常非常的吃記憶體。 因為VeryXD以圖為主,因此流量會遠比文字為主的網站大,但與鳥毅曾任職的入門網站比起來,16萬的pageview實在不算很高呀...我並不是說RoR不好,但要有本事tuning RoR,必須對整個framework很瞭解,這點和asp.net相同,快速開發不知道framework幹了什麼事的人居多。 不論 欲被 Google 收購,先練 python / java ? ,用Java是向前相容性非常好的選擇。蔡學鏞在三月份的Run!PC也有提到,Java並沒有比.Net差,但IDE就沒有Visual Studio強。在下最近完成的內部系統,花了很大的功夫在刻ORM,結果VS2008拉LINQ就可以直接幹掉。所以難怪中小企業愛用.Net,這不是Java的錯呀!

升級到FreeBSD 7

前陣子才把Mail server升到FreeBSD 6.3,今天就先把Firewall升到FreeBSD 7.0。 這次升級因為在mergemaster就掛了,所以仍然得用光碟升級安裝。裝好後檢查一下原來的設定檔有沒有被更動,再製作個內含ALTQ的kernel就上線,目前沒什麼問題。 聽說FreeBSD 7.0有比較快,等我把Mail Server也換掉應該會有感覺XD 參考: What's New in FreeBSD 7.0 Review of FreeBSD 7 Update:剛才看一下,loading還真是輕呀(印象中以前是0.01~0.03左右) 再Update: FreeBSD 7.0-RELEASE Announcement 有寫,FreeBSD 6.3以後內建freebsd-update,沒有的也沒關係,升級步驟: # fetch http://people.freebsd.org/~cperciva/freebsd-update-upgrade.tgz # fetch http://people.freebsd.org/~cperciva/freebsd-update-upgrade.tgz.asc # gpg --verify freebsd-update-upgrade.tgz.asc freebsd-update-upgrade.tgz # tar -xf freebsd-update-upgrade.tgz # sh freebsd-update.sh -f freebsd-update.conf -r 7.0-RELEASE upgrade # sh freebsd-update.sh -f freebsd-update.conf install # shutdown -r now # sh freebsd-update.sh -f freebsd-update.conf install # portupgrade -faP # sh freebsd-update.sh -f freebsd-update.conf install # shutdown -r now 根據 Rebuilding world 原來我升級時把順序弄錯了,正確步驟是: # make buildworld # make buildkern

WIPFW測試

因為政治力影響,代理人完全不懂unix;不得已的情況下,在下試著用Win2000 Server做Firewall,啟動ICS(NAT)後,再裝Comodo Firewall設定rule。 因為Comodo Firewall不支援NAT和port redirection,才出此下策。另外找到 Routix NetCom 支援NAT等,但免費版只能用前5個rule。 本來想用 WIPFW 做port redirect,結果在policy routing這關就先失敗,看來Windows很難滿足我的需求呀... 結果還是得多加一層firewall,既然代理人要傻瓜介面,在W2K外面包個 pfSense 或 m0n0wall 好了。

Firefox存成png的addon

我以前用的Save As Image好像變成 Abduction ,但它在Firefox 3.0b4上有問題,而且似乎無法處理中文目錄。 另一個 Screengrab 就可以正常使用,所以就跳槽囉~ P.S. 這兩個套件都沒有正式支援到3.0b4,我是下載回來改xpi裏的install.rdf

防釣魚功能比較

今天好不容易把報表寫出來,整理email時看到: 忍不住就測試一下,先來看看IE7的結果: IE7這樣有點遜呀....來看看Firefox 3:

GridView合併儲存格

修改自 藍色小鋪 豬豬泰芮陳 關於 GridView的合併儲存格 , 這裏 有類似的程式,但我覺得豬豬泰芮陳寫得比較好。我改成多欄位合併,其餘沒動。 在 [Asp.Net]GridView中根据前后列之间的关联关系合并单元格 有更進階的做法,但不是我要的。 protected void GridView1_PreRender(object sender, EventArgs e) { int[] mergeColumns = { 0, 1, 3, 4 }; //要合併的欄位 foreach (int mergeColumn in mergeColumns) { int i = 1; foreach (GridViewRow wkItem in GridView1.Rows) { if (wkItem.RowIndex != 0) { if (wkItem.Cells[mergeColumn].Text.Trim() == GridView1.Rows[(wkItem.RowIndex - i)].Cells[mergeColumn].Text.Trim()) { GridView1.Rows[(wkItem.RowIndex - i)].Cells[mergeColumn].RowSpan += 1; wkItem.Cells[mergeColumn].Visible = false; i += 1; } else { GridView1.Rows[(wkItem.RowIndex)].Cells[mergeColumn].RowSpan += 1;

奇異果後傳

寫完 奇異果離開了 後原本以為可以不用再看到這位驚世駭俗的先生,沒想到還有後續。(不知道詳情請先看 另一顆奇異果 ) 竹科大廠主管的心臟果然不太強,還是說奇異果踢到鐵板?本來答應奇異果把email保留到1月底,奇異果又說些有的沒的,理由是要感謝前主管,硬是要留到2月底。由於敝公司沒啥機密資料,其實多留一個月沒什麼,但他在電話裏又一直講說那個XX電很硬,錄取標準很嚴格什麼,還很"好心"告訴我下次面試的時間。又說他因為公司離家太遠等等,所以要到本行的某某顧問公司,現在有幾個選擇等等...我實在是沒什麼耐心聽下去,就把話筒放在脖子上,等他講完再掛電話。 當天下午果然收到奇異果寄來的email,還寫他的錄取分數,也只有英文八十幾比較高,程式設計的分數才六十幾分,換做我才不敢給人看咧!雖然曾經是上市股王的電子公司確實不錯,但我也不需要靠你推薦吧! 2/27想說2/28要放假,早上趁著空檔就提前關他的email,沒想到十點多再接到他的電話,說最近很忙,沒時間寫感謝函云云,反正就是要我3/3再關email acount。 今天果然收到他的email,寄給原經理的轉給我一份,其中有句請容我引用: 我手邊恰好沒有XX課陳課長及各個課員的 E-Mail, 請代我向他們轉達我的謝意 這是怎樣呀!用了一年的OpenWebMail不知道有公用通訊錄這種東西嗎? 人外有人、天外有天 Update:在半年後才知道,奇異果確定要被趕走後,陳課長被公會副會長約出去吃飯,旁邊卻坐著奇異果的父母。都三十出頭的人了,又有MIT的高學歷,還要靠父母到處拜託,實在是$#%^&@...