Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практикум ОА и П.doc
Скачиваний:
23
Добавлен:
29.08.2019
Размер:
13.34 Mб
Скачать

Лабораторная работа №35. Тема: «Создание установочного диска».

Цель работы: получение навыков создания установочного диска.

Краткие теоретические сведения

Для запуска внешних программ можно использовать функцию WinExec или ShellExecute.

Функция WinExec позволяет выполнить указанное приложение. Определение функции: function WinExec (CmdLine: Pchar; CmdShow: integer): integer;.

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

  1. В каталоге, из которого запущено приложение.

  2. В текущем каталоге.

  3. В системном каталоге Windows, имя которого возвращается функцией GetSystemDirectory.

  4. В каталоге Windows, имя которого возвращается функцией GetWindowsDirectory.

  5. В каталогах из списка в переменной окружения PATH.

Параметр CmdShow определяет форму представления окна запускаемого приложения Windows. Возможные значения этого параметра смотрите в разделе ShellExecute. Для приложений, не являющихся Windows-приложениями, файлов PIF и т. д., состояние окна определяет само приложение.

При успешном выполнении запуска приложения функция WinExec возвращает значение, большее 31.

Достоинство функции WinExec является ее совместимостью с ранними версиями Windows. Собственно, для этого она и сохраняется в WIN32, хотя для WIN32 рекомендуется пользоваться функцией CreateProcess. При работе с WIN32 функция WinExec завершает работу, если вызванное приложение вызывает функцию с или заканчивается выделенный лимит времени. Таким образом, ожидание можно прервать, предусмотрев в процессе, запущенном с помощью WinExec, в нужный момент вызов функции WinExec.

В отличие от WinExec, функция ShellExecute позволяет не только выполнить любое приложение Windows, но и открыть файл документа, что означает выполнение связанного с ним приложения и загрузку в него этого документа. Например, обычно с документами, имеющими расширение .doc, связана программа WinWord. В этом случае открыть файл, например, с именем file.doc означает запустить WinWord и передать ему в качестве параметра имя файла file.doc. Кроме описанных возможностей функция ShellExecute позволяет распечатать указанный файл или открыть указанную папку. Последнее означает, что будет запущена программа «Проводник» с открытой указанной папкой. Определение функции:

Function ShellExecute (Wnd: HWnd; Operation, FileName, Parameters, Directory: PChar; ShowCmd: Integer): Thandle;.

Важнейшие параметры функции имеют следующие значения:

Параметр

Описание

Wnd

Родительское окно, в котором отображаются сообщения запускаемого приложения.

Operation

Указывает на строку с нулевым символом в конце, которая определяет выполняемую операцию. Эта строка может содержать текст «open» (открыть) или «print» (напечатать). Для Windows 98 и NT определено еще одно значение: «explore» (открыть папку). Если параметр Operation равен nil, то по умолчанию выполняется операция «open».

FileName

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

Parameters

Указывает на строку с нулевым символом в конце, которая определяет передаваемые в приложении параметры, если FileName определяет выполняемый файл. Если FileName указывает на строку, определяющую открываемый документ, то этот параметр равен nil.

Directory

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

ShowCmd

Определяет режим открытия указанного файла.

Функция ShellExecute возвращает дескриптор открытого приложения или дескриптор сервера DDE-приложения. Если возвращаемое значение меньше или равно 32, это указывает на ошибку.