Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Exe-шники / 25 сообщений из 29, страница 1 из 2
15.07.2003, 15:26
    #32208514
IgorProgrammer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
Можно ли запустить Exe-шник и потом из вне(другой Exe-шник) вызывать его проги??? Exe-шники Фоксовские...

Причем Exe-шник может запускаться несколько раз... Мне надо различать где был запущен мной...

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

Плиз хелп...
...
Рейтинг: 0 / 0
15.07.2003, 15:42
    #32208547
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
Это типа как dll? Можешь dll и использовать для этого. Гнянь в хелпе по BUILD.
...
Рейтинг: 0 / 0
15.07.2003, 15:42
    #32208548
Crip
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
Используй APP
...
Рейтинг: 0 / 0
15.07.2003, 15:49
    #32208566
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
Точно, Crip, прав. Если с классами все в порядке, то
set classlib to MyClassLib in MyApp.app[.exe]
...
Рейтинг: 0 / 0
15.07.2003, 16:27
    #32208649
IgorProgrammer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
NNN:
Мне надо два разных Exe-шника

Crip:
А мона примерчик??? Как с Exe-шника общаться с APP-шкой(запустить прогу с параметрами...)
...
Рейтинг: 0 / 0
15.07.2003, 16:28
    #32208655
Crip
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
do Some.app with P1,P2
...
Рейтинг: 0 / 0
15.07.2003, 16:33
    #32208666
IgorProgrammer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
Crip:
Как APP запустить я знаю...

А мне надо достать прогу сидящую в APP...
...
Рейтинг: 0 / 0
15.07.2003, 16:38
    #32208673
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
Код: plaintext
DO ProgramName1 | ProcedureName [IN ProgramName2] [WITH ParameterList]

Короче, ProgramName2 может быть prg, fxp, app или exe.
...
Рейтинг: 0 / 0
15.07.2003, 16:38
    #32208674
Crip
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
Смотри пример от NNN
Тоже самое с процедурами.
...
Рейтинг: 0 / 0
15.07.2003, 16:53
    #32208715
IgorProgrammer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
NNN:

Пишу DO Prog1 in Vrem1.exe
Если Prog1 не главная прога в Екзешнике, то говорит что проседура не найдена...
Если главная, то выполняется...
У меня проги которые я должен вызывать не главные...

По-мимо этого мне надо, что б Exe-шник вызывался один раз... А проги в нем чтоб запускалась несколько раз... Причем в том Exe-шнике который я вызвал,
а не тот что был уже запущен.

ПОМОГИ ПЛИЗ...
...
Рейтинг: 0 / 0
15.07.2003, 17:03
    #32208741
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
> Если Prog1 не главная прога в Екзешнике, то говорит что проседура не найдена...

Не помню точно, но ИМХО все вызываемые процедуры действительно должны находиться в главном модуле. Я в свое время использовал методы классов, поскольку с ними проще.

> По-мимо этого мне надо, что б Exe-шник вызывался один раз... А проги в нем чтоб запускалась несколько раз...


Ну запусти из ехешника его самого и определись через параметры.
Че-то у меня голова к концу рабочего дня совсем не того. Можешь объяснить, чего ты хочешь добиться попроще и поподробнее? Мне кажется тебе нужен один ехешник и несколько com dll, но это опять классы.
...
Рейтинг: 0 / 0
15.07.2003, 17:15
    #32208775
IgorProgrammer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
NNN:
Есть два Exe-шника...

Первый производит всевожможные расчеты а второй показывает результат(в Екселе или в нашей оболочке...) или просто запускает нашу оболочку для редактирования Екселевских файлов...

Во втором екзешнике сидит прога построчного вывода в Ексель или в нашу оболочку...

Мне надо из Exe-шника запустить Exe-шник и вызывать его прогу
Do While !Eof()
Do Prog1 With "A"+field1+"T"
ENddo
...
Рейтинг: 0 / 0
15.07.2003, 17:27
    #32208787
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
Ну вызывать-то в принципе необязательно, главное чтоб первый ехешник выдел процедуру во втором. Попробуй
1. Перенести процедуру в главный модуль (или заглушку для нее)
2. Созадай класс и из его метода вызывай процедуру.

ЗЫ timeout
...
Рейтинг: 0 / 0
15.07.2003, 17:40
    #32208806
IgorProgrammer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
NNN:

Как создать такой класс (примерчик плиз)???

Мне надо что типа такого...
Я так с Екселем работаю...

OleExcel = createobject('Excel.Application')
Do While !Eof()
OleExcel.Run('My_Macros',param1,param2,param3)
Enddo
OleExcel.Release

Мне надо также организовать...
что б OleExcel - был мой екзешник
а My_Macros - моя прога
...
Рейтинг: 0 / 0
15.07.2003, 18:12
    #32208854
Crip
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
Ну тебе же писали... com dll или com exe ...
...
Рейтинг: 0 / 0
15.07.2003, 21:21
    #32209020
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
2IgorProgrammer

Пишешь что-то вроде
Код: plaintext
1.
2.
3.
4.
DEFINE CLASS MyClass AS custom OLEPUBLIC
 PROCEDURE MyProc
 ...
 ENDPROC
ENDDEFINE

Компилируешь, регистрируешь и можешь вызывать из любого приложения через
MyClass.MyProc. Подробности см. в хелпе (Creating Automation Servers). В принципе, piece of cake.
...
Рейтинг: 0 / 0
16.07.2003, 14:12
    #32209732
IgorProgrammer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
NNN:

Делаю все по хелпу (Creating Automation Servers)...

В проекте появляется мой класс...

Потом написано что б зарегить нужно просто скомпилить проект... и он автоматически добавится...(Your Automation servers are available to other applications once the servers have been added to the Windows Registry. When you build an Automation server, it's automatically registered on the build machine. You can also register your servers on other machines.)

Я так и сделал...

Пишу:

Test = CREATEOBJECT("foxole.my_application")
В ответ ошибка... Класс не найден

Может я че-то не допонял... Плиз хелп...
...
Рейтинг: 0 / 0
16.07.2003, 14:24
    #32209755
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
2IgorProgrammer

Может не прописалось автоматом, попрубуй в ручную через regsvr32.exe.
...
Рейтинг: 0 / 0
16.07.2003, 14:42
    #32209785
IgorProgrammer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
NNN:

Да пробовал уже...

В реестре собака сидит... А ошибка всеравно есть...

По поводу...
DO ProgramName1 | ProcedureName [IN ProgramName2] [WITH ParameterList]

Работает как дети в школу...

Publi my_por1, my_por2, my_por3
DO Glav_prog IN my.exe WITH 1
Если вызываю главную прогу... то потом могу вызвать любую в этом екзешнике
do my_prog1
Главное не релизить my_por1, my_por2, my_por3
А то при повторном запуске... Шишь достучишься..

Но есть один БОЛЬШОЙ недостаток...
Форма второго Екзешника лезит в Скрин первого...
У нее ShowWindow = 2 и WindowType = 1 и она видна как отдельная задача
Если в первом Екзешнике форма AlwaysOnTop = .t., то до форма второго екзешника недоступна...(полный бред)
На ON SHUTDOWN Do Exit_FoxPro

Procedure Exit_FoxPro
If _screen.formcount = 0
Quit
Endif
RETURN
Если висит форма второго Екзешнике то _screen.formcount = 1
и не выходит...

И все паблики перепутались... вообщем полная лажа...

Как Екзешник запустит не в моем скрине???...
...
Рейтинг: 0 / 0
16.07.2003, 14:55
    #32209812
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
2IgorProgrammer

Во ты, блин, влез, я такого никогда не видел. Давай я дома поэкспериментирую и отпишусь, а то у меня asp стынет :(
...
Рейтинг: 0 / 0
16.07.2003, 15:32
    #32209885
IgorProgrammer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
NNN:

Если получится... Будет просто супер...
...
Рейтинг: 0 / 0
16.07.2003, 16:19
    #32209990
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
2IgorProgrammer

Создал на vfp5 простенький ехешник с OLEPUBLIC классом, моментально достал и из фокса, и из экселя (без запуска). Ты местоположение ехе-файла не менял?

> А то при повторном запуске... Шишь достучишься..

Возможно файл захвачен капитально, об этом я не подумал.

PS Остально пока не смотрел, asp послал, но верчу диски :(
...
Рейтинг: 0 / 0
16.07.2003, 16:33
    #32210018
IgorProgrammer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
NNN:

Может 6 лиса глучит...

Можешь прислать екзешник (или проект) на ignoring@ukrpost.net
...
Рейтинг: 0 / 0
16.07.2003, 16:51
    #32210046
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
2IgorProgrammer

Ушло.
...
Рейтинг: 0 / 0
16.07.2003, 17:05
    #32210064
IgorProgrammer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Exe-шники
NNN:

Пришло...

Но я уже разобрался...

Ты будешь смеяться, но я допустил одну ошибку...
В названии класса сидела русская буква...(как банально)???


У меня в этом Екзешнике сидит форма с Компонентой ОСХ...
Как мне ее в класс запихнуть(Я с классами толком, то и не работал).
Ч тоб можно было ее высветить...
Можно ли в классе вызывать проги екзешника???
И как это правильно делать...
ИЛИ надо все проги переганять в процедуры класса???

Надо ли присваевать паблику эту форму... что б проги екзешника или проседуры класса могли с ней общаться.
И есть ли какая разница в общении (проседура класса - форма) и (прога екзешника - форма)

Если можно, то с примерчиком...
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Exe-шники / 25 сообщений из 29, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]