Что можно проделать с упакованным файлом 1 вариант
Перейти к содержимому

Что можно проделать с упакованным файлом 1 вариант

  • автор:

Сохранение и отправка публикаций в Publisher 2010

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

В приложении Save _Амп_ Send можно сохранить публикацию в нескольких форматах. Вы можете сохранить публикацию в виде изображения, файла в формате PDF или XPS либо в виде HTML-файла. Вы можете сохранить публикацию как шаблон Microsoft Publisher 2010 или в формате, совместимом с Publisher 2000 или Publisher 98. Вы также можете создать упакованный файл Publisher, который содержит все необходимые элементы для публикации в типографии, включая PDF-файл при выборе или перемещении публикации на другой компьютер. В дополнение к сохранению публикации вы можете отправить публикацию по электронной почте в виде сообщения электронной почты или вложения. В некоторых языковых стандартов Вы также сможете воспользоваться шаблонами общих папок, созданными в сообществе шаблонов из Интернета.

В этой статье

  • Отправка по электронной почте
    • Предварительный просмотр сообщения
    • Что такое форматы PDF и XPS?
    • Сохранение в формате PDF
    • Сохранение в формате XPS
    • Сохранение для профессиональной печати
    • Сохранение на другом компьютере

    Отправка по электронной почте

    Вы можете отправить публикацию в виде сообщения электронной почты, используя один из пяти вариантов.

    Важно: Для отправки по электронной почте на компьютере должна быть установлена одна из следующих программ:

    • Microsoft Office Outlook
    • Outlook Express (версия 5,0 или более поздняя)
    • Почта Windows;

    Отправка публикации в виде сообщения электронной почты в Publisher 2010

    1. Откройте вкладку Файл.
    2. Выберите сохранить _амп_ отправить, а затем—отправить по электронной почтеи выберите один из следующих вариантов:
    3. Отправка текущей страницы: в этом случае выбранная страница будет отправлена из публикации в виде сообщения электронной почты в формате HTML, поэтому для просмотра публикации пользователям не нужно иметь Publisher. Пользовательский интерфейс Publisher будет выглядеть как сообщение электронной почты, обеспечивающее доступ к адресной книге, и возможность предварительного просмотра электронной почты в веб-браузере по умолчанию и отмены сообщения электронной почты.

    Примечание: В процессе создания одной страницы сообщения электронной почты из нескольких страниц публикации некоторые параметры форматирования могут быть потеряны.

    Примечание: Дополнительные сведения о сохранении публикаций в формате PDF или XPS см. в разделе Сохранение в формате PDF или XPS.

    Предварительный просмотр сообщения

    Этот параметр позволяет увидеть, как будет выглядеть публикация в сообщении электронной почты, открыв веб-браузер по умолчанию и предварительный просмотр версии публикации в формате HTML.

    1. Откройте вкладку Файл.
    2. Нажмите кнопку Сохранить _амп_, выберите командуПредварительный просмотр электронной почты, а затем — командуПредварительный просмотрсообщения.
    3. Publisher отобразит публикацию в виде веб-страницы.

    Изменение типа файла

    Этот параметр позволяет сохранить публикацию в виде шаблона Microsoft Publisher 2010 в формате, совместимом с Publisher 2000 или Publisher 98, в виде одного из стандартных типов изображений или в виде веб-страницы.

    1. Откройте вкладку Файл.
    2. Нажмите кнопку сохранить _амп_, выберите командуизменить тип файла.
    3. Выберите один из доступных вариантов.

    Публикация HTML-кода

    Этот параметр позволяет опубликовать публикацию как веб-страницу.

    1. Откройте вкладку Файл.
    2. Нажмите кнопку сохранить _амп_ отправитьивыберите пунктопубликовать HTML-код.
    3. В разделе Публикация HTML-кода можно выбрать сохранение в одном из двух форматов:
      • Веб-страница (HTML): при этом публикация будет сохранена в виде HTML-документа и создана папка, содержащая вспомогательные файлы, такие как изображения и звуки, отображаемые на странице.
      • Веб-страница в одном файле (MHTML) : этот параметр создает один документ MHT с вложенными файлами поддержки.
    4. Нажмите кнопку опубликовать HTML-код,а затем в диалоговом окнеСохранить каквыберите расположение и введите имя файла.

    Сохранение в формате PDF или XPS

    Иногда вы хотите сохранить файлы, которые не могут быть изменены, но все равно хотите, чтобы они были легко и удобны для общего доступа и печати. С помощью Publisher 2010 вы можете преобразовывать публикации в форматы PDF или XPS, не требуя дополнительного программного обеспечения или надстроек. Используйте этот вариант, если вы хотите:

    • одинаково выглядят на большинстве компьютеров;
    • имеют малый размер файлов;
    • совместимы с отраслевым форматом.
    • Могут просматривать пользователи, у которых не установлена программа Publisher, но у вас есть бесплатное PDF-или XPS Viewer

    В качестве примеров можно привести резюме, юридические документы, бюллетени, файлы, предназначенные только для чтения и печати, документы, предназначенные для профессиональной печати.

    Важно: После сохранения документа в формате PDF или XPS его невозможно преобразовать обратно в формат файла Microsoft Office без специального программного обеспечения или надстройки стороннего разработчика.

    Что такое форматы PDF и XPS?

    • Формат переносимЫх документов (PDF) PDF сохраняет форматирование документа и включает общий доступ к файлам. При просмотре файла в формате PDF или печати в Интернете он сохраняет необходимый формат. Данные в файле невозможно легко изменить и их можно запретить. Формат PDF также полезен для документов, которые будут воспроизведены с помощью методов профессиональной печати. PDF-файл принимается как допустимый формат для многих учреждений и организаций, и средства просмотра доступны на более широком спектре платформ, чем в XPS.

    Важно: Для просмотра PDF-файла на компьютере должна быть установлена программа для чтения с PDF-файлов, которая доступна в Adobe Systems.

    • XML Paper Specification (XPS) XPS — это независимая от платформы технология, которая также сохраняет форматирование документов и обеспечивает общий доступ к файлам. Когда XPS-файл просматривается в Интернете или печатается, он сохраняет в точности тот формат, который вы предоставите, и невозможно легко изменить данные в файле. XPS внедряет все шрифты в файле, чтобы они отображались должным образом, независимо от того, доступен ли указанный шрифт на компьютере получателя, а также на компьютере получателя с более точной отрисовкой изображений и цветов, чем в PDF-файле.

    Сохранить как PDF

    1. Откройте вкладку Файл.
    2. Выберите сохранить _Амп_ отправить, выберите создать документ PDF/XPSи нажмите кнопкуСоздать PDF/XPS.
    3. В диалоговом окне Публикация в формате PDF или XPS выберите PDF (*. PDF) в раскрывающемся списке Тип файла.
    4. Введите имя документа в текстовом поле имя файла.
    5. Чтобы изменить параметры публикации, нажмите кнопку Параметры.
    6. Вы можете выбрать один из четырех готовых наборов параметров и изменить Параметры печати.
      • Минимальный размер: в этом случае разрешение изображений в публикации будет превышено до 96 точек на дюйм (DPI), которое подходит для отображения на экране, но не только для печатной публикации. Шрифты не будут внедрены или точечными рисунками, поэтому пользователи, просматривающие файл, у которого нет установленных шрифтов, увидят разные шрифты. Параметры печати оптимизированы для просмотра документа в Интернете в виде одной страницы. Этот выбор также будет содержать свойства вашей публикации.
      • Стандартный: при этом разрешение изображений в публикации будет превышено до 150 dpi, подходящих для распространения по сети, например электронной почты, в которых получатель может распечатать публикацию на настольном принтере. Параметры печати оптимизированы для просмотра документа в Интернете в виде одной страницы. Этот выбор также будет содержать свойства публикации, а также структурные теги, чтобы улучшить специальные возможности.
      • Высокое качество печати: этот набор параметров по умолчанию подходит для настольных компьютеров в копировальном бюро. Для изображений будет задано значение не более 450 dpi для цвета и оттенков серого, над этим пороговое значение, довнсамплед до 300 dpi и 1 800 dpi для штриховой графики над этим пороговым значением и изображением будет довнсамплед до 1 200 dpi. Этот выбор также будет содержать свойства публикации, а также структурные теги, чтобы улучшить специальные возможности. Параметры печати оптимизированы для печати.
      • Коммерческое нажатие: Этот набор параметров создает самый крупный и самый высокий файл качества, подходящий для профессиональной печати. Изображения будут ограничены до 450 dpi (довнсамплед до 350 dpi, если оригинал находится выше 450 DPI) для цвета и оттенков серого, а 3600 dpi (довнсамплед – 2400 dpi, если оригинал находится выше 3600 dpi) для штриховой графики. Параметры печати задаются на основе одной копии публикации (чтобы в типографии можно было использовать собственные места, выход за обрез и т. д.). Этот выбор также будет содержать свойства публикации и будет преобразовывать шрифты, которые невозможно внедрить в растровые изображения. В ходе проверки макета выводится предупреждение о возможных проблемах с использованием цвета или прозрачности. Кроме того, возможность шифрования документа с использованием пароля будет отключена.
      • Пользовательский: Этот вариант позволяет просто сделать доступными все доступные варианты..Если вы выбрали один из параметров предварительной настройки и измените свойства, которые он изменит , Пользовательский.
      • Параметры печати: нажатие этой кнопки приведет к запуску диалогового окна Параметры печати.
    7. Другие варианты:
    8. Рисунок _амп_ понижение разрешения : Если значение dpi рисунка или штрих-кода превышает второе, уменьшите значение dpi (уменьшите качество) до первого числа. Если это не поверх второго числа, не изменяйте его. Это помогает управлять размером публикации.
    9. Предупреждение о том, как использовать прозрачНость _амп_ цвета : запуск проверки макета до сохранения — см. статью справки по проверке макета.
    10. Свойства документа : сохранение свойств документа из файла. publication, находящихся в свойствах публикации в диалоговом окне » Дополнительные параметры «.
    11. Теги структуры документа для специальных возможностей:Включает теги PDF в конечный PDF-файл, который делает PDF-файл доступным (средства специальных возможностей знают, как перемещаться по документу PDF) и предоставляют программное обеспечение для чтения PDF-файлов Подробнее о том, как связанное содержимое в PDF-файле.
    12. Совместимость с ISO 19005-1 (PDF/A):Если параметр включен, конечный PDF-файл будет соответствовать стандарту ISO и PDF. Этот стандарт предназначен для создания универсально читаемых PDF-файлов, пригодных для архивации.
      • Все шрифты внедряются, если только лицензия не запрещает ее, в этом случае текст преобразуется в растровое изображение, чтобы сохранить исходный вид.
      • Свойства документа всегда включаются
      • Все варианты использования прозрачности в публикации удаляются (все прозрачные области становятся непрозрачными)
      • PDF-файл невозможно зашифровать
      • PDF-файл заблокирован, поэтому его нельзя редактировать
    13. Текст точечного рисунка, если шрифты не могут быть внедрены : длякаждого шрифта имеется лицензия, указывающая на вхесеr, она может быть внедрена в файл.ЕслиLicense (лицензия ) не допускает внедрение, при выборе этого параметравсе подобные шрифты преобразуютсяв изображения, поэтому внешний вид не изменится при открытии PDF-файла в Мачине, который не имеет шрифта. «T» приведет к увеличению размера файла ипотеревозможности выделения и копирования текста вDF-файле (так как это изображение).Если этот параметрне установлен, будет использоваться другой шрифт . подставляемые при просмотре на компьютере, на котором не установленылицензированный шрифт.
    14. Зашифровать документ паролем :позволяет шифровать PDF-файл с помощью пароля, чтобы его нельзя было просматривать илиизменять , если не введен пароль.
    15. Нажмите кнопку ОК, а затем — опубликовать.

    Сохранение в формате XPS

    1. Откройте вкладку Файл.
    2. Выберите сохранить _Амп_ отправить, выберите создать документ PDF/XPSи нажмите кнопкуСоздать PDF/XPS.
    3. В диалоговом окне Публикация в формате PDF или XPS выберите пункт XPS-документ (*. XPS) в раскрывающемся списке Тип файла.
    4. Введите имя документа в текстовом поле имя файла.
    5. Чтобы изменить параметры публикации, нажмите кнопку изменить.
    6. Вы можете выбрать один из трех готовых наборов параметров и изменить Параметры печати.
      • Минимальный размер: в этом случае разрешение изображений в публикации будет превышено до 96 точек на дюйм (DPI), которое подходит для отображения на экране, но не только для печатной публикации. Шрифты, которые невозможно внедрить, будут точечными. Параметры печати оптимизированы для просмотра документа в Интернете в виде одной страницы. Этот выбор также будет содержать свойства вашей публикации.
      • Стандартный: при этом разрешение изображений в публикации будет превышено до 150 dpi, подходящих для распространения по сети, например электронной почты, в которых получатель может распечатать публикацию на настольном принтере. Параметры печати оптимизированы для просмотра документа в Интернете в виде одной страницы. Этот выбор также будет содержать свойства публикации, а также структурные теги, чтобы улучшить специальные возможности.
      • Высокое качество печати: этот набор параметров по умолчанию подходит для настольных компьютеров в копировальном бюро. Для изображений будет задано значение не более 450 dpi для цвета и оттенков серого, над этим пороговое значение, довнсамплед до 300 dpi и 1 800 dpi для штриховой графики над этим пороговым значением и изображением будет довнсамплед до 1 200 dpi. Этот выбор также будет содержать свойства публикации, а также структурные теги, чтобы улучшить специальные возможности. Параметры печати оптимизированы для печати. Шрифты, которые невозможно внедрить, будут точечными.
      • Пользовательский: Этот вариант просто делает доступными все доступные вам варианты.
      • Параметры печати: нажатие этой кнопки приведет к запуску диалогового окна Параметры печати.
    7. Нажмите кнопку ОК, а затем — опубликовать.

    «Упаковать»

    Мастер упаковки упаковывает публикацию и связанные с ней файлы в один файл, который можно распечатать на профессиональном принтере или копировальном бюро. Вы также можете перевести упакованный файл на другой компьютер для изменения. С помощью мастера упаковки можно получить все файлы, необходимые для передачи завершенной публикации пользователю, который может работать с ним или просматривать его.

    Сохранение для профессиональной печати

    1. Откройте вкладку Файл.
    2. Нажмите кнопку сохранить _амп_, выберите команду сохранить для профессиональной печати.
    3. В разделе сохранить для профессиональной печати можно использовать следующие параметры:
      • Параметры размера файла и качества: это те же четыре набора параметров, которые использовались при сохранении в формате PDF.
      • Сохранение файлов PDF и Publisher или только PDF: вы можете сохранить файл PDF и. pub либо сохранить только PDF-файл, чтобы перейти на принтер.
    4. Нажмите кнопку Мастер упаковки .
    5. Выберите папку, в которой нужно сохранить файл, например компакт-диск, и нажмите кнопкуДалее.
    6. Мастер выполнит упаковку файлов и сохранит их в выбранном расположении, установить или снять флажок Печать составного цветопробы и нажать кнопку ОК.

    Примечание: Флажок » Печать составного цветопробы » всегда установлен по умолчанию. Используйте составное средство проверки подлинности для просмотра и перехвата ошибок в печатной версии публикации перед отправкой файла на печать в типографию. Если ваш коммерческий принтер исправляет ошибки в файле, стоимость печати обычно возрастает.

    Сохранение на другом компьютере

    1. Откройте вкладку Файл.
    2. Выберите сохранить _Амп_ отправить, нажмите кнопку сохранить на другом компьютере.
    3. Нажмите кнопку Мастер упаковки и нажмите кнопкуДалее.
    4. Выберите папку, в которой нужно сохранить файл, например компакт-диск, и нажмите кнопкуДалее.
    5. В диалоговом окне Включение шрифтов и рисунков выберите параметры внедрения шрифтов TrueType и связывания рисунков, а затем нажмите кнопку Далее.
    6. Нажмите кнопку Готово, чтобы сохранить публикацию в ZIP-файл.

    Распаковка нестандартно упакованных файлов

    Безусловно, термин нестандарно упакованные файлы не удачен, но другого лучшего выражения не придумал, да и в общем то это не суть так важно. А суть в следующем — встречаются файлы, про которые точно знаешь, что они упакованы определенным архиватором, а распаковать их стандартным способом не можешь, или, например, распаковал, а в распакованном файле обнаруживаешь другие упакованные файлы, распаковать которые тоже обычным способом не получается.
    Вот о распаковке таких файлов и хочу поделиться опытом с пользователями, которые с этим не знакомы. А чтобы бы понять саму идею распаковки таких файлов, сначала немного поэкспериментируем, а для проведения экспериментов упакуем/заархивируем произвольный простой файл, но сначала создадим его
    $ echo ‘Т Е С Т’ > ~/test
    Убедимся, что файл создан
    $ cat ~/test
    Т Е С Т
    упакуем этот файл, например, архиватором gzip
    $ gzip ~/test
    и посмотрим на упакованный файл утилитой hexdump, точнее посмотрим 1-ые 16 байт
    $ hexdump -C -n 16 ~/test.gz
    00000000 1f 8b 08 08 9e 52 18 59 00 03 74 65 73 74 00 bb |. R.Y..test..|
    Первые 3 байта — это так называемая сигнатура (HEX код) архиватора gzip — 1F 8B 08, которая является составной частью упакованного файла (его началом) и присуща только архиватору gzip, что позволяет отличить этот файл от других и, главное, видно, что архиватор, точнее сигнатура начинается с самого начала (с нулевого байта, смещение равно 0).
    UPD — если быть точным, то сама сигнатура два байта (0x1f, 0x8b), а 3-ий байт определяет compression method (08 — deflate)
    При распаковке этого файла, утилита gzip сначала проверит наличие сигнатуры, присущей gzip, и только после этого примет решение о распаковке.
    Проверим это, а для чего изменим сигнатуру файла, точнее, изменим 1-ый байт — вместо 1F запишем 1E (я проделал это в hex редакторе)
    $ hexdump -C -n 16 ~/test.gz
    00000000 1e 8b 08 08 9e 52 18 59 00 03 74 65 73 74 00 bb |. R.Y..test..|
    Ну и попытаемся рапаковать
    $ gzip -d ~/test.gz
    gzip: ~/test.gz: not in gzip format
    И то же самое будет, если сигнатура будет правильная, но начинаться будет не с начала файла (смещение не равно 0) — вернем все на место, но перед сигнатурой запишем 1 байт — 00 (я сохранил этот файл, как test1.gz).
    $ hexdump -C -n 16 ~/test1.gz
    00000000 00 1f 8b 08 08 9e 52 18 59 00 03 74 65 73 74 00 |. R.Y..test.|
    $ gzip -d ~/test1.gz
    gzip: ~/test1.gz: not in gzip format
    И значит распаковывать такие файлы нужно по-другому, а именно, нужно указать при распаковке смещение, откуда начинать, т.е. где начинается сигнатура.
    Самый простой вариант — удалить байты до сигнатуры, но это не этично, да и иногда это выливается в мегабайты и десятки мегабайт.
    Лучше поступить грамотно — указать утилите смещение, с которго начинать распаковку (делаем пропуск с помощью dd в 1 байт прежде чем начать распаковку)
    $ dd if=~/test1.gz skip=1 bs=1 | gzip -d > test1
    Проверим, что мы получили
    $ cat ~/test1
    Т Е С Т
    То есть распаковали успешно и получили исходный файл.
    И так на простом файле показал суть и сам принцип распаковки таких нестандартно упакованных файлов.
    Но в жизни все сложнее, но когда понимаешь суть, то можно распаковать и более сложные файлы.
    Попробуем сейчас опробовать наши знания на ядре Archlinux — пример неудачный, но полезный для обучения.
    Справка — ядро, как правило, находится в сжатом виде, но, главное, сжатое ядро представляет собой загрузчик и распаковщик, за которым следует собственно сжатый алгоритмом zlib vmlinux, а потому сначала необходимо отделить сжатое ядро от загрузчика.
    Сначала используя утилиты hexdump и file попробуем выяснить, что же это такое, наше ядро
    # hexdump -C -n 16 /boot/vmlinuz-linux
    00000000 4d 5a ea 07 00 c0 07 8c c8 8e d8 8e c0 8e d0 31 |MZ. 1|
    Судя по сигнатуре 4d 5a (MZ) перед нами стандартный исполняемый формат (исполняемый DOS файл), сигнатура которого 4D 5A (MZ) составлена из инициалов одного из создателей MS-DOS Марка Збиковски.
    $ file /boot/vmlinuz-linux
    /boot/vmlinuz-linux: Linux kernel x86 boot executable bzImage, version 4.7.6-1-ARCH (builduser@tobias) #1 SMP PREEMPT Fri Sep 30 19:46, RO-rootFS, swap_dev 0x4, Normal VGA
    И в итоге подтверждается сказанное выше, что сжатое ядро представляет собой загрузчик + распаковщик + само ядро сжатое алгоритмом zlib архиватора gzip с распаковкой в процессе загрузки.
    Но нам, главное, понятно (по 1-ой части), чтобы распаковать ядро, нам нужно отделить сжатое ядро от загрузчика.
    Как нам уже известно, gzip имеет сигнатуру 1f 8b 08 — вот и найдем его начало.
    Перечислю способы, которыми можно это сделать.
    1. Используя hex-редактор, например, bless — определяем, что 1f 8b 08 начинается с адреса 0х4501 или в 10 системе — 17665
    UPD — делал и писал давно (обучал молодежь), так что число 17665 уже будет другое.
    2. Используя утилиту od
    od -A d -t x1 vmlinuz-linux | grep «1f 8b 08»
    0017664 e0 1f 8b 08 00 00 00 00 00 02 03 ec 5a 7b 74 53
    и получаем опять 17665
    3. Очень хорошую утилиту binwalk
    binwalk vmlinuz-linux

    DECIMAL HEXADECIMAL DESCRIPTION -------------------------------------------------------------------------------- 0 0x0 Microsoft executable, portable (PE) 17665 0x4501 gzip compressed data, maximum compression, from Unix, NULL date (1970-01-01 00:00:00) . 

    Как видим совпадает во всех случаях — 17665
    Остается только извлечь из vmlinuz сжатое ядро и распаковать его:
    dd if=vmlinuz-linux skip=17665 bs=1 | gzip -d > vmlinux
    gzip: stdin: decompression OK, trailing garbage ignored
    Желающие могут снова применить binwalk — binwalk vmlinux
    и увидят уже названия файлов, правда вытащить их просто так уже не получится.
    Вот и все.
    binwalk также удобно использовать для определения архиватора, в случае если есть сомнения. Утилита включает большую базу сигнатур известных архиваторов. Но, разумеется, база базой, но лучше всегда перепроверить ручками, использую hex-редактор.
    Ну и бонус на посошок любителям паролей — можно не вешать никакие пароли на сжимаемый файл, а просто ручками добавить в начало несколько байтов, но ЛУЧШЕ изменить сигнатуру и никто этот файл не распакует.
    Конечно, эти изменения должны быть постоянны и легко запоминаемы.

    Ошибки не исчезают с опытом — они просто умнеют

    Статья ZIP’аем файл вручную (часть.1. упаковщик)

    ZIP.png

    Допустим имеем файл и нужно перенести его в своей программе на чужую машину. Если этот файл будет внешним (на подобии библиотеки или драйвера), то сразу бросится в глаза. А что если зашить его в своё тело и создавать при запуске основного приложения? Благо производительность современных процессоров это позволяет и жертва даже не успеет понять в чём дело. Другими словами получим матку, которая будет порождать файлы.

    Всё-бы хорошо, только таскать в себе готовые бинарники типа exe\dll в несжатом виде тоже не лучшая идея – одних только «байтов выравнивания» в них под 50%, а для использования готовых архиваторов нужен к нему распаковщик. Так-что иметь в запазухе обычный зиппер это всегда гуд, а данная статья (надеюсь) поможет вам разобраться в его деталях. Буду использовать ассемблер FASM, двоичный редактор HxD, ну и виндовый кальк в инженерном виде.
    —————————————-

    Характерной особенностью данных является их избыточность. Причём наблюдается она у всех типов данных, будь то бинарный поток или человеческая речь. В надежде донести до собеседника свою мысль, мы невольно повторяем одинаковые слова – это улучшает восприятие информации. Но когда речь идёт о хранении или передаче данных средствами компьютерной техники, избыточность оказывает нам медвежью услугу, повышая её стоимость.

    Процент избыточности привязан к типу данных, где место на олимпе занимают как-раз двоичные программы, ..потом идёт видео, графика и на последнем месте файлы типа *.txt. К примеру, если открыть любую программу или видос в каком-нибудь HEX-редакторе, можно чётко наблюдать в нём цепочки повторяющихся байт, которые так и хочется закодировать в формате «Байт—>Повторов» . Поскольку здесь я планирую «поженить» именно две прожки, то мне как-нельзя лучше подходит алгоритм сжатия RLE, что переводится как Run-Length-Encoding .

    null.png

    В природе существуют ещё два алго сжатия – это «Лемпеля-Зива» (LZ) и нашумевший алгоритм «Хаффмана» . Чтобы добиться наилучших результатов и создать универсальный паккер для любых типов данных, обычно три эти алгоритма комбинируют в один флакон. Однако для нашего случая будет достаточно только самого простого RLE, который мы поместим прямо в программу-матку.

    В алгоритме RLE, для кодирования цепочек одинаковых байт (не обязательно нулей), применяют байт-маркеры . К примеру, маркер 05h,30h заставит декодер архиватора отправить на выход 5 байт со-значением 0х30 , и т.д. (первый байт является счётчиком). Если в бинарнике байты следуют в разнобой, то они вообще никак не кодируются. Таким образом, на белом коне здесь маркеры, которые своим 2-байтным значением способны сжать болото из 127-ми повторяющихся байт. Но почему именно из 127 , ведь максимальное значение байта равно 256 ? Здесь нужно остановиться и вспомнить, как процессор кодирует числа со-знаком..

    Бит «SF» в регистре флагов процессора EFLAGS

    Примечательным фактом в программировании является то, что логические элементы процессора не понимают отрицательных чисел – для них все числа положительные. Когда перед программистом встаёт какая-нибудь математическая задача, то ответственность по контролю за отрицательными числами полностью ложится на его собственные плечи. Для этого инженеры ввели во-флаговый регистр EFLAGS соответствующий бит и назвали его «знаковым» SF – Sign Flag . Он занял позицию (7) в этом регистре, что демонстрирует рисунок ниже (позаимствован из руководства Intel том.3):

    EFLAGS_SF.png

    В большинстве случаях, на флаги процессора воздействуют арифметические инструкции типа ADD\SUB\MUL\DIV , логические инструкции XOR\AND\OR\NOT\NEG\INC\DEC , инструкции сдвигов и ротации SHR\SHL\ROR\ROL и некоторые другие. Это даём нам возможность при арифметических операциях контролировать флаг CF переноса битов из младшего байта в старший, флаг чётности битов в байте PF, флаг переноса битов из младшей тетрады байта в старшую AF, флаг нуля ZF, а так-же упомянутый флаг отрицательного числа SF.

    Таким образом, аппаратное обеспечение устанавливает флаг знака SF в единицу, если последняя арифметическая операция привела к отрицательному значению. В противном случае (для положительного результата) SF сбрасывается в 0. Отрицательное число характеризует самый старший бит результата. В зависимости от размера операндов инструкции, значимым битом является бит 7 (для байтов), бит 15 (для слов word), бит 31 (для двойных слов dword) или бит 63 (для четверных слов qword).

    Поскольку мы планируем искать цепочку байт (а не слов или двойных слов), то соответственно должны контролировать бит 7. Для того-чтобы указать знак числа, достаточно одного разряда (бита). В зависимости от того, как мы воспринимаем число, значения байта может лежать в диапазоне от -127..+127 (байт со-знаком), или 0..255 (байт без знака). Вот пример:

    Байт со-знаком: 10110111 = -55 Байт со-знаком: 00110111 = +55 Байт без знака: 10110111 = 183 | +---> знаковый бит

    Детали реализации алгоритма RLE

    Допустим задана последовательность байт ниже, которая подлежит сжатию:

    Кодируемая строка: ----------------------------------------------- 41 41 41 41 42 42 42 42 42 43 43 44 45 46 47 48 AAAABBBBBCCDEFGH

    Алгоритм RLE советует нам заменить её структурой, где указывается значение кодируемого байта и счётчик его повторений. Если под счётчик использовать 1 байт, то мы сможем закодировать в нём 256 одинаковых элементов – далее будем называть этот «байт-маркером» . Здесь напрашивается решение – вставлять маркер перед каждой последовательностью, например так:

    Закодированный вариант: ------------------------------------------- 04.41 05.42 02.43 01.44 01.45 01.46 01.47 01.48 .A.B.C.D.E.F.G.H ----------------------------------- Коэффициент сжатия: 16 (вход) / 16 (выход) = 1% (нет сжатия)

    В данном случаем, маркером является каждый\первый байт пары (я отделил его точками). Работающий по такому алго декодер читает данные с входного потока словами, и использует старший байт в качестве счётчика для младшего. Всё идёт по-плану, пока цепочка не нарушится, после чего нам приходится тратить на каждый байт один маркер, и весь выигрыш вылетает в трубу.

    Для решения этой проблемы, условимся воспринимать маркер, как байт со-знаком . То-есть мы задействуем семь младших бит для счётчика повторений 0..127 , а самый старший 8-ой бит – будет флагом. Не смотря на то, что таким образом мы потеряли в длине 127 против 255 , зато теперь получили логику и сможем ответить уже на два вопроса: «байты в строке дублируются (1), или-же идут в разнобой (0)?«.

    В качестве примера к вышесказанному, попробуем закодировать по алгоритму RLE тот-же блок данных, только теперь в байт-маркере старший бит будет служить флагом, повторяется цепочка, или нет:

    ;// диапазон: 00h..7Fh = 127 -> счётчик произвольных байт; ;// диапазон: 80h..FFh = 127 -> счётчик одинаковых байт. // Кодируемая строка: ----------------------------------------------- 41 41 41 41 42 42 42 42 42 43 43 44 45 46 47 48 AAAABBBBBCCDEFGH // Закодированный вариант: ------------------------------------------- 84 41 85 42 82 43 05 44 45 46 47 48 „A…B‚C.DEFGH ----------------------------------- // Коэффициент сжатия: 16 / 12 = 1,33%

    Рассмотрим его подробней..
    Декодер начинает чтение закодированных данных и тут-же врезается в первый маркер со-значением 0х84 (1000.0100b, т.е. старший бит взведён в единицу). Логической инструкцией XOR он проверяет его на знак и делает вывод, что значение следующего за ним байта нужно воспринимать как цепочку. Теперь, декодер вычитает константу 0х80 от маркера, и получает счётчик последовательности (здесь 4 или 0000.0100b). Следуя своему алгоритму, теперь декодер читает следующий байт 0х41 , как перед ним восстают все данные для декодирования данной последовательности.

    Но что будет, когда декодер нарвётся (в примере выше) на маркер со-значением 0х05 ? Как говорилось выше, установленный в нуль знаковый бит является флагом нарушения последовательности, поэтому он просто сделает своё значение счётчиком, и отправит все последующие за собой байты, в выходной поток.

    Как-видим, логика алгоритма RLE проста до неприличия, однако при удачных обстоятельствах она позволяет сжать 127 повторяющихся байт буквально до 2-х байт. Если в процессе кодирования данных алгоритм обнаружит во-входном потоке цепочку более чем из 127 байт, то он должен будет вставить ещё один маркер, указав в нём длину торчащего наружу хвоста примерно так:

    130-байтная цепочка нулей: FF 00 83 00 260-байтная цепочка троек: FF 03 FF 03 85 03

    Обзор выше доказывает, что от алгоритма RLE можно получить хороший выхлоп только при сжатии последовательности одинаковых байт. В принципе, в исполняемых файлах типа exe\dll таких последовательностей хоть отбавляй, а для текущей задачи по слиянию двух файлов нам больше и не нужно – главное чтобы код удовлетворял требованиям.

    Практическая часть – воплощение задуманного

    В примере ниже продемонстрируем программу, которая выведет виндовое «окно для выбора файлов», после чего упакует его по описанному алгоритму RLE. Как упоминалось в начале статьи, декодерирование и распаковкой будет заниматься у нас программа-матка, поэтому декодер мы поместим не в эту программу, а в программу-носитель (хотя можно было сделать и универсальную).

    Для запроса файла для упаковки, задействуем API-функцию GetOpenFileName() . Эта функция BOOL и возвращает EAX=1 , если нам «выпадет решка» и нуль, если файл открыть не удастся. У неё всего один аргумент – указатель на довольно информативную структуру «OpenFileName» . Внутри этой структуры мы получим имя открываемого файла, со-всей его подноготной. Полное описание данной функции можно найти

    Ссылка скрыта от гостей

    GetOpenFileName ( LPOPENFILENAME ofn ) //; линк на структуру "OpenFileName"

    После того-как файл откроем, выделяем под него память функцией VirtualAlloc() и скопируем в этот регион памяти всё содержимое файла. На следующем шаге выделяем ещё одну область памяти, куда будем сбрасывать зашифрованные данные. Ну и в конце вычисляем размер упакованных данных и записываем их в выходной файл «packed.bin» (выбрать по вкусу). Сам алгоритм сжатия прокомментирован по максимуму, поэтому не вижу смысла повторяться – вот пример:

    format PE gui include 'win32ax.inc' ;//------- .data ofn OPENFILENAME fName db 128 dup(0) inHndl dd 0 fOut db 'packed.bin',0 outHndl dd 0 filter db 'Программы',0 db '*.exe;*.dll;*.sys;',0,0 capt db 'Упаковщик EXE-файлов',0 info db 'Имя файла: %s',13,10 db '-----------------------------',13,10 db 'Размер до сжатия. %d байт',13,10 db 'Размер после сжатия: %d байт' ,0 endMes db 256 dup(0) inpBuff dd 0 outBuff dd 0 fSize dd 0 ;//------- .code start: ;//======= Подготовительные операции.. ============== ;// перед вызовом GetOpenFileName() ;// нужно заполнить некоторые поля структцры "OpenFileName" (ofn) mov [ofn.lStructSize],76 ;// её длина в байтах mov [ofn.lpstrFilter],filter ;// задаём тип открываемых файлов mov [ofn.lpstrFile],fName ;// куда сохранить имя открываемого файла mov [ofn.nMaxFile],512 ;// длинна в байтах имени (ХР и выше) mov [ofn.Flags], OFN_EXPLORER ;// стиль виндового окна invoke GetOpenFileName, ofn ;// запросить системное окно выбора файлов! ;// Открываем выбранный файл ;// invoke _lopen,fName,2 ;// 2 = атрибут R\W mov [inHndl],eax ;// запомнить его дескриптор ;// Запрашиваем его размер ;// invoke GetFileSize,eax,0 ;// mov [fSize],eax ;// запомнить размер файла ;// Выделяем буфер для чтения файла ;// invoke VirtualAlloc,0,[fSize],0x3000,4 mov [inpBuff],eax ;// его адрес ;// Читаем в выделенный буфер весь файл ;// invoke _lread,[inHndl],[inpBuff],[fSize] ;// Создаём выходной файл "packet.bin" ;// invoke _lcreat,fOut,0 ;// mov [outHndl],eax ;// его дескриптор ;// Выделяем под него буфер ;// invoke VirtualAlloc,0,[fSize],0x3000,4 mov [outBuff],eax ;// его адреc. ;//============= КОДЕР ========================== ;// Теперь всё готово и можно паковать. ;// Байт-маркер в AH, ECX = длина файла ;// ESI = источник, EDI = приёмник ;//----------------------------------------------- @pack: mov ecx,[fSize] ;// кол-во данных в буфере mov edi,[outBuff] ;// адрес приёмника (для записи в файл) mov esi,[inpBuff] ;// адрес источника данных @find: xor eax,eax ;// очищаем маркер в AH! lodsb ;// берём в AL очередной байт из ESI cmp al,byte[esi] ;// сравниваем его со-следующим байтом jnz @hash ;// нет одинаковой цепочки! (мусор) call dubleCount ;// иначе: на процедуру подсчёта одинаковой цепочки or ecx,ecx ;// конец файла? (проверить ECX на нуль) jnz @find ;// нет - мотаем.. jmp @exit ;// иначе: на выход! ;// Процедура подсчёта длины НЕодинаковой последовательности. ;// Как найдём одинаковую цепочку - выходим. ;// Нужно проверять маркер на переполнение, ;// если он достигнет 0х7F, вставляем его в выходной поток. ;//--------------------------------- @hash: inc ah ;// считаем в маркер длину цепочки cmp ah,7Fh ;// тест на знаковое переполнение jz @save1 ;// вставить, если заполнился! lodsb ;// иначе: возьмём следующий байт с потока(IN) cmp al,byte[esi] ;// сравниваем его с соседним je @save1 ;// одинаковая цепочка! пора на выход. loop @hash ;// иначе: продолжаем считать @save1: shr ax,8 ;// AL = маркер, AH = 0 (заодно обновили его) stosb ;// вставляем маркер в поток(OUT)! push ecx esi ;// внешний счётчик и указатель mov ecx,eax ;// EСХ = длина цепочки неодинаковых байт sub esi,ecx ;// вернём указатель источника назад dec esi ;// ..коррекция. rep movsb ;// скопировать EСХ-байт из IN в OUT! pop esi ecx ;// восстановить внешний цикл! loop @find ;// продолжаем сжимать блок.. ;// Процедура "dubleCount", для подсчёта одинаковой цепочки байт. ;// С ней дела обстоят чуть проще.. ;//-------------------------------- dubleCount: or ah,10000000b ;// взводим старший (знаковый) бит в маркере @dup: inc ah ;// считаем длину одинаковой цепочки cmp ah,0 ;// проверка на переполнение маркера! jnz @ok ;// переход, если в маркере есть место rol ax,8 ;// иначе: AL = маркер, AH = значение байта stosw ;// записать маркер и значение, в поток(OUT) mov ah,80h ;// обновляем маркер! @ok: lodsb ;// читаем дальше поток(IN).. cmp al,byte[esi] ;// сравниваем соседние байты jnz @save2 ;// нет последовательности! loop @dup ;// всё идёт по-плану.. @save2: rol ax,8 ;// цепочка прервалась! stosw ;// вставить маркер, ret ;// ..и выйти из процедуры. ;// ============= КОНЕЦ КОДЕРА ======================= ;// Запишем упакованные данные в файл. ;// Для начала нужно вычислить их размер. @exit: nop ;// mov ecx,edi ;// ECX = хвост потока(OUT) sub ecx,[outBuff] ;// отнять от него начало push ecx ;// запомнить разницу для вывода на экран invoke _lwrite,[outHndl],[outBuff],ecx ;// запись сжатых данных в файл! ;// Прибить дескрипторы всех открытых файлов invoke _lclose,[inHndl] invoke _lclose,[outHndl] ;// Вывод инфы на экран pop ecx ;// ECX = размер упакованного файла invoke wsprintf,endMes,info,fName,[fSize],ecx ;// перевести всё в символы invoke MessageBox,0,endMes,capt,0 ;// боксим в мессагу invoke ExitProcess,0 ;// Game-Over. .end start ;//

    zip_00.png

    Нужно отметить, что профит коэффициента в 1.9 % достаточно неплохая единица. Ясно, что до архиватора RAR и всей его братии не дотягивает, но зато и накладных расходов меньше (попробуйте дизассемблировать любой из промышленных пакеров). Во-второй части темы, трепанации подлежит привязанный к данному алгоритму распаковщик, в котором кода ещё меньше и этом его огромный плюс. По-сути любой уважающий себя вирь имеет в своём теле подобный декриптор, а значит мы должны знать «врага в лицо». На этом «занавес» — встретимся во-второй части!

    Что можно проделать с упакованным файлом 1 вариант

    Информатика и информационно-коммуникационные технологии в школе

    Полная или частичная перепечатка каким бы то ни было способом материалов данного сайта допускается только с письменного согласия автора.
    При цитировании или ином использовании материалов ссылка на сайт www.klyaksa.net обязательна.

    MyTestX - лего и удобно

    Улыбнитесь

    Один человек спрашивает другого:
    -А у тебя как, CD-ROM есть?
    -Да, кажется, в баре еще одна бутылочка осталась.

    Тема: «Архивация файлов».

    • помочь учащимся получить представление об архивации файлов, познакомиться с понятием избыточности, научить архивировать и распаковывать файлы, дать основные понятия, необходимые для грамотной работы на компьютере.
    • воспитание информационной культуры учащихся, внимательности, аккуратности, дисциплинированности, усидчивости.
    • развитие познавательных интересов, навыков работы на компьютере, самоконтроля, умения конспектировать.

    доска, компьютер, компьютерная презентация.

    1. Орг. момент. (1 мин)
    2. Проверка и актуализация знаний. (5 мин)
    3. Теоретическая часть. (10 мин)
    4. Практическая часть. (15 мин)
    5. Д/з (2 мин)
    6. Вопросы учеников. (5 мин)
    7. Итог урока. (2 мин)

    Приветствие, проверка присутствующих. Объяснение хода урока.

    II. Проверка и актуализация знаний.

    Для того чтобы проверить, как вы усвоили темы предыдущих уроков, предлагаю вам пройти небольшой тест и оценить свои знания. Учащиеся проходят тест.

    III. Теоретическая часть.

    Редакторы, работающие с текстовой, графической, звуковой и другой информацией, кодируют ее наиболее естественным, но не самым экономичным способом.

    Действительно, если внимательно посмотреть любой текст, то можно заметить, что такие буквы «а» и «о», встречаются в нем гораздо чаще чем «ю» и «у». То же самое можно отнести и к сочетаниям букв.

    На рисунках цвета соседних точек в большинстве случаев близки по оттенку. Подобно этому в любой последовательности информации некоторые сочетания встречаются намного чаще других.

    Все это приводит к тому, что в файлах, хранящих эту информацию, некоторые комбинации из 0 и 1 встречаются гораздо чаще, чем другие. В таких случаях говорят, что информация обладает избыточностью, и есть возможность перекодировать содержание файла, уменьшив его размер.

    Для сжатия достаточно придерживаться правила: чем чаще встречается комбинация, тем более коротким сочетанием из 0 и 1 ее можно перекодировать. Разумеется, делать это должна программа.

    Программы, осуществляющие сжатие (упаковку файлов), называют архиваторами.

    Создано множество различных архиваторов, наиболее распространенные из них WinRar и WinZip, в ОС Windows также входит служебная программа Архивация данных. Выбирая архиватор, необходимо руководствоваться его универсальностью и надежностью, но не забывать конечно и о главных параметрах — качество и скорость сжатия.

    При сжатии можно уменьшить размер файла в несколько раз, что дает заметную экономию памяти. Это особенно ценно при пересылке файлов через сеть Интернет или размещении их на носителях, объем которых невелик, например, на дискетах.

    Если попытаться повторить процедуру сжатия, то никакого эффекта не будет, так как избыточность информации главным образом устраняется при первой упаковке.

    Необходимо заметить, что не все типы файлов рационально архивировать с целью уменьшения их размера. Примером может служить рисунок в формате JPEG, звук в формате MP3 и другие.

    Информация, упакованная архиватором, хранится в наиболее экономичной форме, но она закодирована искусственным способом, поэтому прежде, чем открыть содержание файла, необходимо произвести перекодировку файла (принято говорить: распаковать, разархивировать, восстановить файл).

    Основные действия при работе с архивами:

    • создание нового архива;
    • добавление файлов в архив;
    • просмотр содержимого архива;
    • извлечение файлов из архива;
    • просмотр файла в архиве;
    • удаление файлов из архива.

    На этом уроке мы будем работать с одной из наиболее популярных программ-архиваторов WinRAR, всеми авторскими правами WinRAR эксклюзивно владеет автор программы, российский программист — Александр Рошал.

    WinRAR можно использовать двумя способами: в режиме графической оболочки со стандартным интерфейсом Windows и в командной строке. Чтобы использовать WinRAR в режиме оболочки, дважды щелкните мышью на значке WinRAR — после этого для архивации и извлечения файлов вы сможете пользоваться кнопками и меню.

    Как заархивировать файлы с помощью оболочки WinRAR

    Прежде всего, нужно запустить WinRAR. Дважды щелкните мышью или нажмите [Enter] на значке WinRAR. Вы также можете запустить его из меню Пуск → Все программы → WinRAR →WinRAR.

    WinRAR

    При запуске WinRAR показывает в своем окне список файлов и папок в текущей папке. Вам нужно перейти в папку, в которой находятся файлы, предназначенные для архивации. Для изменения текущего диска можно использовать комбинацию клавиш [Ctrl]+[D], список дисков под панелью инструментов, или щелкнуть на маленьком значке диска в нижнем левом углу окна. Для перехода в родительскую папку используйте клавиши [BackSpace], [Ctrl]+[PgUp], маленькую кнопку «Вверх» под панелью инструментов или дважды щелкните на папке «..» в списке файлов. Для перехода в другую папку нажмите [Enter], [Ctrl]+[PgDn] или дважды щелкните мышью на этой папке.

    После того как вы вошли в папку с нужными файлами, выделите файлы и папки, которые хотите заархивировать. Это можно сделать клавишами управления курсором или левой кнопкой мыши при нажатой клавише [Shift] (как в Проводнике и других программах Windows). Выделять файлы в окне WinRAR можно также клавишами [Пробел] или [Insert]. Клавиши [+] и [–] на цифровой клавиатуре позволяют выделять и снимать выделение с группы файлов с помощью шаблонов (т.е. задавая маски файлов символами ‘*’ и ‘?’).

    Выделив один или несколько файлов, нажмите кнопку «Добавить» (то же действие происходит при выборе команды «Добавить файлы в архив» из меню «Команды»). В появившемся диалоговом окне введите имя архива или просто подтвердите имя, предложенное по умолчанию. Здесь же можно выбрать формат нового архива (RAR или ZIP), метод сжатия, размер тома и прочие параметры архивации. Нажмите кнопку «OK» для создания архива.

    Во время архивации отображается окно со статистикой. Если вы хотите прервать процесс упаковки, нажмите кнопку «Отмена». Окно WinRAR можно минимизировать в область уведомлений панели задач: для этого нажмите кнопку «Фоновый». По окончании архивации окно статистики исчезнет, а созданный архив станет текущим выделенным файлом.

    Добавлять файлы в существующий архив RAR можно также методом перетаскивания. Выделите архив в окне WinRAR и нажмите [Enter] (или дважды щелкните мышью) на его имени — RAR прочтет архив и покажет его содержимое. Теперь вы можете добавлять файлы в архив, просто перетаскивая их из другой программы в окно WinRAR.

    Как извлечь файлы с помощью оболочки WinRAR

    Чтобы извлечь файлы с помощью оболочки WinRAR, сначала нужно открыть архив в WinRAR. Это можно сделать несколькими способами:

    • дважды щелкнуть мышью или нажать [Enter] на файле архива в оболочке Windows (в Проводнике или на Рабочем столе). Если WinRAR был связан с типами файлов-архивов во время установки (что делается по умолчанию), то архив будет открыт в WinRAR;
    • дважды щелкнуть мышью или нажать [Enter] на файле архива в окне WinRAR;
    • перетащить архив на значок или окно WinRAR. Перед тем как это сделать, убедитесь, что в окне WinRAR не открыт другой архив, иначе перетаскиваемый архив будет добавлен в уже открытый.

    При открытии архива в окне WinRAR выводится его содержимое. Выделите те файлы и папки, которые вы хотите извлечь. Это можно сделать клавишами управления курсором или левой кнопкой мыши при нажатой клавише [Shift] (как в Проводнике и других программах Windows). Выделять файлы в WinRAR можно также клавишами [Пробел] или [Insert]. Клавиши [+] и [–] на цифровой клавиатуре позволяют выделять и снимать выделение с группы файлов с помощью шаблонов (т.е. задавая маски файлов символами ‘*’ и ‘?’).

    Выделив один или несколько файлов, нажмите кнопку «Извлечь в» вверху окна WinRAR, или же нажмите [Alt]+[E], введите в появившемся диалоге нужный путь, а после этого нажмите кнопку «OK». Здесь же можно поменять несколько дополнительных параметров.

    Во время извлечения отображается окно со статистикой. Если вы хотите прервать извлечение, нажмите кнопку «Отмена». Окно WinRAR можно минимизировать в область уведомлений панели задач: для этого нажмите кнопку «Фоновый». Если извлечение закончится без ошибок, то WinRAR вернется в оболочку, в противном случае появится Окно диагностических сообщений.

    Если при установке WinRAR вы не выключали опцию «Встроить WinRAR в оболочку», то извлекать и архивировать файлы можно прямо из оболочки Windows (из Проводника или с Рабочего стола).

    Как заархивировать файлы в Проводнике или с Рабочего стола

    В Проводнике или на Рабочем столе выделите файлы, которые хотите заархивировать, нажмите правую кнопку мыши на выделенных файлах и выберите команду «Добавить в архив. «. В появившемся диалоговом окне введите имя архива или просто подтвердите имя, предложенное по умолчанию. Здесь же можно выбрать формат нового архива (RAR или ZIP), метод сжатия, размер тома и прочие параметры архивации. Нажмите кнопку «OK» для создания архива. Архив будет создан в той же папке, где находятся выделенные файлы.

    Чтобы добавить файлы в предложенный архив без дополнительных запросов, воспользуйтесь командой «Добавить в «. В этом случае будут применены параметры архивации из профиля архивации по умолчанию.

    Еще один способ заархивировать файлы — перетащить значки файлов на значок существующего архива. В этом случае файлы будут добавлены в этот архив.

    Как извлечь файлы в Проводнике или с Рабочего стола

    Щелкните правой кнопкой мыши на значке архива, выберите команду «Извлечь файлы. «, введите в появившемся диалоговом окне имя папки, в которую их надо извлечь, и нажмите кнопку «OK». В этом же диалоге можно настроить несколько дополнительных параметров.

    Вы можете также выбрать команду «Извлечь в «, чтобы распаковать файлы в предложенную папку без каких-либо дополнительных запросов или «Извлечь в текущую папку» для извлечения в текущую папку.

    Еще один способ извлечь файлы — перетащить один или несколько архивов правой кнопкой мыши в папку назначения, а затем выбрать в появившемся меню команду «Извлечь в текущую папку».

    Программа WinRAR также может создавать самораспаковывающиеся архивы. Самораспаковывающийся (SFX, от англ. SelF-eXtracting) архив — это архив, к которому присоединен исполняемый модуль. Этот модуль позволяет извлекать файлы простым запуском архива как обычной программы. Таким образом, для извлечения содержимого SFX-архива не требуется дополнительных внешних программ. Тем не менее, WinRAR может работать с SFX-архивом так же, как и с любым другим, поэтому если вы не хотите запускать SFX-архив (например, когда не можете гарантировать, что в нем нет вирусов), то для просмотра или извлечения его содержимого можно использовать WinRAR.

    SFX-архивы, как и любые другие исполняемые файлы, обычно имеют расширение .EXE. SFX-архивы удобны в тех случаях, когда нужно передать кому-то архив, но вы не уверены, что у адресата есть соответствующий архиватор для его распаковки. Вы также можете использовать SFX-архивы для распространения своих собственных программ.

    Чтобы зашифровать файлы, нужно до начала архивации указать пароль — в командной строке, в меню или непосредственно на вкладке «Дополнительно» диалога «Имя и параметры архива». Для ввода пароля в оболочке WinRAR нажмите [Ctrl]+[P] (то же действие происходит при выборе команды «Пароль» в меню «Файл» или при щелчке мышью на маленьком значке ключа в левом нижнем углу окна WinRAR). Для ввода пароля в диалоге «Имя и параметры архива» необходимо нажать кнопку «Установить пароль» на вкладке «Дополнительно».

    В отличие от ZIP, формат RAR позволяет шифровать не только данные файлов, но и другие важные области архива: имена файлов, размеры, атрибуты, комментарии и другие блоки.

    Не забывайте удалять введенный пароль после того, как он становится ненужным, иначе вы можете случайно запаковать какие-либо файлы с паролем, абсолютно не намереваясь этого делать. Чтобы удалить пароль, введите пустую строку в диалоге ввода пароля или закройте WinRAR и снова его запустите. Когда пароль введен, жёлтый значок ключа становится красным. Кроме того, если вы начинаете архивацию с использованием пароля, заголовок диалога ввода имени и параметров архива дважды мигнет.

    Если вы ввели пароль непосредственно в диалоге «Имя и параметры архива», то вам не нужно отменять его самостоятельно — пароль будет действовать только в течение одной операции архивирования, по окончании которой сбросится автоматически.

    При извлечении зашифрованных файлов можно ввести пароль заранее, хотя это и необязательно. Если пароль не был введен перед началом извлечения, и WinRAR обнаружил зашифрованный файл, он спросит пароль у пользователя.

    Для обеспечения достаточного уровня безопасности используйте пароли длиной не менее 8 символов. Не следует использовать в качестве пароля слова какого-либо языка, лучшим выбором является случайная комбинация букв и цифр. Обратите внимание, что в паролях учитывается регистр букв. Помните, что если вы потеряете свой пароль, восстановить из архива зашифрованные файлы не удастся — в этом вам не поможет даже сам автор WinRAR.

    • Почему есть возможность уменьшать размер файлов?
    • Что такое архивация?
    • Какие файлы не имеет смысла архивировать?
    • Почему перед пересылкой текстового файла по электронной почте имеет смысл предварительно его упаковать в архив?

    III. Практическая часть.

    Для выполнения задания этого урока создайте новую папку «Архивация файлов» в своей папке и скопируйте в нее файлы из папки C:\Наш урок.

    Теперь поучимся архивировать файлы.

    Запустите программу WinRAR. (Пуск→Все программы→Архиваторы→ WinRAR→ WinRAR). Откройте в окне программы свую папку Архивация файлов и выделите несколько файлов.

    Архивация файлов

    Щелкните кнопку добавить. Дайте название будущему архиву и нажмите ОК.

    Архивация файлов

    Начнется упаковка файлов в архив. При этом вы можете видеть окно со статистикой процесса упаковки.

    упаковка файлов в архив

    В ваше папке появится новый файл архива Архив1. Можете открыть файл архива и щелкнув Инфо вызовите окно информации, где наглядно видна степень сжатия файлов.

    степень сжатия файлов

    Обратите внимание, что некоторые файлы сжимаются хорошо, некоторые практически не сжимаются, так как сохранены в формате сжатием.

    Вот например статистика сжатия текстового файла с большим числом повторов:

    степень сжатия файлов

    Как видите экономия памяти в этом случаи целых 99%!

    Теперь заархивируем файлы с помощью проводника.

    Откройте свою папку Архивация, выделите несколько файлов, нажмите правую кнопку мыши на выделенных файлах и выберите команду «Добавить в архив…». Появляется окно аналогичное предыдущему заданию. Вводим имя файла Архив2 и жмем ОК.

    Возможно, вы заметили кроме команды «Добавить в архив…» еще команду «Добавить в архив имя архива>». При выборе этой команды будут применены параметры архивации из профиля архивации по умолчанию.

    Для создания шифрованного архива необходимо после того как появится окно добавления файлов в архив выбрать закладку Дополнительно, нажать кнопку Установить пароль и в появившемся окне ввести пароль для архивации.

    создания шифрованного архива

    Теперь займемся распаковкой архивов и просмотром его содержимого.

    Удалите из папки все файлы кроме полученных архивов.

    Для того чтобы просмотреть содержимое архива или извлечь файлы из архива с помощью оболочки WinRAR, сначала нужно открыть архив в WinRAR. Как это сделать мы с вами сегодня уже говорили. При открытии архива в окне WinRAR выводится его содержимое. Выделите те файлы и папки, которые вы хотите извлечь. Выделив один или несколько файлов, нажмите кнопку «Извлечь в» вверху окна WinRAR, введите в появившемся диалоге нужный путь, а после этого нажмите кнопку «OK».

    Извлечь файлы, можно и просто перетащив их из окна оболочки WinRAR в вашу папку.

    Для того чтобы извлечь файлы из архива в окне Мой компьютер, не отрывая оболочку WinRAR, щелкните правой кнопкой мыши на значке архива, выберите команду «Извлечь файлы. «, введите в появившемся диалоговом окне имя папки, в которую их надо извлечь, и нажмите кнопку «OK».

    Извлечь файлы

    Вы можете также выбрать команду «Извлечь в «, чтобы распаковать файлы в предложенную папку без каких-либо дополнительных запросов или «Извлечь в текущую папку» для извлечения в текущую папку.

    Теперь выполните задания самостоятельно:

    • Создайте 2 архива, один без шифрования, другой с шифрованием.
    • Извлеките файлы из архива.
    • Извлеките файлы из архива, подготовленного учителем из С:\Наш урок.
    • ** Получите по электронной почте файл с архивом, распакуйте документ, допечатайте необходимую информацию, заархивируйте документ и отправьте учителю по электронной почте. Пароль к архиву в письме.

    Учащиеся выполняют задание.

    Знать, что такое архиваторы и их назначение, уметь упаковывать и распаковывать файлы в архивах. Дополнительное задание: научится создавать самораспаковывающиеся архивы.

    V. Вопросы учеников.

    Ответы на вопросы учащихся.

    Подведение итога урока. Выставление оценок.

    На уроке мы познакомились с архиваторами и их назначением, научились работать с архиватором.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *