簡體   English   中英

資源文件未編譯為DLL

[英]Resource Files not being Compiled into DLLs

我有一個本地化的WinForms應用程序。 為了避免翻譯過程中出現大量迭代,我提供了我們的翻譯軟件,使他們可以直接編輯.resx文件。

這對於與UI組件(窗體/控件)無關的資源文件非常有用,但是對於窗體和控件,資源似乎沒有更新。 我的意思是,在設計時所有資源字符串都是正確的(Text / ToolTips等),並且我可以看到正確的翻譯-當我運行應用程序(調試或任何其他版本)時,翻譯沒有更新,為什么?

謝謝你的時間。


EDIT1。 情節進一步加深。 更改它們的組件時,有兩個按鈕根本沒有更新(按鈕文本,工具提示或由基礎資源文件控制的任何內容)。 可以說我將按鈕文本從“鎖定工作簿”更改為“鎖定工作簿GG”,然后新文本顯示在設計器和.resx文件中(都在.resx設計器和后面的代碼中),但是當我運行代碼時(在調試或釋放模式下)按鈕文本未更新!

如果我更新了上面更新的按鈕旁邊的按鈕,這是否會更改正在運行的應用程序中的文本? 這很麻煩,因為我看不到舊文本的存儲位置,為什么對於子按鈕集,其組成文本沒有得到更新!

任何想法都受到熱烈歡迎!


EDIT2。 我試圖刪除.suo並清理並重新編譯。 我還從解決方案中刪除了麻煩的表格,然后重新添加。

為了看到這種奇怪的行為,這里有一個有問題的按鈕(“鎖定工作簿GG”)和一個正常的按鈕(“設置為默認工作簿GG”)。

設計時

現在在運行時,我看到

運行

也許您的構建設置錯誤?
這就是我的dll所擁有的。

在此處輸入圖片說明

我給了我們的翻譯軟件,讓他們可以直接編輯.resx文件

那當然不是一個好主意。 任何專業的翻譯人員都知道如何處理.NET resx文件。 即使他們沒有翻譯員傳統上使用的任何工具(如SDL Passolo),也仍然可以使用SDK隨附的標准Winres.exe實用程序

無論您寫什么,都可能有錯誤。 很難對問題可能是什么進行逆向工程。 除了Winforms表單的.resx文件與您從資源文件項目模板或資源設計器中獲得的文件完全不同。 有很多資源命名技巧可以避免表單屬性與其控件屬性之間的歧義。 輸入錯誤的名稱,將無法正常工作。

不要自己編寫,至少在必要時要求他們使用Winres.exe。 這是免費的。

該按鈕的綁定在相關表單的設計器文件中完成,您是否檢查了某些問題? 嘗試刪除設置資源的代碼,然后通過設計器將其重新添加。

可能這與CopyLocal屬性有關。 請檢查這些資源文件是否為TRUE。 如果不是,請將它們設置為true,否則,在成功編譯之后,不會將它們復制到輸出目錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM