![]() КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
План заняття. 1. Характеристика процедур виклику зовнішніх прикладних застосувань
1. Характеристика процедур виклику зовнішніх прикладних застосувань 2. Характеристика методів та властивостей виклику зовнішніх прикладних застосувань
Часто возникает необходимость запускать другие внешние программы из разрабатываемого приложения. Для этого используются такие API-функции, как WinExec и ShellExecute. Функция WinExec (lpCmdLine: LPCSTR, uCmdShow: UINT): UINT обеспечивает запуск внешней программы. В качестве параметров данной функции задаются имя запускаемого файла приложения и дополнительная информация (параметры работы вызываемой программы). Если не указан путь в имени запускаемого файла, то его поиск осуществляется, в первую очередь, в текущем каталоге, из которого запущено разрабатываемое приложение, а затем в текущем каталоге Windows; в системном каталоге Windows; в главном каталоге Windows; в каталогах, заданных для поиска командой PATH. Соответственно, если файл не найден, он запускаться не будет и при этом не выдаются никакие предупреждения или сообщения об ошибке. Параметр uCmdShow определяет один из следующих способов отображения окна запускаемого приложения: ■ SWShowMaximized - максимальный размер окна; ■ SWShowMinimized - минимальный размер окна; ■ SW_ShowNormal - нормальный размер окна. В качестве результата функция WinExec возвращает целое число, большее 31 (в случае успешного выполнения). При возникновении ошибки могут быть возвращены следующие значения: ■ 0 — недостаточно памяти или других ресурсов; ■ ERRORBADFORMAT - неправильный формат файла; ■ ERRORFILENOTFOUND - не найден указанный файл; ■ ERROR_PATH_NOT_FOUND - не найден указанный путь. Функция WinExec позволяет запускать как 16-, так и 32-разрядные приложения Windows, хотя сама является 16-разрядной, что обеспечивает совместимость с более ранними версиями Delphi.
WinExec(PChar('CDPlayer.exe'), SW_ShowNormal);
Функция ShellExecute (hwnd: HWND, lpOperation: LPCSTR, lpFile: LPCSTR, lpParameters: LPCSTR, lpDirectory: LPCSTR, nShowCmd: INT): HINSTANCE является 32-разрядной и предоставляет больше возможностей, чем функция WinExec, однако, как видно из ее описания, требует задания большего количества параметров при вызове. Данная функция позволяет запустить, открыть либо вывести на принтер указанный файл. Так, например, если указать исполняемый файл, то в результате будет осуществляться выполнение приложения. Если же указать файл электронной таблицы с расширением XLS, то произойдет вызов Microsoft Excel и последующее открытие таблицы. Наконец, если указать не файл, а каталог, то будет запущен Проводник Windows, в котором отображается содержимое данного каталога. Параметры функции ShellExecute имеют следующее назначение. Параметр hwnd ссылается на окно приложения, из которого запускается другое приложение (в качестве ссылки на окно задается его дескриптор). Параметр lpOperation содержит строку, которая определяет тип выполняемой операции и может принимать одно из следующих значений: ■ open — открыть файл или каталог, указанный параметром lpFile, либо запустить исполняемый файл, если он задан; ■ print - напечатать файл-документ, указанный параметром lpFile, либо запустить исполняемый файл, если он задан; ■ explore - в окне Проводника Windows открыть каталог, указанный параметром lpFile. Если для данного параметра задать значение nil, то по умолчанию принимается значение open. Параметр lpFile содержит строку с именем файла или каталога, для которых выполняется заданная операция. Параметр lpParameters представляет собой строку, которая содержит дополнительные параметры, передаваемые приложению. Параметру lpParameters обычно задается значение nil, если открывается неисполняемый файл. Параметр lpDirectory является строкой, в которой указывается имя каталога по умолчанию. Параметр nShowCmd задает способ отображения окна запускаемого приложения: нормальный размер окна, окно максимизировано или окно минимизировано. Функция ShellExecute возвращает ссылку на вновь запущенное приложение, значение которой в случае успешного выполнения больше 32. При неудачном выполнении данной функции возвращается код ошибки. В разделе uses следует указывать модуль ShellAPI, чтобы была возможность использовать функцию ShellExecute. Рассмотрим несколько примеров практического использования функции ShellExecute. Вызов Калькулятора Windows можно осуществить следующим образом: ShellExecute(Application.MainForm.Handle, nil, PChar('Calc.exe'), nil, nil, SW_ShowNormal);
Следует обратить внимание на то, что в данном примере в качестве окна, которое вызывает Калькулятор, используется главная форма приложения Application. MainForm. Открытие рисунка в формате BMP производится так: ShellExecute(Forml.Handle, PChar('open'), PChar('risunok.bmp'), nil, PChar('С:\Graph'), SW_ShowNormal);
Здесь вызов производится формой с именем Forml. В результате выполнения такой функции из каталога C:\Graph будет открыт файл рисунка risunok.bmp. При этом для открытия графического файла будет автоматически использоваться программа, назначенная для обработки рисунков данного типа, например графический редактор Jasc Paint ShopPro или редактор просмотра изображений ACDSee. По аналогии с этим можно открыть и документ Word. Однако существует еще один способ.
В этом случае вызывается непосредственно сам текстовый редактор Word, а в качестве параметра ему передается имя документа, который и будет открыт. Если требуется открыть и просмотреть содержимое папки C:\Program Files, то это можно сделать таким образом:
ShellExecute(Application.MainForm.Handle, PChar('explore'), PChar('С:\Program Files'), nil, nil, SW_ShowNormal);
С помощью вызова функции такого вида будет запущен Проводник Windows, в котором отобразится содержимое каталога C:\Program Files.
Контрольні питання 1. Наведіть характеристики процедур виклику зовнішніх прикладних застосувань 2. Наведіть характеристики методів та властивостей виклику зовнішніх прикладних застосувань АУДИТОРНЕ ЗАНЯТТЯ ЗМІСТОВИЙ МОДУЛЬ 6: ПРОГРАМУВАННЯ З ГРАФАМИ. ВІЗУАЛЬНІ КОМПОНЕНТИ. БАЗИ ДАНИХ ТЕМА 6.6: ОСНОВИ БАЗ ДАНИХ Лекція №52 – Введення баз даних
Дата добавления: 2014-12-25; Просмотров: 337; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |