Interface

Uses

Windows, Messages, SysUtils,Classes, Graphics, Controls,Forms, Dialogs, OleCtrls, HHOPENLibJTLB, StdCtrls;

Type

TForm1 = class(TForm)

Label1: TLabel;

Editl: TEdit; // файлсправки

Edit2: TEdit;// разделсправки (имяHTML-файла)

Button1: TButton; // кнопкаСправка

Hhopen1: THhopen; // ActiveX-компонент Hhopen

Label2: TLabel;

Label3: TLabel;

ProcedureButton1Click(Sender: TObject);

Private

{ Private declarations }

Public

{ Public declarations }

End;

varForm1: TForm1;

 

Implementation

{$R *.DFM}

ProcedureTForm1.Button1Click(Sender: TObject);// щелчокнакнопкеСправка

Var

HelpFile : string;// файлсправки

HelpTopic : string;// разделсправки

pwHelpFile : PWideChar; // файл справки (указатель на строку WideChar)

pwHelpTopic : PWideChar; // раздел (указатель на строку WideChar)

Begin

HelpFile := Edit1.Text;

HelpTopic := Edit2.Text;

// выделитьпамятьдлястрокWideChar

GetMemfpw(HelpFile, Length(HelpFile) * 2);

GetMemfpw(HelpTopic, Length(HelpTopic)*2);

// преобразоватьAnsi-строкувWideString-строку

pwHelpFile := StringToWideChar(HelpFile, pwHelpFile, MAX_PATH*2);

pwHelpTopic := StringToWideChar(HelpTopic, pwHelpTopic, 32);

// вывестисправочнуюинформацию

Form1.Hhopen1.OpenHelp(pwHelpFile, pwHelpTopic);

End;

End.

Вывод справочной информации выполняет процедура обработки события OnClick на кнопке Справка.Так как параметры метода OpenHelp должны быть строками WideChar, то сначала выполняется преобразование ANSI-строки в строку WideChar.

Контрольные вопросы:

1. Для чего предназначена справочная система программы?

2. Каким требованиям должна удовлетворять справочная система?

3. Кто участвует в разработке справочной системы? Какие функции выполняет каждый из участников разработки?

4. Что является целью тестирования справочной системы?

5. Какая служебная программа обеспечивает вывод справочной системы, разработанной с помощью HelpWorkshop, в операционной системе Windows?

6. Какие структурные элементы входят в окно справочной системы? Можно ли менять их состав?

7. Что является основным элементом справочной системы, разрабатываемой с помощью Help Workshop?

8. Какое расширение должны иметь файлы со справочной информацией, на основе которой будет создан hlp-файл программой Help Workshop?

9. Какие этапы выделяют в процессе создания справочной системы?

10. Какую структуру должен иметь файл со справочной информацией? Как располагается в нем материал каждого раздела?

11. Каким образом оформляется название раздела в файле со справочной информацией?

12. Чем заканчивается текст каждого раздела в файле со справочной информацией?

13. Где может размещаться раздел «Содержание»?

14. Каким образом можно обеспечить переходы между разделами?

15. Как можно добавить в текст раздела изображения?

16. Как можно добавить в текст раздела кнопки, нажимая которые пользователь будет запускать тот или иной макрос? Какой из рассмотренных инструментов позволяет это делать?

17. Что определяет сноска #?

18. В какой сноске указываются ключевые слова для перехода на раздел, используемые в окне «Предметный указатель»?

19. В какой сноске указываются ключевые слова для перехода на раздел с помощью макроса Klink?

20. Что определяет сноска$?

21. Для чего используется сноска А?

22. Для чего используется сноска + ?

23. Для чего используется сноска ! ?

24. Для чего используется сноска * ?

25. Для чего используется сноска > ?

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

27. Как в файле справочной информации, обрабатываемом инструментом Help Workshop оформляется текст комментария?

28. Как во время подготовки текста справочной информации оформляются слова, обеспечивающие отображение текста комментария? Что размещается после этих слов? В каком окне появляется комментарий?

29. Каким образом создается новый проект справочной системы в Help Workshop?

30. Как отображаются элементы проекта, представляющие собой отдельные секции?

31. Что можно сделать в окне проекта справочной системы?

32. Как добавляются в проект файлы справочной информации при использовании Help Workshop и HTML Help Workshop?

33. Как удаляется файл разделов из проекта справочной системы Help Workshop и HTML Help Workshop?

34. Как в Help Workshop задаются характеристики главного окна справочной системы? Какие характеристики можно задать для главного окна справочной системы?

35. Как добавляются в проект Help Workshop новые окна?

36. Как удаляются из проекта Help Workshop окна?

37. Какие характеристики можно задать для дополнительных окон в проекте Help Workshop?

38. Для чего используются числовых значений идентификаторам разделов справки, задаваемые в проекте Help Workshop? Как задать соответствие контекста раздела справочного файла и номера контекста управляющего элемента приложения?

39. Что задается с помощью кнопки Config, расположенной в главном окне файла проекта справочной системы Help Workshop?

40. Что можно задать с помощью кнопки Options, расположенной в главном окне файла проекта справочной системы Help Workshop?

41. Как осуществляется компиляция проекта Help Workshop?

42. Как можно просмотреть созданный файл справки из Help Workshop? Какие параметры просмотра можно задать?

43. Что обеспечивает установка в меню File опции Help Author при работе в Help Workshop?

44. Как в программе Help Workshop создается содержание? Какое расширение будет иметь файл содержания? Как добавляются разделы и темы в содержание?

45. Как добавить содержание в проект справочной системы, разрабатываемой в Help Workshop?

46. Что будет отображаться на вкладках Указатель и Поиск справочной системы, разработанной в Help Workshop?

47. Как обеспечивается в программах, разработанных в Delphi, доступ к справочной системе, разработанной в Help Workshop?

48. В каком разделе указываются имена файлов справочной информации?

49. В каком стиле позволяет создавать систему помощи HTML HelpWorkshop?

50. Нужны ли какие-нибудь дополнительные средства для вывода файла справки, созданного с помощью HTML HelpWorkshop?

51. Какое расширение будет иметь файл справочной системы, разработанной с помощью HTML HelpWorkshop? Как называются такие файлы?

52. Откуда берется справочная информация для создания системы помощи инструментом HTML HelpWorkshop?

53. Что можно использовать для подготовки файлов со справочной информацией для HTML HelpWorkshop?

54. Как нужно размещать справочную информацию, если в системе помощи, разрабатываемой с помощью HTML HelpWorkshop, планируется использовать вкладку «Содержание»?

55. Каким образом создается новый проект в HTML HelpWorkshop? Что указывается при этом?

56. Как в HTML HelpWorkshop задаётся главный (стартовый) раздел и заголовок окна, в котором будет выводиться справочная информация?

57. Как в HTML HelpWorkshop создается содержание для справочной системы?

58. Как принято располагать элементы в содержании?

59. Как в HTML HelpWorkshop добавляются элементы в содержание?

60. Можно ли в HTML HelpWorkshop менять значок, соответствующий элементу содержания? Если можно, то как это делается?

61. Как в HTML HelpWorkshop можно изменить расположение элемента в содержании?

62. Что представляет собой компиляция системы помощи?

63. Что является исходной информацией для компилятора HTML HelpWorkshop? Как можно запустить компиляцию проекта в HTML HelpWorkshop?

64. Каким образом можно отобразить из приложения, созданного в Delphi, файл справки, созданный в HTML HelpWorkshop?

Лекция 21

 

ТЕМА: Защита приложения после компиляции.

Литература: 1. Спецвыпуск: Хакер, номер #057, стр. 057-074-1.

2. www.asprotect.ru – официальный сайт разработчиков ASProtect.

3. Справочная система ASProtect 32.

 

После компиляции нужно защищать свои программы всеми возможными способами. Один из самых популярных способов – использование протекторов.

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

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

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

Рассмотрим несколько протекторов исполняемых файлов.








Дата добавления: 2015-09-07; просмотров: 884;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.013 сек.