Помилка під час компіляції файлів із символами unicode в іменах із папкою Win7 "надіслати в> стиснуту (на блискавці) папку"


12

Коли я намагаюся копіювати файли, що містять символи unicode у своїх іменах, наприклад © або ™, я отримую таку помилку:

[Заголовок вікна] Помилка стиснутих (блискавок) папок

[Вміст] 'C: \ Asd ™ .txt' неможливо стиснути, оскільки він містить символи, які не можна використовувати в стиснутій папці, наприклад ™. Ви повинні перейменувати цей файл або каталог.

[ДОБРЕ]

Це стало лише проблемою, коли я перевстановив Windows 7. У мене, ймовірно, були деякі ресурси, необхідні для цієї помилки, щоб вирішити автоматично, але зараз це майже чиста установка, і я не можу завантажувати файли. Як це виправити?

UPD: Минув час, коли я опублікував це питання, я встановив деякі мої звичайні програми, але проблема все ще існує, і я не впевнений, чи можна її виправити, встановивши якусь конкретну програму раніше.


У Windows 10, вбудованому в zipping, може не виникнути цієї проблеми, про що йдеться у коментарі до цього питання .


3
Без образи, але що не так, якщо використовувати належну програму стиснення, наприклад WinRAR або 7-Zip (безкоштовно)?
Каран

3
Мені сподобалось стандартне застібку Windows, тому що це лише два клацання (з паузою), і це там із чистої установки.
user1306322

Я щойно з'ясував, що зашпаровування вікон "надсилати до" працює так само добре, як "найкращий" застібка Winrar, але так набагато швидше.
user1306322

Хочу додати, що після всіх цих незручностей я вирішив почати використовувати 7-zip для швидкого архівування. Можливо, це ще кілька кліків, ніж раніше, але, безумовно, варто позбутися цього розчарування.
користувач1306322

1
Здається, вбудована блискавка win 10 тепер підтримує імена файлів Unicode.
Імре Пювель

Відповіді:


17

Якщо ображають символи з мови, крім англійської , але один опорою Microsoft, ви могли б встановити MUI (Multilingual User Interface) мовної пакет з Центру поновлення Windows або відповідний LIP (Language Interface Pack) з тут в якості можливого виправлення.

На додаток до вищезазначеного, вам може знадобитися також змінити системний локальний рівень .

Локальна система визначає набір символів за замовчуванням (літери, символи та цифри) та шрифт, використовуваний для введення та відображення інформації в програмах, які не використовують Unicode. Це дозволяє програмам, що не входять у Unicode, запускатися на вашому комп’ютері з використанням зазначеної мови. Можливо, вам знадобиться змінити локальну систему системи за замовчуванням, коли ви встановлюєте додаткові мови відображення на комп’ютер. Вибір іншої мови для локальної системи не впливає на мову в меню та діалогових вікнах для Windows або інших програм, які використовують Unicode.

Робити так:

  1. Введіть "регіон" у поле пошуку меню "Пуск" (без лапок)

  2. Відкрийте аплет на панелі управління регіоном та мовою

  3. Перейдіть на вкладку Адміністратор , а потім у розділі Мова для програм, що не стосуються Unicode, натисніть Змінити локальну систему . Якщо вам буде запропоновано пароль адміністратора або підтвердження, введіть пароль або надайте підтвердження.

  4. Виберіть мову та натисніть кнопку ОК.

  5. Якщо вам запропонують перезапустити комп’ютер, натисніть « Перезапустити зараз», щоб зробити це.

    Win7 Змінити локальний системний


Тим НЕ менше, якщо ображають символи що - щось на зразок , як уже згадувалося вище, я не вірю , що є якийсь - або офіційний виправлення Microsoft для цього zipfldr.dll обмеження , який існував до тих пір , як Windows , була ця особливість (так що якщо ви дійсно зробили виправити її раніше , можливо, ви встановили якийсь сторонній компонент). З Вікіпедії :

Версії Microsoft Windows включили підтримку стиснення zip в Провіднику з часу Plus! пакет випущений для Windows 98. Microsoft називає цю функцію "Стиснутими папками". Не всі функції zip підтримуються можливістю стиснутих папок Windows. Наприклад, шифрування AES, архіви, що розбиваються або розгалужуються, та кодування запису Unicode , не відомо, що їх можна прочитати чи записати за допомогою функції «Стислі папки» в Windows XP або новіших версіях.

Формат ZIP файл не вистачало підтримки Unicde в протягом тривалого часу, і це розширення було додано тільки 6 років тому в 2006 році в Додатку D - мова кодування (EFS) в ZIP Формат файлу специфікації :

D.1 Формат ZIP історично підтримував лише оригінальний набір кодувань символів IBM PC, який зазвичай називають IBM Code Page 437. Це обмежує збереження символів імен файлів лише тими, що знаходяться в початковому діапазоні значень MS-DOS, і не підтримує належним чином. назви файлів в інших кодуваннях символів або мовах. Для усунення цього обмеження ця специфікація підтримує наступні зміни. [ Прочитайте документ для решти. ]

З тих пір, звичайно, всі основні архіватори Windows, що реалізують формат, були оновлені, включаючи підтримку Unicode, починаючи, я вважаю, з WinZip у 2008 році. На жаль, Microsoft чомусь дивно ліцензувала бібліотеку третьої сторони на її функцію стислих папок (хоча це не так дуже важко кодувати підтримку ZIP), і очевидно, що ця бібліотека заздалегідь додає Unicode до формату ZIP-файлу. Крім того, як чіткий ознака того, наскільки вона піклується про цю функцію, Microsoft не оновлювала код, щоб виправити цю помилку до дати (мабуть, навіть новий клас System.IO.ZipArchive в останній версії .Net Framework, тобто 4.5 не отримали цього права спочатку, але з тих пір виправлено помилку).Я думаю, вони очікують, що всі встановлять один із безлічі повнофункціональних сторонніх архіваторів, саме це я рекомендував вам також вище.

Докладні відомості про цю особливу відсутність підтримки Unicode у Windows можна прочитати в наступній серії публікацій блогу Майкла Каплана від Microsoft :


PS "Я щойно з'ясував, що зашпаровування вікнами" "надіслати" працює так само добре, як "найкращий" застібка Winrar, але набагато швидше ". - Я просто тестував це, кілька разів. Окрім додаткового часу, необхідного для відкриття WinRAR's Add to archiveУ діалоговому вікні виберіть ZIP як формат архіву та натисніть кнопку OK, фактичний час, необхідний для стиснення, був приблизно однаковим для обох, WinRAR займав менше часу в цілому (хоча різниці були незначними). Якщо ви побачили величезну різницю, це могло бути лише якщо ви спочатку випробували WinRAR на наборі файлів, а потім негайно стиснули ті самі файли зі стислими папками. Природно, що другий раз навколо Windows вже кешировано дані, тому процес займав частину часу, який він робив спочатку. Зробіть це у зворотному порядку на наборі файлів, яких ви не торкалися раніше під час поточного сеансу Windows, і я вважаю, що результат буде зворотним. :)

Що стосується остаточного стисненого розміру, залежно від архіву даних / комбінації форматів файлів, я виявив, що обидва з них роблять кращу роботу (хоча, знову ж таки, відмінності були незначними). Звичайно, формати 7z або Rar (або навіть ZZXX WinZip) набагато кращі в цьому плані і будуть перемагати звичайний ol 'ZIP майже будь-який день (тобто ZIP, використовуючи традиційний / застарілий алгоритм дефляції замість PPMd тощо).


1

У мене така ж проблема. Використовуйте 7-zip-менеджер і копіюйте свої файли, і проблема вирішена. :)


1
На жаль, це не те рішення, яке я шукав. Це передбачає встановлення стороннього програмного забезпечення, що не є тим, що можна зробити на будь-якому комп’ютері, як це було в моєму випадку, коли я задав це питання.
user1306322
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.