2010-02-17 54 views
1

我有一個.NET應用程序,其中包含要本地化資源的附屬程序集,但我想將本地化工作留給客戶,我可以用強名稱簽署我的應用程序,然後交付應用程序二進制到客戶,讓他們自己做本地化工作?我還需要做什麼?非常感謝。如何處理.NET本地化

回答

1

第一個問題將是爲什麼你想離開這個你的客戶。如果您希望使用內置的.NET本地化功能,則需要生成.resources文件,將該文件鏈接到附屬程序集,然後放置到GAC或適當的可執行文件的相對子路徑中。這真的是一個開發人員的事情......不完全是客戶的事情。

也就是說,沒有理由不能爲您的客戶提供可以爲他們做所有事情的工具,並且只需要他們爲您的每種資源填寫適當的語言特定數據。編寫一個爲資源提供簡單編輯器(甚至可以重新託管Visual Studio資源編輯器)的工具以及一些選擇語言代碼和構建的選項,(如有必要)簽名,並部署。

以下MSDN文檔區域可能會有所幫助。 Resources in ApplicationsCreating Resource Files

+0

嗨,謝謝你的回覆。如果我的強名稱簽署了我的二進制文件,我的用戶是否可以對其進行本地化? – smwikipedia 2010-02-17 07:03:41

+0

您的程序集不包含本地化數據。您的資源被編譯成附屬程序集,每個語言代碼一個。因此,如果您有MyAssembly.dll,您可能有一堆特定於語言的程序集:MyAssembly.en.dll(通用英語),MyAssembly.en-us.dll(美國英語),MyAssembly.en-gb.dll(英語英語),MyAssembly.de.dll(德語),MyAssembly.fr.dll(法語),MyAssembly.sp.dll(西班牙語)等。如果您的客戶希望創建德語和法語翻譯的程序,並且您提供他們用一個工具來做... – jrista 2010-02-18 03:03:28

+0

......你的工具需要他們提供的資源,生成一個.resources文件,將該文件鏈接到一個衛星組件中,並在必要時簽署新的衛星組件。程序集一旦存在,它只需要部署到應用程序的正確子文件夾中(您可以在MSDN文檔中找到更多關於該文件夾的內容)。只要您正確使用.NET資源管理器來檢索本地化的字符串,圖像,圖標等,一旦一個文化特定的組合存在於正確的地方......然後.NET完成剩下的工作。 – jrista 2010-02-18 03:06:12