題 使用Win7的“發送到>壓縮(壓縮)文件夾”在名稱中使用unicode字符壓縮文件時出錯


當我嘗試壓縮包含名稱中的unicode字符的文件時,例如或,我收到以下錯誤:

[窗口標題]壓縮(壓縮)文件夾錯誤

[內容]'C:\ Asd.txt'無法壓縮,因為它   包括不能在壓縮文件夾中使用的字符   作為。您應該重命名此文件或目錄。

[好]

當我重新安裝Windows 7時,這只會成為一個問題。我可能有一些必要的資源從這個錯誤自動解決,但現在幾乎是乾淨的安裝,我不能壓縮文件。我該如何解決?

UPD: 自從我發布這個問題以來已經過了一段時間,我安裝了一些常用的應用程序,但問題仍然存在,我不確定是否可以通過安裝以前的某個特定應用程序來修復它。


Windows 10的內置壓縮可能沒有這個問題,如a 評論這個問題


12
2017-09-18 20:38


起源


沒有冒犯,但使用適當的壓縮程序有什麼問題,比如WinRAR或7-Zip(免費)? - Karan
我喜歡標準窗口的拉鍊,因為它只需要兩次點擊(暫停),它就是乾淨的安裝。 - user1306322
我剛剛發現,使用Windows“發送”的工作與Winrar的“最佳”壓縮工作一樣好,但速度要快得多。 - user1306322
我想補充一點,在所有這些不便之後,我決定開始使用7-zip進行快速存檔。也許它比以前多幾點,但絕對值得擺脫這種挫敗感。 - user1306322
看來win 10內置拉鍊現在支持unicode文件名。 - Imre Pühvel


答案:


如果違規字符來自英語以外的語言但Microsoft支持,則可以安裝相關的字符 MUI(多語言用戶界面)語言包 來自Windows Update,或相關的 LIP(語言界麵包) 從 這裡 作為可能的解決方案。

除上述內容外,您可能還需要更改 系統區域設置

系統區域設置確定默認字符集(字母,   符號和數字)和用於輸入和顯示信息的字體   在不使用Unicode的程序中。這允許非Unicode程序   使用指定的語言在您的計算機上運行。你可能需要   在安裝其他時更改默認系統區域設置   在您的計算機上顯示語言。選擇其他語言   系統區域設置不會影響菜單和對話框中的語言   用於Windows或其他使用Unicode的程序的框。

為此:

  1. 在“開始”菜單搜索框中鍵入“region”(不帶引號)

  2. 打開 地區和語言 控制面板小程序

  3. 點擊 行政的 選項卡,然後,在非Unicode程序的語言下,單擊 更改系統區域設置。如果系統提示您輸入管理員密碼或進行確認,請鍵入密碼或提供確認。

  4. 選擇語言,然後單擊“確定”。

  5. 如果系統提示您重新啟動計算機,請單擊“是” 現在重啟 這樣做。

    Win7 Change System Locale


但是,如果違規字符是這樣的  如上所述,我不相信微軟有任何正式的解決方案 zipfldr.dll限制,只要Windows有這個功能就存在(所以,如果你真的 沒有 早點修復它,可能你安裝了一些第三方組件)。從 維基百科

Microsoft Windows的版本包括對zip的支持   自Plus以來在Explorer中壓縮! pack已發布用於Windows   98. Microsoft將此功能稱為“壓縮文件夾”。並非Windows壓縮文件夾功能支持所有zip功能。   例如,AES加密,拆分或跨區存檔,以及 統一   條目編碼 不知道是不是可讀或可寫的   Windows XP或更高版本中的壓縮文件夾功能。

ZIP文件格式在很長一段時間內都缺乏Unicde支持,而這個擴展僅在2006年6年前添加 附錄D - 語言編碼(EFS) 的 ZIP文件格式規範

D.1 ZIP格式歷史上僅支持原始IBM PC   字符編碼集,通常稱為IBM Code Page 437。   這會將文件名字符限制為僅存儲在文件中   原始MS-DOS範圍的值並沒有正確支持文件   其他字符編碼或語言中的名稱。解決這個問題   限制,此規範將支持以下更改。   [其餘的閱讀文檔。]

從那時起,當然所有實現該格式的主要Windows歸檔程序都已更新,以包含Unicode支持,我相信2008年的WinZip。不幸的是,微軟出於某種奇怪的原因授權第三方庫獲得其壓縮文件夾功能(儘管它不是非常難以編碼ZIP支持),顯然這個庫提前將ZIP添加到ZIP文件格式。此外,作為對此功能關注程度的明確信號,Microsoft尚未更新代碼以修復此錯誤 直到約會 (顯然,即使最新版本的.Net Framework中的新System.IO.ZipArchive類,也就是4.5最初沒有得到這個權利,但該bug已經修復)。 我猜他們希望每個人都可以安裝許多功能齊全的第三方檔案庫中的一個,這正是我向你推薦的。

您可以在Microsoft的以下系列博客文章中閱讀有關Windows中這種特殊缺乏Unicode支持的骯髒細節。 邁克爾卡普蘭


附: “我剛剛發現用Windows打包”發送到“與Winrar的”最佳“壓縮效果一樣好,但速度要快得多。” - 我剛剛測試過這次,多次。除了打開WinRAR所需的額外時間 添加到檔案 對話框,選擇ZIP作為存檔格式並按OK,兩者的實際壓縮時間大致相同,一般WinRAR花費的時間較少(儘管差異可以忽略不計)。如果您看到了巨大的差異,那麼只有先在一組文件上測試WinRAR,然後立即使用壓縮文件夾壓縮相同的文件。當然,圍繞Windows的第二次已經緩存了數據,因此該過程花費的時間只是它最初的一小部分時間。在當前Windows會話期間之前未觸及的一組文件中以相反的順序執行此操作,並且我打賭結果將被反轉。 :)

至於最終的壓縮大小,根據存檔的文件格式的數據/組合,我發現兩者中的任何一個做得更好(儘管差異可以忽略不計)。當然,7z或Rar(甚至是WinZip的ZipX)格式都是  在這方面更好,幾乎任何一天都會擊敗普通的ZIP(即使用傳統/傳統的ZIP 放氣 算法代替 PPMD 等等)。


17
2017-09-30 04:20





我遇到了同樣的問題。使用7-zip管理器並壓縮文件,問題解決了。 :)


1
2017-08-20 08:44



不幸的是,這不是我想要的那種解決方案。這涉及安裝第三方軟件,這不是可以在任何計算機上完成的,就像我在問這個問題時的情況一樣。 - user1306322