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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.09.2008, 11:17   #1
sashaslam
Пользователь
 
Регистрация: 07.07.2008
Сообщений: 24
По умолчанию Запуск программы из своего приложения.

Такая проблема: В приложении нужно при нажатии кнопки чтоб запустилось другое приложение, указывая путь к приложению (например - "C:\install")? Как это сделать, напишите пожалуста или скиньте ссылку...
sashaslam вне форума Ответить с цитированием
Старый 18.09.2008, 11:40   #2
Kashp
Форумчанин
 
Регистрация: 05.08.2007
Сообщений: 225
По умолчанию

Цитата:
Сообщение от sashaslam Посмотреть сообщение
Такая проблема: В приложении нужно при нажатии кнопки чтоб запустилось другое приложение, указывая путь к приложению (например - "C:\install")? Как это сделать, напишите пожалуста или скиньте ссылку...
Поиск в форуме по ключевым слова: winexec и shellexecute
примеры:
Код:
winexec('путь', sw_show);
//или
ShellExecute (Form1.Handle, nil, 'путь', nil, nil, SW_RESTORE); //в uses подключи ShellApi
Kashp вне форума Ответить с цитированием
Старый 18.09.2008, 12:45   #3
sashaslam
Пользователь
 
Регистрация: 07.07.2008
Сообщений: 24
По умолчанию

Использую ShellExecute (Form1.Handle, nil, 'C:\install\prog', nil, nil, SW_RESTORE) -все нормально работает. Но возникла такая проблема:
нужно, используя данный каталог, вместо prog запустить например prog11, и это сделать в коде программы.
Я пытался с 'C:\install\prog' забрать prog и добавить prog11, но что то не выходит..
sashaslam вне форума Ответить с цитированием
Старый 18.09.2008, 14:06   #4
Kashp
Форумчанин
 
Регистрация: 05.08.2007
Сообщений: 225
По умолчанию

Цитата:
Сообщение от sashaslam Посмотреть сообщение
Использую ShellExecute (Form1.Handle, nil, 'C:\install\prog', nil, nil, SW_RESTORE) -все нормально работает. Но возникла такая проблема:
нужно, используя данный каталог, вместо prog запустить например prog11, и это сделать в коде программы.
Я пытался с 'C:\install\prog' забрать prog и добавить prog11, но что то не выходит..
хмм... что-то я не понял, что ты хочешь сделать, опиши пожалуйста как можно подробнее
Kashp вне форума Ответить с цитированием
Старый 18.09.2008, 15:26   #5
sashaslam
Пользователь
 
Регистрация: 07.07.2008
Сообщений: 24
По умолчанию

программа работает так:
пользователь выбирает базу данных(открывается диалоговое окно и т д), с которой он хочет работать, потом он например хочет пересмотреть другую БД, и заходить в другую папку, выбирае другую БД.
Каждаю БД розмещена в отдельной папке, причом в этих же папках розмещены разные запускные файлы, на другую программу.
Мне нужно чтоб при выборе первой БД, пользователь мог в моей программе открыть тот файл, который лежит с ней в одной папке, со второй то же само, и т. д.
Пример:
При выборе БД opendialog1.FileName имеет значение C:\derzh\база.mdb . Нужно убрать база.mdb, а добавить prog
sashaslam вне форума Ответить с цитированием
Старый 18.09.2008, 15:27   #6
sashaslam
Пользователь
 
Регистрация: 07.07.2008
Сообщений: 24
По умолчанию

Как это сделать в модуле программы??
sashaslam вне форума Ответить с цитированием
Старый 18.09.2008, 16:05   #7
Noor
Участник клуба
 
Аватар для Noor
 
Регистрация: 01.11.2006
Сообщений: 1,051
По умолчанию

ExtractFilePath(OpenDialog1.FileNam e)+'myprog.exe'
Noor вне форума Ответить с цитированием
Старый 18.09.2008, 16:38   #8
sashaslam
Пользователь
 
Регистрация: 07.07.2008
Сообщений: 24
По умолчанию

сделал так, и выдает ошибку несовместимости типов "String" и "PAnsiChar"
sashaslam вне форума Ответить с цитированием
Старый 18.09.2008, 16:52   #9
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

1. Не там скобка стоит
ExtractFilePath(OpenDialog1.FileNam e+'\myprog.exe');
2. Зачем что-то убирать и добавлять?
Пиши что-то типа:
DB.Connected:=False; {... или какие там свойства, я же не знаю...}
DB.DatabaseName:= OpenDialog1.FileName;
DB.Connected:=True;
MyTable.Open;
.... Это если файл нужно выбрать.
А если нужно указать каталог с базой, то нужно использовать не OpenDialog а какой-нибудь компонент для выбора каталога.

Последний раз редактировалось _SERGEYX_; 18.09.2008 в 16:55.
_SERGEYX_ вне форума Ответить с цитированием
Старый 30.01.2009, 19:51   #10
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

А можно ли, чтоб при запуске exe-файла программа замирала (ну или останавливалась)..?
Как форма при запуске модального окна...
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запуск приложения с параметрами !!! badfilin Общие вопросы C/C++ 6 27.05.2010 23:29
Запуск приложения Артэс Общие вопросы C/C++ 2 07.06.2008 17:38
Запуск своего модуля из чужой программы Volkogriz Общие вопросы Delphi 7 16.10.2007 05:19
Как сделать Панель задач для MDI окошек своего приложения? Angel86rus Общие вопросы Delphi 1 04.10.2007 15:15
Запуск приложения из DLL Hollander Общие вопросы Delphi 2 17.05.2007 20:04