Vista Icon in VS 2005 not compatiable

剛才在弄Toolkit program. 為了 for x64 Edition, 買了一個NTPort Library. 本來是想自己寫, 不過後來發現 x64 OS, M$基於安全理由把沒有 Digital Signature 的Kernel Driver 都踢掉了.(個人使用可以在開機按 F8 跳過這個機制, 但是出貨給客戶沒辦法), 那買一個數位簽名, 又要一年 over USD 450大洋. 而NTPort Library 只要賣 USD 35. 所以二話不說, 就直接跟老闆建議說要買(當然是測過可以用,  不過測試過程遇到些問題, 手動一開始不會裝, 主要是有個目錄, 因為是 32bit Program是透過Wow64執行的, 所以要copy to SysWow64目錄下。 沒辦法, 萬惡的Vista 本人一直沒興趣用, 所以用憋腳英文寫信, 給對岸的軟體作者, 不過回信開頭就是叫我買, 要註冊後, 才有完整的技術支援, 關於這點., 真是奇怪了, 如果試用版如果不滿意, 多數人, 不就會想放棄了? 不過我一開始就檢查過, 試用版也是有Digital Signature, 所以我猜想應該是自己步驟有問題, 而且想到再難搞, 也沒比去買Digital Signature麻煩(更何況就是自己寫, 也應該會遇到一樣的事情), 就不死心的試下去, 最後終於測試成功.

昨天就想說新的Program 應該要有新的Icon,  就下載了 GIMP開始畫, 不是在寫SW怎麼突然要用GIMP? 沒錯, 應該很多跟我一樣的打雜工, 一定也是邊寫程式, 邊作手工藝, 邊兼差美工設計, 尤其是薪水領的越少的時候, 越是需要身兼各種技能, 這叫發展多種專長,保持職場競爭力,如此才不會失業. 君不見政府,只要失業率一高, 就會叫失業勞工, 去多學學第二專長. 才能找到新工作. 不過根據我的觀察 SW 如果要多才多藝, 通常就是薪水領的越少, 就會需要越多種技能, 而且會的越多薪水只會越低,更容易失業, 因為其他的雜技, 實際上並不是SW工程師的專業核心技能, 通常會出現這樣的情形, 就是薪水夠低, 老闆想省的麻煩, 另外找專人來做這些看起所謂的雜事.所以不到萬不得已, 還是盡量保持啥都不懂, 然後表現出自己的核心價值.

下圖是今天完成的 256×256 Icon檔案, 不是很美觀, 但是還差強人意吧!!, 然後再用一個Free 的IconFx, 做了一個 256×256, 48×48, 32×32 的 Vista Icon Libray

CirButton256

弄好後, 加進 .RC檔案, Rebuild Project, 就發現compiling 根本過不了呀

會出現Error "RC2176:  old DIB in filename. Pass it through SDKPAINT.

不過這串有提到一些解法 http://social.msdn.microsoft.com/Forums/zh-TW/windowsuidevelopment/thread/3f13af3b-8aa0-4b12-bbe6-66d40039ef70u

不過我換了 Windows SDK v6.0 中的 RC.exe and RcDll.dll 後, 還是出現一樣的訊息, 除了版本號碼不一樣

Compiling resources…
1>Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
1>Copyright (C) Microsoft Corporation.  All rights reserved.
1>.WirelessManager.rc(31) : error RC2176 : old DIB in resnewWM.ico; pass it through SDKPAINT

還是不行 T_T, 免費的好像只剩下這個方法 http://www.rw-designer.com/compile-vista-icon

下次重裝電腦, 再來裝 VS2008, 反正暫時也沒有開發 WinCE 6.0 的計畫, 雖然大頭已經指示要來研究 OMAP 3530. 不過我想依照他們的進度, 我還是慢慢來好了, 以免被他門詭異的看法搞的不知所措, 還是無知比較幸福 😛

有錢的可以選 http://www.axialis.com/tutorials/tutorial-vistaicons.html 這個解法

Update: 剛下了 Windows SDK for Windows Server 2008 Rc.exe and RcDll.dll Update ,透過 7-Zip 手動解開安裝包,取出執行檔,  不過仍然一樣出現下列訊息, 還是版本除了版本號更新外, 一樣 Error, 難道還真的是 ico 不認得 ?

1>Compiling resources…
1>Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
1>Copyright (C) Microsoft Corporation.  All rights reserved.
1>.WirelessManager.rc(31) : error RC2176 : old DIB in resNewWM.ico; pass it through SDKPAINT

看來應該是除了 RC.exe & RcDll.dll 外, 還需要置換其他檔案才行

Update 2:  經過反覆測試, 須要未壓縮的 256×256 format 才行, 不過這樣會讓執行檔變大很多!!(用 V6.1.6723.1的版本) , final test pass when use a uncompress vista icon. but will get a bigger size execute file.

廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s

%d 位部落客按了讚: