locked
Windows 7 如何利用PowerShell (或批次檔, Registry) 來只更改系統語系 但是不動顯示語系? RRS feed

  • 問題

  • 請問各位 在PowerShell 中可以利用 get-UICulture (顯示語系) 和 get-Culture (系統語系) 得知語系的設定. 但是要如何更改其中的值? 我的需求是將系統語系更改為正體中文, 但是我要顯示語系仍然保留為英文.

    1. 原始Windows 7 企業版 是英文

    2. 安裝了正體中文的語言包 (可以讓使用者 自行安裝中文軟體時, 正確顯示中文)

    3. 以Batch或PowerShell 方式更改系統語系(system locale)

    感謝

     




    • 已編輯 KrisChen 2011年11月15日 上午 01:35
    2011年11月14日 上午 07:38

解答

所有回覆

  • 這一篇文章你可以參考一下
    2011年11月14日 上午 08:10
  • 感謝您的回覆 但是那篇文章是在設定powershell的語系 而不是整個系統的語系

    其實我不一定要用powershell 其他可以用批次檔 或registry的方式都可以

    主要是能夠用不需要人為操作的方式 來達成系統語系更改

    但是我一直都沒找到

    2011年11月15日 上午 01:31
  • 希望把系統預設語系改成別的這個需求的目的是??
    如果只是希望在英文版環境下正確顯示中文,
    僅需要到控制台去更改 Non-unicode 等語言設定為繁體中文即可。
    蘇老碎碎念
    資訊無涯,回頭已不見岸
    好用的微軟技術支援小工具
    Facebook - 微軟台灣官方論壇愛好者俱樂部
    如何在論壇正確發問,請參考iThome的文章: 如何問到我要的答案
    Windows 7 技術支援中心
    2011年11月15日 上午 01:41
    版主
  • 感謝您的回覆 如同我第一次貼文 原始IMAGE為總公司的英文 但是因為使用者90%為正體中文

    需要完整中文支援 卻必須要保持顯示的WINDOWS為英文 以便IT/MIS(英文) 有需要時幫使用者解決使用問題

    而且使用者 有可能安裝中文軟體 也希望能正常顯示其安裝過程 以及程式執行後正常顯示中文

     

    再者到控制台更改Non-Unicode (也就是system locale) 還是需要人為介入修改

    目前的需求就是要解決 如何透過powershell, batch 或 registry 方式達成

    2011年11月15日 上午 02:09
  • 如果安裝的中文軟體是採 Unicode,
    那麼安裝過程及完成後的使用都一定能正常顯示中文,
    並不需要特別改系統語言,
    假使不能正常顯示,主要問題還是在該軟體並沒有使用 Unicode,
    只要到控制台指定 Non-Unicode 的設定為繁體中文即可。

    依照你希望的目的,
    或許應該是要找出有無快速大量佈署設定的方式,
    但正常來說,安裝 Win7 時,
    有預先指定好「時間及貨幣格式」為繁體台灣,
    Non-Unicode的設定應該也會是繁體台灣才是。


    蘇老碎碎念
    資訊無涯,回頭已不見岸
    好用的微軟技術支援小工具
    Facebook - 微軟台灣官方論壇愛好者俱樂部
    如何在論壇正確發問,請參考iThome的文章: 如何問到我要的答案
    Windows 7 技術支援中心
    2011年11月15日 上午 02:35
    版主
  • 是否可以確認一下你這邊的需求,順便整理一下觀念。

    1.WINDOWS 7 (包括VISTA、XP、2000)都是unicode的核心。

    2.顯示什麼語文不是重點,正確來說,應該是軟體所使用的『語系編碼』是什麼。如果軟體的語系編碼是unicode,不論顯示的是中文日文韓文都可以正常的顯示,但如果編碼是如BIG5、MS950、SHIFT-JIS等,就必須要去控制台去設定non-unicode才可以。

    3.作業系統安裝的是英文版的OS,需要顯示出中文的操作介面(如開始功能表是繁體中文這種的),這個稱之為MUI(多語系使用者介面套件),這個就可以依照每個使用者去設定中文、英文,以及系統開機等這種使用者登入前的畫面語言。

    4.如果是要設定non-unicode,利用大量部屬工具在安裝作業系統時就可以先行設定好。

    2011年11月15日 上午 02:53
  • 感謝您的回覆 因為我們不能動總公司的IMAGE 所以只能採取事後補上中文的方法

    至於使用者的中文自行安裝 目前經驗似乎不適很理想 安裝過程還是會有亂碼

    而且執行結果也會有亂碼 現行唯一可以用批次更改的是時區 可以用reg import調整為 台灣時區

    希望能找出 調整系統語系 中文輸入 的批次命令 不需要IT或使用者一項逐一調整

    2011年11月15日 上午 02:58
  • 所以你需要的是設定『 non-unicode、mui、輸入法、時間、位置、格式 』這些內容嗎?

    2011年11月15日 上午 03:17
  • 感謝 Ginre的回覆 基本上是的.

    原始英文Windows7 + KB972813 + 中文IME

    我希望顯示語系Display Locale (開始 控制台 等等) 為英文. 但是系統語系 System Locale (中文軟體 銀行帳單程式 之類) 可以正常顯示.

    我的認知有錯誤? 還請各位指正.

    目前 如果沒有安裝KB972813 並且調整系統語系 為正體中文,  一般銀行的帳單程式 在安裝和執行後, 都是亂碼.

    (例如富邦銀行)

    2011年11月15日 下午 01:31
  • HI:
    建立一個XML檔如下,假設路徑C:\AAA.xml
    <gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend">
    <gs:UserList>
    <gs:User UserID="Current"/>
    </gs:UserList>
    <gs:SystemLocale Name="zh-TW" />
    </gs:GlobalizationServices>
    執行以下指令
    control.exe intl.cpl,,/f:"c:\AAA.xml"
    重開機後就會變更Non-Unicodec為中文(繁體,台灣)
    其他部分可以參考
    http://technet.microsoft.com/en-us/library/cc721887(WS.10).aspx
    http://blogs.msdn.com/b/michkap/archive/2006/05/30/610505.aspx
    http://social.technet.microsoft.com/Forums/en/w7itproinstall/thread/dd4b84d6-ac37-4484-8313-ac04b80e533d

    謝謝

    • 已編輯 IronMouse 2011年11月15日 下午 11:23
    • 已標示為解答 KrisChen 2011年11月20日 上午 05:34
    2011年11月15日 下午 11:22
  • 我覺得需要改正一下你的觀念。
    對OS而言,使用者介面該顯示什麼語言是屬於MUI的事情(我們先假設OS是英文版的)。KB972813 是MUI的套件。

    但是有個東西必需要把他分清楚:1.顯示的語言、2.語言的編碼。

    應用程式顯示的語言是繁體中文,看起來是繁體中文的東西,不過實際上應用程式的編碼可能是BIG5或者unicode,這觀念和我們在網路上上網的顯示語言概念是一樣的。
    你用IE開隨便一個網頁,按右鍵>編碼,你可以看到很多不一樣的編碼方式,你可以選看看。
    拿現在這個網站來說,你看起來顯示的是繁體中文,不過編碼方式卻是UTF-8,你改成繁體中文BIG5,你就可以看到整個網頁變成亂碼。

    回來你的主題。
    如果你剛剛有玩過我剛剛說的網頁編碼遊戲,那你可以把這個觀念套到你現在的狀況上。
    這些MUI不管你安裝的是什麼語言版本,他是unicode的編碼,所以你看起來雖然可以正常顯示,但這僅代表unicode是可以正常顯示。
    不過如果你的應用程式不是unicode的編碼的話,你就必須要在控制台>地區與語言>系統管理>非unicode程式的語言(Control Panel > Region and Language >Administrative >Language for non-Unicode programs > change system locale),這邊去選擇適當的語系編碼,你的非unicode應用程式才有可能會正常的顯示。

    既然這邊才是控制你的應用程式是否可以正常顯示的地方,那『顯示語系Display Locale 』這是英文還是中文就沒有什麼太大的關係了。你改這個也沒辦法改變你的應用程式無法正常顯示中文的問題。

    2011年11月16日 上午 01:35
  • 感謝GINRE的回覆 我知道您的解釋 而且我也一直再次強調的

    原始IMAGE為英文 + 顯示語系英文display locale + 系統語系英文system locale

    以上是我拿到的Windows 7 因為95%使用者為正體中文 所以我現在希望能讓IMAGE能有更佳的中文支援

    所以我裝了KB972813 (中文MUI) 並且希望只要能將系統語系(System Locale) 自動改為正體中文

    現在我需要的是 能有批次命令之類  將系統語系(System Locale)改變即可

    我會試試IronMouse的建議試試看 他的方式應該是我一開始就想要的 

    保持所有英文的IMAGE設定 但是只修改   1.時區  2. 安裝中文MUI   3.系統語系  4. 輸入法加減

    經過測試IronMouse網友的建議是正確解答 經過重新開機後 系統語系已經是正體中文

    我現在還想修改輸入法的部分 因為IMAGE內建的是英文鍵盤 但是加入KB927813會自動放入爛爛的新注音

    我想把新注音移除 並且加入中文的英文鍵盤 再加入IME2010 這幾天要去找一下有關XML資料詳細語法

    再次感謝IronMouse的幫忙 也謝謝其他人的回覆


    • 已編輯 KrisChen 2011年11月21日 上午 01:02
    2011年11月20日 上午 05:08