Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kursak_III.doc
Скачиваний:
162
Добавлен:
20.03.2015
Размер:
311.81 Кб
Скачать

2. Разработка демонстрационной программы

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

2.1. Разработка визуальной части программы средствами Delphi

В интегрированной среде разработки приложений Delphi создадим приложение (File → New → Application). Изменим значение свойства Caption, применяемое к главной форме с «TForm1» на «Шифрование текста. Курсовая работа». Далее на главную форму необходимо добавить четыре компонента Button, и в свойствах Caption изменить их на «зашифровать->», «<-дешифровать», «очистка1» и «очистка2». Далее необходимо добавить компонент ComboBox, в свойстве Text прописать строку «список методов», а в свойстве Items создать список названий методов шифрования:

  • метод цезаря;

  • метод перестановок;

  • метод замены;

  • инверсное кодирование;

  • метод Вижинера;

  • гаммирование;

Следующим шагом будет добавление на форму компонента Label, необходимо изменить его свойства Caption на приглашение приступить к работе с программой, например «Пожалуйста, введите текст и выберите метод шифрования». Следующим компонентом будет LabeledEdit, он находится на вкладке Additional. Затем нужно добавить два компонента Memo, в которых в дальнейшем будет отображаться исходный, зашифрованный и дешифрованный текст. Далее необходимо разместить на форме панель (компонент Panel), которая будет содержать в себе два компонента ComboBox, два компонента Label, и четыре компонента LabeledEdit. В компонентах ComboBox необходимо снова отредактировать свойство Items, в первом случае добавить список:

  • случайная равновероятная;

  • линейный конгруэнтный датчик ПСЧ;

  • ПС последовательность;

а во втором –

  • Tш=(Tг+Tо) mod n;

  • Tш=Tо XOR Tг;

Свойство Caption у компонентов Label нужно изменить на «Генерация гаммы» и «Наложение гаммы». Вне компонента Panel основная форма должна содержать еще два компонента StringGrid и один компонент UpDown (для увеличения/уменьшения значений ключа на единицу). Компонент XPManifest – не обязателен, и добавляется по желанию разработчика.

Работа программы с компонентом XPManifest

В Windows XP есть менеджер тем (theme manager) который изменяет вид большинства стандартных объектов Windows (см. рис. 1). Misrosoft утверждает что старые версии библиотеки comctl32.dll содержат код для поддержки различных платформ семейства Windows. Microsoft разумно решила почистить содержимое comctl32.dll для улучшения работы тем в Windows XP. Теперь получается что существует две версии библиотеки: старая (версия 5.8) которая имеет обратную совместимость всех предыдущих версий Windows (в том числе и XP) и новую версию (версия 6) которая совместима только с XP (ну и следующими версиями Windows).

Что такое манифест, и какую роль он играет в выборе версии 6.0 библиотеки comctl32.dll для моего приложения? Обычно ресурсы используются для хранения таких вещей как картинки, иконки и курсоры мыши. XML документ, когда подключается в ресурсную секцию позволяет решить Windows XP какую версию comctl32.dll использовать.

Рисунок 1. Работа программы с компонентом XPManifest

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]