Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/259: Рейтинг темы: голосов - 259, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 16.10.2010
Сообщений: 12

Запуск внешнего приложения

02.02.2011, 20:17. Показов 51322. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть основная программа, в папке с ней лежит другая программа. из первой программы нужно запустить exe-шник второй программы. подскажите, как это сделать?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.02.2011, 20:17
Ответы с готовыми решениями:

Запуск внешнего приложения
Скажите, как можно запустить внешнее приложение? Долго гуглил, информации - море. Читал и пробовал разные примеры, но ничего из...

Запуск внешнего приложения по нажатию на кнопку
подскажите пожалуйста функцию, так чтобы например кнопку тыкнул и какая-то програма начала работать

Где в XE5 можно настроить запуск внешнего приложения перед компиляцией проекта?
subj Есть исходник, который перед сборкой должен пропускаться черед внешний препроцессор. Никак не могу найти, где это...

13
 Аватар для n00b!!!
11 / 11 / 1
Регистрация: 27.12.2010
Сообщений: 39
02.02.2011, 20:31
посмотри тут,может поможет http://www.cyberguru.ru/cpp-so... rugoj.html
0
Now I Matrix
137 / 134 / 28
Регистрация: 01.03.2010
Сообщений: 223
02.02.2011, 20:32
Загуглиться поглубже религия не позволяет?
Способов много
1 из них:
C++
1
2
AnsiString path="путь к нужной программе.exe";
ShellExecute(0,"open",path.c_str(),"-параментры",0,SW_SHOW); //запускаем
вместо SW_SHOW можно SW_NORMAL, SW_HIDE, SW_RESTORE ... и.т.д
1
 Аватар для Vlad_IT
1452 / 360 / 61
Регистрация: 03.04.2010
Сообщений: 2,096
03.02.2011, 02:43
Вот
C++
1
ShellExecute(0,"open","прога.exe",NULL,0,SW_RESTORE);
0
 Аватар для QVO
652 / 462 / 80
Регистрация: 26.10.2010
Сообщений: 1,263
Записей в блоге: 4
04.02.2011, 01:51
Легче всего использовать WinExec.

C++
1
WinExec("C:\Project1.exe", SW_SHOW)
UINT WinExec(

LPCSTR lpCmdLine, // Адрес программы
UINT uCmdShow // Стиль
);
SW_HIDE Окно в скрытом режиме.

SW_MAXIMIZE Окно максимального размера

SW_MINIMIZE Окно находится в свернутом виде, активируется следующее верхнее окно в Z последовательности.

SW_RESTORE Активирует и показывает окно. Если окно свернуто или развернуто, Windows восстанавливает его

к первоначальному размеру и позиции. Приложение должно определить этот флаг при восстановлении свернутого окна.

SW_SHOW Активирует окно и выводит его в текущих размерах и позиции.

SW_SHOWMAXIMIZED Активирует и показывает окно в развернутом виде.

SW_SHOWMINIMIZED Активирует и показывает окно в свернутом виде.

SW_SHOWMINNOACTIVE Отображает окно в свернутом виде. Активное окно остается активным.

SW_SHOWNA Отображает окно в текущем состоянии. Активное окно остается активным.

SW_SHOWNORMAL Активирует и показывает окно. Если окно свернуто или развернуто,

Windows восстанавливает его к первоначальному размеру и позиции.
3
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
04.02.2011, 02:00
Цитата Сообщение от Nouko Посмотреть сообщение
Легче всего использовать WinExec.

C++
1
WinExec("C:\Project1.exe", SW_SHOW)


SW_HIDE Окно в скрытом режиме.

SW_MAXIMIZE Окно максимального размера

SW_MINIMIZE Окно находится в свернутом виде, активируется следующее верхнее окно в Z последовательности.

SW_RESTORE Активирует и показывает окно. Если окно свернуто или развернуто, Windows восстанавливает его

к первоначальному размеру и позиции. Приложение должно определить этот флаг при восстановлении свернутого окна.

SW_SHOW Активирует окно и выводит его в текущих размерах и позиции.

SW_SHOWMAXIMIZED Активирует и показывает окно в развернутом виде.

SW_SHOWMINIMIZED Активирует и показывает окно в свернутом виде.

SW_SHOWMINNOACTIVE Отображает окно в свернутом виде. Активное окно остается активным.

SW_SHOWNA Отображает окно в текущем состоянии. Активное окно остается активным.

SW_SHOWNORMAL Активирует и показывает окно. Если окно свернуто или развернуто,

Windows восстанавливает его к первоначальному размеру и позиции.
Не факт, что запуститься!!!!!!!!!!!
1
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
04.02.2011, 02:19
Цитата Сообщение от Nouko Посмотреть сообщение
Легче всего использовать WinExec.
- в таком виде сразу получите ошибку .
Ощутите разницу :
C++
1
2
3
AnsiString filename = "c:\Project.exe";
if (FileExists(filename)) {WinExec(filename.c_str(), SW_SHOW);}
else {ShowMessage("File не Exists");}
Но пример с флагами хороший в общем-то .
0
 Аватар для Vlad_IT
1452 / 360 / 61
Регистрация: 03.04.2010
Сообщений: 2,096
04.02.2011, 12:14
Я где-то слышал что у функции WinExec есть много подводных камней нежели у ShellExecute. Может я не прав. Но все же лучше использовать ShellExecute. Она все же новее чем WinExec.
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
04.02.2011, 15:46
Ага, но в данном случае ошибка здесь :
C++
1
2
// AnsiString filename = "c:\Project.exe";
AnsiString filename = "c:\\Project.exe";
0
0 / 0 / 0
Регистрация: 01.03.2011
Сообщений: 16
01.03.2011, 14:01
Ну вот и подскажите, как мне реализовать через один батон, открытие файла *.docx , если путь к файлу лежит в базе даных, и пользователь сам выбирает нужный файл!!!
Вся моя проблема в етом
ShellExecute(0, "open", "c:\MyProject\Pasport\Doc1.docx", NULL, NULL, SW_SHOWNORMAL);
ShellExecute(0, "open", "c:\\MyProject\\Pasport\\Doc1.docx", NULL, NULL, SW_SHOWNORMAL);
Можно ли как-то обойтись одним слежем???
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
01.03.2011, 14:12
Цитата Сообщение от SS-18 Посмотреть сообщение
Можно ли как-то обойтись одним слежем???
- обойтись нельзя, можно добавить:
C++
1
2
3
4
AnsiString path = "folder\folder\folder\my.exe";
path = StringReplace(path, "\", "\\", TReplaceFlags() << rfReplaceAll);
// или так, не помню что там кого будет экранировать
path = StringReplace(path, "\\", "\\\\", TReplaceFlags() << rfReplaceAll);
1
0 / 0 / 0
Регистрация: 01.03.2011
Сообщений: 16
01.03.2011, 14:22
Цитата Сообщение от LK Посмотреть сообщение
- обойтись нельзя, можно добавить:
C++
1
2
3
4
AnsiString path = "folder\folder\folder\my.exe";
path = StringReplace(path, "\", "\\", TReplaceFlags() << rfReplaceAll);
// или так, не помню что там кого будет экранировать
path = StringReplace(path, "\\", "\\\\", TReplaceFlags() << rfReplaceAll);
2-й вариант!!! То что нада!!! Всё гуд!!! Спс!!!
0
7 / 7 / 0
Регистрация: 12.11.2010
Сообщений: 55
01.03.2011, 21:57
Я вместо SS-18 сказал спасибо!
1
0 / 0 / 1
Регистрация: 23.06.2017
Сообщений: 13
23.06.2017, 19:01
ничё не пашет(
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.06.2017, 19:01
Помогаю со студенческими работами здесь

Извлечение данных из внешнего приложения
как в мою программу можно копировать данные из внешней? значение нужно извлечь из statusbar panel в memo допустим

Запуск внешнего приложения
Мне нужно написать программу, которая запускает exe-файл расчетной проги, а потом отслеживает момент, когда эта прога заканчивает работу....

Запуск внешнего приложения
Не знал куда писать, поэтому пишу сюда. Мне нужно чтоб по нажатия кнопки на сайте, запускалось приложение на компьютере пользователя с...

Запуск внешнего приложения
Как можно запустить внешнее консольное приложение и передать туда параметры программными методами. Например я хочу чтобы по нажатию...

Запуск внешнего приложения из QT
Знаю, тема заежженаая..... прочитал уже несколько форумов - нифига не получается... Помогите, кто сможет void...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru