Как создать exe файл в visual foxpro
Приложение может быть создано как APP-файл или как EXE-файл. Для запуска APP-файла требуется наличие VFP. Запуск EXE-файла выполняется без VFP, но требует наличия 2-х DLL-библиотек (см. описание команды BUILD EXE).
Строится приложение как интерактивно в диспетчере проекта, так и программно. Кроме того, можно воспользоваться помощником (команда меню Tools – Wizards – Application).
BUILD APP APPFileName FROM ProjectName [RECOMPILE]
создает приложение (APP-файл APPFileName), используя имеющуюся в проекте ProjectName информацию. Если задана опция RECOMPILE то компилируются все файлы проекта, в противном случае компилируются только измененные файлы.
Одноименный EXE-файл, если он имеется в той же папке, куда направляется APP-файл, будет удален.
BUILD EXE EXEFileName FROM ProjectName [RECOMPILE]
создает исполняемый EXE-файл EXEFileName, используя имеющуюся в проекте ProjectName информацию.
Одноименный APP-файл, если он имеется в той же папке, куда направляется EXE-файл, будет удален.
Исполняемый файл после создания требует наличия двух файлов: Vfp8r.dll и Vfp8renu.dll. Они должны быть размещены в той же директории, что и исполняемый файл, либо в одном из MS-DOS-путей.
Если исполняемый файл содержит определение OLEPUBLIC-класса, то BUILD EXE автоматически регистрирует определение этого класса в системном регистре. Также определение этого класса появляется в списке Server Classes вкладки Servers диалога Project Information, открыть который можно, выбрав пункты меню Project – Project Info или нажав на Ctrl+J.
BUILD EXE при наличии определений OLEPUBLIC-классов также создает VBR- (регистрационный) и TLB-файлы (библиотека типов) с именами, совпадающими с именем исполняемого файла.
VBR-файл дает возможность зарегистрировать определения классов в системном регистре, когда исполняемый файл перемещается на другой компьютер. TLB-файл используется браузерами объектов.
Object.Build([cOutputName] [, nBuildAction] [, lRebuildAll]
[, lShowErrors] [, lBuildNewGUIDs])
перестраивает проект или создает APP, EXE или DLL-файл по имеющимся в проекте данным.
Возвращает .T., если действие выполнено без ошибок, или .F. – в противном случае.
cOutputName – имя создаваемого файла. Если cOutputName имеет расширение и параметр nBuildAction опущен, то вид создаваемого файла определяется его расширением.
nBuildAction – задает вид выполняемого действия; описан в табл. 9.2.
Технология компиляции EXE в Visual FoxPro довольно проста. Мы не будем отвлекаться на такие экстремальные методы как ввод в командном окне команд типа BUILD PROJECT, BUILD APP, BUILD EXE, а ограничимся удобствами, предоставляемыми графическим интерфейсом VFP.
Итак, для создания EXE нам понадобится нажать в менеджере проекта кнопку "BUILD. ". Выбрав в открывшемся диалоговом окне опцию Win32 executable / COM server (EXE) давим OK. ВСЕ. ;-)
"Как все?"-- спросите Вы -- "А указать под каким именем сохранить файл?"
Согласен. Надо указать обязательно, иначе все насмарку.
Кстати, думаю, что нелишним будет напомнить о том, что для того чтобы процесс компиляции прошел успешно необходимо менеджер проекта заполнить файлами Вашей программы, один из которых обязательно должен быть как main (в менеджере проектов имя этого файла выделено жирным шрифтом), т.е. файл который будет исполнен первым. По умолчанию как main-программа устанавливается первый включенный в проект программный файл (*.prg) или файл формы (*.scx).
Вобщем все довольно просто! Просто.
Теперь о грустном.
1.2 Сопутствующие файлы
Все перепетии этапа компиляции приложения уже позади, и Вы, гордый от сознания собственного превосходства над простыми смертными, семимильными шагами несетесь к заказчику, устанавливаете свое приложение, попутно расписывая ему(заказчику) как теперь у него все будет круто, и подсчитывая в уме какой винт нужно купить, что бы осталось на пиво, вдруг натыкаетесь на то, что Ваша супер-пупер прога не фурычит. Грустно. Обидно. А главное не будет у Вас нового вичестера или Чего Вы Там Себе запланировали купить с гонорара.
Все дело в том, что скомпилированный нами .exe не есть самодостаточным исполняемым файлом. Для нормальной работы этому псевдо-исполняемому файлу необходимы библиотеки поддержки (.dll). Я не буду сильно вдаваться в рассуждения об этом, а просто приведу названия файлов, необходимых для нормальной работы приложения.
В принципе до 6-й версии включительно для переноса приложения на клиентскую машину можно использовать штатный Setup Wizard, который самостоятельно все прописывает, а в последующих --InstallShield (или другой инсталятор).
Указанный выше набор библиотек необходимо разместить в каталоге программы или в системном каталоге Windows. Для различных версий Windows эти каталоги различны:
2.Что нужно включить в EXE
Эпиграф:"To include or not to include?"
пьяный электрик
Все изложенное ниже является личным мнением автора, которым Вы можете пренебречь. Но делая по-своему помните: биться головой в бетонную стену гораздо больнее, чем воспользоваться проломом сделаным до Вас.
По умолчанию в готовый .exe включаются все файлы, необходимые для работы приложения - программы, формы, меню, библиотеки, классы и т.д. кроме файлов баз данных и таблиц (такие файлы можно узнать по перечеркнутому кружочку возле имени файла в менеджере проекта). Все включенные в .exe файлы после компиляции станут немодифицируемыми (доступными только для чтения). Понятно, что файлы таблиц (*.dbf) включать не стоит поскольку они подвергаются постоянным операциям изменения-дополнения данных, но иногда бывают случаи когда необходимо скрыть какие-либо статическиеданные от пользователя, но обеспечить доступ к ним самой программы. Лучшего места чем "внутренности" exe-шника не придумать.
Так же довольно нередкая ситуация, когда нужно "находу", или временно, изменить файл отчета, или когда имеем целый набор отчетов, уникальных для каждого пользователя. Ну в самом деле представьте: десять операторов и каждому по десять отчетов и все это в *.exe. единственным выходом в этой ситуации будет исключить эти отчеты из конечного файла и поставлять их вместе с приложением.
В любом случае решение о том какие файлы исключить, а какие оставить за Вами.
Мы уже кратко познакомились с окном диспетчера проекта и даже попытались создать АРР-приложение. Теперь мы продолжим знакомство и создадим исполняемый файл с расширением ехе.
Параметры проекта
При создании проекта можно задать дополнительные параметры, такие как фамилия разработчика, пиктограмма для исполняемого файла и т.д. Для этого необходимо воспользоваться пунктом Project Info (Информация о проекте) меню Project (Проект). Появится диалоговое окно, содержащее дополнительную информацию о проекте.
Диалоговое окно Project Information
Окно имеет три вкладки: Project (Проект), Files (Файлы) и Servers (Серверы).
В поля ввода вкладки Project заносится информация о разработчике; Author (Ф.И.О. автора), Company (Наименование компании разработчика), Address (Адрес), City (Город), Country (Страна), State (Штат, область), Postal code (Почтовый индекс).
Ноте (Домашний каталог) позволяет указать месторасположение проекта, флажок Attach icon (Определить значок) и кнопка Icon (Значок) создать значок (иконку), при щелчке на котором будет запускаться наше приложение. Флажок Debug info (Информация об отладке) позволяет включить в исполняемый код отладочную информацию, а флажок Encrypted (Шифрование) включает механизм шифрования исполняемого кода проекта.
На вкладке Files (Файлы) отображены все файлы, входящие в наш проект. Файлы представлены в табличном виде, и чтобы упорядочить их, например по имени, достаточно щелкнуть на заголовке Name (Имя). Таким же образом файлы можно упорядочить по типу (Туре) или по дате последнего редактирования (Last Modified). Файлы, включенные в проект (Included), отмечены крестиком.
Установка основной программы
В любом проекте обязательно должен быть файл, который будет запускать приложение. Эта штука и называется основной программой, ею может быть все, что угодно — экранная форма, меню, программа и т.д.
Для установки файла в качестве основного нужно открыть диспетчер проекта, установить мышь на нужный файл, нажать правую кнопку и в контекстном меню выбрать пункт Set Main (Установить основным). Файл при этом будет выделен жирным шрифтом.
Выбор основной программы
Опция Exclude
Такие компоненты приложения, как экранные формы, меню, программы называются выполняемыми и должны быть включены в состав проекта при помощи команды контекстного меню Include (Включить), что, кстати, и происходит по умолчанию. С другой стороны, такие объекты, как индексы и таблицы, являются компонентами невыполняемыми, и если их включить в приложение, то они будут доступны только для чтения.
Поэтому для таблиц необходимо использовать команду Exclude (Исключить) из того же контекстного меню.
Построение исполняемого файла
Для того чтобы сделать исполняемый файл с расширением ехе, необходимо выбрать опцию Build Executable (Построить исполняемый файл) в диалоговом окне Build Options (Опции построения), которое вызывается при нажатии кнопки Build (Построить) в окне диспетчера проекта.
В данном окне имеется две группы переключателей: Action (Действие) и Options (Опции), их назначение описано далее.
Пункты группы Action (Действие):
• Rebuild Project (Перестроить проект) — проверяет наличие необходимых файлов и собирает проект;
• Build Application (Построить приложение) — создает исполняемое приложение с расширением арр. Работает в среде Visual FoxPro;
• Build Executable (Построить исполняемый файл) — создает исполняемое приложение с расширением ехе. Работает как в среде Visual FoxPro, так и вне ее (при наличии соответствующих библиотек);
• Build COM DLL (Построить COM DLL) — создает динамическую библиотеку с расширением dll.
Пункты группы Options (Опции):
• Recompile All Files (Обновлять все файлы) — по умолчанию обновляются только те компоненты, которые были изменены после последнего построения. А при установке данного флажка будут обновлены все файлы, входящие в проект;
• Display Errors (Показывать ошибки) — если в процессе построения приложения возникнут ошибки, то они будут отображены в отдельном окне;
• Run After Build (Запускать после построения) — если тебе не терпится запустить свое приложение сразу после построения, смело отмечай данный флажок;
• Regenerate Component IDs (Заново генерировать идентификаторы Automation-серверов) — применяется в случае, если необходимо установить и регистрировать содержащиеся в проекте Automation-серверы.
Еще в данном диалоговом окне имеется кнопка Version (Версия), при нажатии которой можно указать версию продукта, а также некоторые дополнительные параметры (внутреннее имя и т. д.).
DO FORM MAIN READ EVENTS
В диалоговом окне Build Options (Опции построения) расположены флажки,позволяющие задать параметры создаваемого проекта:
- Recompile All Files (Обновлять все файлы) — устанавливается для обновления всех компонентов проекта. По умолчанию обновляются только текомпоненты проекта, которые были изменены после предыдущего построения;
- Display Errors (Показывать ошибки) — при установке флажка после завершения построения проекта на экране появляется диалоговое окно(рис. 13.8), сообщающее об ошибках, встретившихся в процессе построения. Если флажок не установлен, ошибки построения можно просмотреть, выполнив команду Errors (Ошибки) из меню Project (Проект);
- Run After Build (Запустить после построения) — флажок устанавливается втом случае, если необходимо запустить приложение сразу после создания;
- Regenerate Component IDs (Перестроить идентификаторы Automation-серверов) — флажок устанавливается в том случае, если необходимо установить и регистрировать Automation-серверы, содержащиеся в проекте.
Кнопка Version (Версия) открывает одноименное диалоговое окно, в котором можно указать информацию о номере и типе версии приложения.
Флажок Regenerate Component IDs (Перестроить идентификаторы Automation-серверов) доступен только при установленной опции Win32 executable/COMserver (Исполняемый файл), Single-threaded COM server (ОднопоточныйСОМ-сервер) Multi-threaded COM server (Многопоточный СОМ-сервер).
Рис. 13.8. Диалоговое окно, сообщающее об ошибках,возникших при построении приложения
Для построения проекта выберите опцию Rebuild Project (Перестроить проект) и нажмите кнопку ОК. В появившемся запросе о необходимости сохранения проекта выберите значение Yes (Да).
Если в процессе построения проекта диспетчер проектов обнаружит компонент, не описанный в проекте, на экране появится диалоговое окно LocateFile (Определение файла), содержащее имя ненайденного файла.Для поиска компонента нажмите кнопку Locate (Определить) и найдите надиске необходимый файл. Вы можете проигнорировать данную ошибку.В этом случае нажмите кнопку Ignore (Игнорировать).
Список всех обнаруженных ошибок сохраняется в файле, имя которого совпадает с именем файла проекта и имеет расширение ERR.
Когда все требуемые компоненты включены в проект, вы можете создать исполняемый файл, установив в диалоговом окне Build Options (Опции построения) опции Application (Приложение) или Win32 executable/COM server (exe)(Исполняемый файл). Для создания файла с расширением АРР, который может запускаться на выполнение из программы Visual FoxPro, необходимо использовать опцию Application (Приложение). В том случае, если вы хотитесоздать файл с расширением ЕХЕ, который может запускаться автономно, воспользуйтесь опцией Win32 executable/COM server (exe) (Исполняемый файл).
После создания приложения с установленной опцией Build Options опцииApplication (Приложение) или Win32 executable/COM server (exe) (Исполняемый файл) вы можете запустить его, используя команду DO, введенную вокне Command Visual FoxPro или командой Do (Выполнить) из менюProgram (Программа). При выполнении этой команды открывается диалоговое окно Do (Выполнить). Откройте в нем нужную папку, в списке файловвыберите созданный вами файл проекта, имеющий расширение АРР, и нажмите кнопку Do (Выполнить).
Создание самостоятельного .EXE
Подскажите плиз как можно создать самостоятельны .exe файл в Microsoft Visual Studio 2008. Проект.
Создание самостоятельного приложения, работающего без среды Matlab
Здравствуйте. Необходимо создать приложение, работающее вне среды MatLab. Чтобы запустил на любом.
Запуск самостоятельного исполняемого файла, Visual C++ и OpenGL
У меня программа запускается только из C++, а самостоятельно экзешник не запускается. Что надо.
Создание exe-файла
что нужно указать в опциях проекта, чтобы прикомпилить vcl60?
А какая версия VFP?
И, если я не ошибаюсь, потребуется наличие определённых библиотек (.DLL). Без них работать не будет.
Добавлено через 1 минуту
Покажите скриншот ошибки. (ну и ещё можно выложить свой EXE файл) какие именно длл и где их скачать?
ошибка звучит "Visual FoxPro cannot start. Could not load resources"
у меня было подозрение что я может как-то не так скомпилировала и этот ехе-файл не "самодостаточный" и потому не хочет работать на компе на котором нет Visual FoxPro
А вообще, делать отдельные EXE-шники для VFP - дело весьма неблагодарное.
спасибо. но это действительно не вариант. надо было написать по-быстрому небольшую прожку а основные команды фокса я знаю без памяти на память ). оказалось там 64-хбитная машина. обычный фокс не подошнл. переделала под вижуал а он оказывается с прибабахами. прийдется выкручиваться по другому. обидно.может так навскидку подскажете чем попроще проанализировать строки и почистить текстовый файл от разного мусора? может так навскидку подскажете чем попроще проанализировать строки и почистить текстовый файл от разного мусора?
p.s. Если у Вас уже есть доступ к личным сообщаниям, то напишите мне в личку, что у Вас за задача, что за мусор чистите.
Добавлено через 1 час 51 минуту
Читайте также: