powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Exe-шники
29 сообщений из 29, показаны все 2 страниц
Exe-шники
    #32208514
IgorProgrammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно ли запустить Exe-шник и потом из вне(другой Exe-шник) вызывать его проги??? Exe-шники Фоксовские...

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

Мне надо также организовать...
что б OleExcel - был мой екзешник
а My_Macros - моя прога
...
Рейтинг: 0 / 0
Exe-шники
    #32208854
Crip
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну тебе же писали... com dll или com exe ...
...
Рейтинг: 0 / 0
Exe-шники
    #32209020
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
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
Exe-шники
    #32209732
IgorProgrammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
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
Exe-шники
    #32209755
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2IgorProgrammer

Может не прописалось автоматом, попрубуй в ручную через regsvr32.exe.
...
Рейтинг: 0 / 0
Exe-шники
    #32209785
IgorProgrammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
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
Exe-шники
    #32209812
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2IgorProgrammer

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

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

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

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

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

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

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

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

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

Пришло...

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

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


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

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

Если можно, то с примерчиком...
...
Рейтинг: 0 / 0
Exe-шники
    #32210069
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2IgorProgrammer

Можно это будет моим домашним заданием?
...
Рейтинг: 0 / 0
Exe-шники
    #32210103
IgorProgrammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NNN:

Это было бы смешно... если не было б так грустно...

Мне просто завтра на выставку финтарить... А там надо взаимодействие этих Екзешников показать... Так как оно сейчас работает... Ховайтесь люды...

Мне и так прейдется вместо девушки сегодня с ноутбуком спать...
Если вообще спать прийдется...

Плиз ХЕЛП(КРИК ДУШИ...{:-)})...
...
Рейтинг: 0 / 0
Exe-шники
    #32210316
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Exe-шники
    #32210318
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2IgorProgrammer

> У меня в этом Екзешнике сидит форма с Компонентой ОСХ...
Как мне ее в класс запихнуть(Я с классами толком, то и не работал).


Открываешь форму на редактирование, потом из меню File -> Save as Class. Потом в свойствах класса ставишь галочку на OLEPUBLIC

> Чтоб можно было ее высветить...

У меня получилось высветить если форма as Top Level Form, иначе надо в Load или Init выставить _screen.visible=.T., но тогда еще одно фокса вылазит.

> Можно ли в классе вызывать проги екзешника???

Да, вроде все работает. В принципе все верно, это же out-of-process сервер.

> И как это правильно делать...
> ИЛИ надо все проги переганять в процедуры класса???


Я бы переписал, но смотри сам. Остальные вопросы не совсем понял.

> Если можно, то с примерчиком...

Да вот в принципе все тут:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
**************************************************
* -- Class:        foxole (e:\foxole\foxole.vcx)
 
* -- ParentClass:  form
 
* -- BaseClass:    form
 
* -- Time Stamp:   07/16/03 10:11:06 PM
 
*
DEFINE CLASS foxole AS form OLEPUBLIC
ShowWindow =  2 
DoCreate = .T.
Caption =  "Form1" 
Name =  "foxole" 
PROCEDURE Load
 _screen.Visible= .T. 
ENDPROC
PROCEDURE Click
 =test()
ENDPROC
ENDDEFINE
*
* -- EndDefine: foxole
 
**************************************************

*!*test.prg
=MESSAGEBOX(DATETIME())

*!* Вызов после компиляции
x=NEWOBJECT('foxole.foxole')
x.Visible= .T.


> Это было бы смешно... если не было б так грустно...

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


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