自從PADS 9.5發布以來,我一直在用這個版本,穩定性不錯,最重要是支持對象的捕捉,非常方便,而且還支持中文菜單,遺憾的是中文菜單環境下有bug,只要在默認狀況下修改零件標號,就會自動退出。在默認狀況下,雙擊零件的標號,下圖這紅圈中的標號屬性下拉菜單會為空,在這種狀況下直接點“確認”程序就會自動退出。
 
如果手動選擇了就不會有問題,如圖:

這個問題只有在中文菜單的環境下才會出現,在使用英文語言的菜單下就不會有這樣的問題。所以,我也就只能使用英文版了,一旦忘了選擇導致自動退出,所有辛苦就白費了,反正這個軟件一直是英文版,對我來說沒什么影響。
這兩天忽然有興趣來研究一下這個問題,懷疑是不是中文的語言包沒寫好,也許是剛好中文語言包多了換行符什么的,修改一下也許可以解決這個問題。于是我就看了一下pads的安裝目錄,先找一下看有沒有各語言的文件,果然,安裝目錄下有chs,enu,jpn,ptb這些文件夾,應該就是pads所支持的“中/英/日/葡萄牙”四種語言的文件了。
打開chs的文件夾看看,里面有好幾個文件,我們需要先確認那個文件是我們需要進行修改的。在文件夾里搜索包含“參考編號”的文件,結果如下:

根據文件名來判斷,我們需要修改的應該是“powerpbc.mdb”文件。所以我們先選擇這個文件進行初步修改,看一下是不是這個文件。當然,修改前先復制一份到其它文件夾做備份。用Ultraedit打開這個文件,替換所有的“參考編號”為其它,如“參照編號”或“參一編號”,Ultraedit提示一共替換了79處,先保存,再運行pads layout看有沒效果。這里就不貼圖了,結果如我們所料,可以確認“powerpbc.mdb”這個文件就是我們所需要修改的文件。但是一共有79處,那一處才是我們要修改的呢?于是我們每5處改成一樣,也就是前5處改成“參一編號”,接下來5處改成“參二編號”,當我改了30處以后,我想試一下效果的時候,pads提示出錯,自動退出了。我只好用備份的文件還原回去,但是每次我使用一個處一處替換的方法進行行修改,pad都會提示自動退出,如果是全部都替換就不會。看來pads 在加載語言文件的時候會做一些檢查或校驗。到這個時候,修改進度被卡住了。
冷靜的想了一下,也許可以從其它語言文件里找到正確的位置。不管怎么樣,先試試再說看看看熟悉的英文版吧,先把語言切換到英文,看看元件標號顯示的名稱是什么?“Ref.Des.”,好,打開enu文件夾下的“powerpbc.mdb”文件,搜索“Ref.Des.”替換為其它字符,Ultraedit提示一共替換了2處,我的眼睛一下子亮了,柳暗花明又一村啊。根據上下文的意思,我選擇了其中一處可能性比較大的字符進行修改并運行,確認了字符串的位置。這個字符串處于”End ICDB Integration******************“后面,而且在文件的末端,應該比較好找。在中文的“powerpbc.mdb”文件里搜索"End ICDB Integration",一下就找到了,而且只有一處,位置和英文的差不多。一連串星號后面跟了個熟悉的“參考編號”,先改一下看看。經修改并驗證,確認這個位置的“參考編號”就是修改元件標號時顯示的“參考編號"文字。
仔細對比了中文和英文的這個位置的結構,發現“參考編號”和“Ref.Des.”都剛好占8個字節,它們前面和后面都是‘00',
文件結構看起來沒有問題,接下來都不知道怎么改了。又想了好久,我決定試一下,英文的菜單文件覆蓋中文的菜單文件,看看會有什么樣的結果?會不會又提示錯誤并退出?但最終結果讓我喜出望外,pads不但沒有退出,而且在雙擊零件標號的時候,原來空白的下拉菜單不再空白,“Ref.Des.”占據了它。有了這樣的結果,自然就有下一步動作,把中文菜單文件里的“參考編號”修改成“Ref.Des.”

最終運行的結果,成了,嘿嘿,成功的喜悅,你懂的。。。
雙擊零件標號后,第一個下拉菜單不再空白:

最后來總結一下修改方法:
1、用Ultraedit打開安裝目錄下“\9.5PADS\SDD_HOME\Programs\chs”文件夾下的“powerpcb.mdb”文件
2、查找"End ICDB Integration",不包含雙引號,最終只會找一個結果,而且后面跟著一串星號。
3、把星號后面的“參考編號”修改成英文的“Ref.Des.”,保存再重新運行Pads Layout就可以了。
在此文發表的時候,聽說Pads 9.5 update 1也是這兩天發布了,不知道有沒有修正這個問題。
|