2015-10-18 39 views
-2

我的Windows應用程序試圖解析命令行工具的命令結果,並且它在英文語言包中運行良好。 但是,我想知道客戶是否使用不同的語言包,如果命令的結果是日文/中文/韓文,我想我應該相應地修改解析邏輯。 我認爲這種方法似乎不是一個正確的方向。只有Windows命令行工具的英文輸出

有什麼辦法可以強制英文輸出嗎?

+0

你究竟做了什麼?調用一個程序並解析其輸出?這是語言包和/或區域特定的。告訴我們你的代碼。並嘗試用API調用 – Marged

+0

替換外部調用。例如,我的應用程序使用Windows外殼並創建一個Windows服務,它應該運行'sc.exe create .....'。如果成功,shell的結果就像英文包中的'[SC] CreateService Success'。但是,如果用戶使用其他語言包,結果將如'[SC] CreateService ####'####表示其他語言。我正在尋找我只能在Ms-Dos中獲得英文結果/輸出的方式。謝謝。 – Sigularity

回答

0

首先,您不是與MS-DOS交談,因爲這是它自己的操作系統。 Windows不再是建立在DOS基礎上,最後的版本是我認爲的Windows 95和98。

您正在調用Windows的命令行命令/可執行文件,並且不能強制使用全部英文。也許你可以解釋返回代碼並以這種方式檢測錯誤。有些工具可能會被迫返回csv(例如wmic),但我不認爲sc可以。

我的建議是你搜索一個解決方案如何從你的編程語言調用CreateService。

+0

這就是我想要檢查的。 「不能被迫使用全英文」。好的。我想我應該解析每種語言輸出。非常感謝。 – Sigularity

+0

@Sigularity我的建議仍然是使用API​​,這甚至可以讓你照顧UAC並獲得安裝服務的必要權限。隨時歡迎您修改您的問題,以消除誤導性信息/標籤。看看我的編輯。 – Marged