Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.11.2010, 17:02   #1
Max_0
Пользователь
 
Регистрация: 08.11.2010
Сообщений: 11
По умолчанию Запуск приложений без формы посредством WinEXEC.

Всем привет! У меня возник вопрос по поводу WinExec. Как известно посредством этой команды можно запустить некоторое приложение из совсем другого приложения. Например,
WinExec(PChar(C:\primer.exe’),SW_SH OW);
запустит программу primer.exe. Но дело в том что если в составе запускаемой программы (т.е. primer.exe) не имеется формы, то оно не запускается. Пожалуйста помогите.
Как я могу запустить посредством WinExec программку которая не имеет форму? (обе программы- запускающая и запускаемая написаны на Делфи) . Всем заранее огромное СПАСИБО.
Max_0 вне форума Ответить с цитированием
Старый 09.11.2010, 17:17   #2
ybn
Заблокирован
 
Регистрация: 17.09.2010
Сообщений: 23
По умолчанию

А что значит нет формы? Программа написана для ДОС или просто что - то делает, а результат не выводит на экран?
И еще у тебя ошибка, должно быть так:
WinExec(PChar('C:\primer.exe’),SW_SHOW);

Последний раз редактировалось ybn; 09.11.2010 в 17:27.
ybn вне форума Ответить с цитированием
Старый 09.11.2010, 17:24   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Как я могу запустить посредством WinExec программку которая не имеет форму?
Если ты хочешь видеть на экране программу, не создающую окно (форму) в виде окна то никак.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.11.2010, 17:34   #4
ybn
Заблокирован
 
Регистрация: 17.09.2010
Сообщений: 23
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Если ты хочешь видеть на экране программу, не создающую окно (форму) в виде окна то никак.
Ну почему же? Пусть после запуска программы ищет ее в оперативке, может найдет эти ассемблированные символы и полюбуется на них.
А если серьезно, то после запуска нажми CTRL+Shift+Esc, и посмотри есть ли твой Primer.exe в памяти (конечно, если твой Primer.exe не очень шустрый), а потом можно судить, была ли она запущена или нет.
ybn вне форума Ответить с цитированием
Старый 10.11.2010, 14:26   #5
Max_0
Пользователь
 
Регистрация: 08.11.2010
Сообщений: 11
По умолчанию

ybn (первое сообщение)

Программа не написана для ДОС. Она работает под Виндоуз как и все остальные приложения. Она не выводит результаты на экран. Программа написана тоже на Делфи, просто в ней нет формы (Form1). А насчет ошибки, да ты прав)) просто ошибся, когда в Ворде набирал.

Stilet

Ну, то, что с помощью WinExec этого не сделать я уяснил. Но может кто-нибудь знает, как можно выполнит такую задачу при помощи какой либо другой, подобной команды?

ybn (второе сообщение)

Я именно таким образом и проверяю, запушено ли Primer.exe или нет. Primer.exe запускается в ручную и работает нормально. Но вот как мне ее запустить из другого приложения (тоже написанного на Делфи)?
Max_0 вне форума Ответить с цитированием
Старый 10.11.2010, 14:32   #6
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

а как вы вообще проверяете запустился или нет?
через диспетчер?
а вы уверены что ваша программа не успевает закрытся пока вы её ищете?
вообще есть GetLastError+функции возвращают показатели ошибок=1
2)используйте ShellExecute или CreateProcess
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 11.11.2010, 08:40   #7
Max_0
Пользователь
 
Регистрация: 08.11.2010
Сообщений: 11
По умолчанию

Пепел Феникса

Да, именно я проверяю запущено программа или нет Диспетчером Задач (вкладка Процессы). Я уверен что программа не успевает закрываться, поскольку при обычном ее запуске (вручную) она видна в Диспетчере Задач. Я попробую с ShellExecute и CreateProcess . Может получиться. Спасибо.
Max_0 вне форума Ответить с цитированием
Старый 11.11.2010, 09:26   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
ybn
Веселый ты человек )
Цитата:
Она не выводит результаты на экран. Программа написана тоже на Делфи, просто в ней нет формы (Form1).
Если программа ничего никуда не выводит то забудь - никакими командами ты от нее результата не добьешся. Даже АртМани тебе не поможет, ибо ты не знаешь что и где искать.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.11.2010, 12:54   #9
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

Чет я не догнал. Почему нельзя запустить?
Вот мой пример: Программа без окна.zip
Что я не так делаю?
Sibedir вне форума Ответить с цитированием
Старый 11.11.2010, 13:18   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Что я не так делаю?
Видимо автор имел ввиду под словом "не запускается" - "не появляется на экране ни в форме и как консоль"
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запуск ограниченного числа приложений Obsever0 Общие вопросы Delphi 2 26.07.2010 17:11
Запуск приложений из своей программы Vladya Помощь студентам 2 14.04.2010 10:59
Запуск приложений в C++ HWork Общие вопросы C/C++ 1 27.07.2009 13:59
Запуск внешних приложений Alex_09 Общие вопросы Delphi 4 10.04.2009 18:24
запуск dos приложений shurik_7866 Общие вопросы Delphi 3 25.01.2008 23:23