Форум: "WinAPI";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];
ВнизСделать аналогично Пуск -> Выполнить Найти похожие ветки
← →
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 вся ветка
Форум: "WinAPI";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.015 c