Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.05.21;
Скачать: CL | DM;

Вниз

Сделать аналогично Пуск -> Выполнить   Найти похожие ветки 

 
Chaser ©   (2006-02-27 16:02) [0]

Есть ли у кого компонент или исходник программы аналогичной пункту меню в Windows: "Пуск" -> "Выполнить...".

Т.е. чтобы только с помощью одной командной строки (Edit например) запускались приложения ("calc"), программы с параметрами ("notepad c:\boot.ini"), файлы в связанном с ними приложении ("test.doc" - MS Word), папки ("c:\windows") и т.п.

   ShellExecute запускает все виды файлов, но для этого используются отдельно строка программы и строка с параметрами (ShellExecute(Handle,nil,"notepad","c:\boot.ini","",SW_SHOW);).

CreateProcess не открывает файлы в связанном с ними приложении ("test.doc" - MS Word), по крайней мере у меня это не вышло сделать.
   Есть решение?


 
Eraser ©   (2006-02-27 16:23) [1]


> Chaser ©   (27.02.06 16:02)

алгоритм такой: сначала пробуешь CreateProcess"ом запустить, если не получается, то ShellExecute, если опять не получается, то сообщение об ошибке... хотя теоретически можно одним ShellExecute отбиться.


 
Crash Coredump ©   (2006-02-27 16:30) [2]

Eraser ©   (27.02.06 16:23) [1]

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


 
Eraser ©   (2006-02-27 16:45) [3]


> Crash Coredump ©   (27.02.06 16:30) [2]

и что?


 
Chaser ©   (2006-02-27 17:02) [4]


> Crash Coredump ©   (27.02.06 16:30) [2]
> Eraser ©   (27.02.06 16:23) [1]
>
> Алгоритм такой - первое слово до пробела или табуляции считается
> именем приложения, все остальное - параметры

А если в имени приложения есть пробел?


 
Eraser ©   (2006-02-27 17:05) [5]


> Chaser ©   (27.02.06 17:02) [4]

в кавычки брать название тогда.


 
Chaser ©   (2006-02-27 17:07) [6]


> Eraser ©

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


 
Nick Denry ©   (2006-02-27 17:11) [7]

поиск с конца строки до нахождения последней последовательности символов ".exe"


 
Chaser ©   (2006-02-27 17:17) [8]

А если .com, .bat и т.п.?
Слишком много условий получается, все не охватишь.


 
Crash Coredump ©   (2006-02-27 17:18) [9]


> Геморно, нужно именно на подобии "Выполнить", где все пишется
> в одну строку без кавычек


run использует поиск от последнего символа \



Страницы: 1 вся ветка

Текущий архив: 2006.05.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.032 c
4-1141169752
MotorManayk
2006-03-01 02:35
2006.05.21
Принцип работы функций


15-1145858337
Ega23
2006-04-24 09:58
2006.05.21
С Днём рождения! 22 апреля


3-1143455830
ZSergey
2006-03-27 14:37
2006.05.21
Как сделать копию записи?


2-1146475009
Максо
2006-05-01 13:16
2006.05.21
Image


2-1146499048
Получайник
2006-05-01 19:57
2006.05.21
Использование TFileRun