Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как поднять окно "Открыть с помощью" / 12 сообщений из 12, страница 1 из 1
07.02.2003, 15:17
    #32103128
Alex Alexeev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поднять окно "Открыть с помощью"
Как программно вызвать окно "Открыть с помощью" (ну как бы из контестного меню файла)
...
Рейтинг: 0 / 0
07.02.2003, 15:31
    #32103140
Jozo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поднять окно "Открыть с помощью"
см
http://mdelphi.far.ru/docs/view/commands.htm
...
Рейтинг: 0 / 0
07.02.2003, 15:47
    #32103151
Dim Grishin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поднять окно "Открыть с помощью"
под Win 2000 большенство функций не работает...
а где можно взять описание для win 2000?
...
Рейтинг: 0 / 0
08.02.2003, 08:33
    #32103335
Alex Alexeev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поднять окно "Открыть с помощью"
Jozo
БОЛЬШОЕ СПАСИБО!
...
Рейтинг: 0 / 0
11.02.2003, 09:30
    #32104320
Alex Alexeev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поднять окно "Открыть с помощью"
Спасибо Jozo за ссылку!

1. Определил с помощью каких приложений открывался файл с заданным расширением (хранится в
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.xml\OpenWithList
для файлов с расширением .xml, например)
И нашел что открывался такой файл приложением EDITPLUS.EXE

2. далее сомтрю в
HKEY_CLASSES_ROOT\Applications\EDITPLUS.EXE
и вижу там
HKEY_CLASSES_ROOT\Applications\EDITPLUS.EXE\shell\open\command="c:\editplus\editplus.exe %1"

А теперь, собственно, вопрос:
как с помощью этой информации открыть документ С:\Example.xml с помощью приложения EDITPLUS.EXE?

Надеюсь на помощь ...
...
Рейтинг: 0 / 0
11.02.2003, 09:32
    #32104321
Белов Владимир
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поднять окно "Открыть с помощью"
Прочитать значение переменнной из реестра, и запустить процесс через CreateProcess()
...
Рейтинг: 0 / 0
11.02.2003, 09:37
    #32104325
Jozo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поднять окно "Открыть с помощью"
если не ошибаюсь можно и
if winexec(Pchar('EDITPLUS.EXE С:\Example.xml'), sw_Show);
тока лучше указывать с порлным путем до него
...
Рейтинг: 0 / 0
11.02.2003, 10:10
    #32104349
Alex Alexeev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поднять окно "Открыть с помощью"
WINEXEC, ShellExecute, CreateProccess - это все конечно хорошо
но в реестре-то записано "c:\editplus\editplus.exe %1"
т.е. ShelLExecute(Handle, 'open', 'c:\editplus\editplus.exe %', 'c:\Example.xml', '', SW_SHOWNORMAL) - не прокатит (проверено)
равно как и
winexec(Pchar('EDITPLUS.EXE С:\Example.xml'), sw_Show), так как путь к EDITPLUS.EXE системе неизвестен
...
Рейтинг: 0 / 0
11.02.2003, 10:18
    #32104353
Jozo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поднять окно "Открыть с помощью"
ну дык и напиши
winexec(Pchar('трам-пам-пам\EDITPLUS.EXE С:\Example.xml')
...
Рейтинг: 0 / 0
11.02.2003, 11:58
    #32104430
Alex Alexeev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поднять окно "Открыть с помощью"
Ну то есть из вот этой фигни "c:\editplus\editplus.exe %1" вырезать :(
Это первое что мне и пришло в голову, но вот не хотелось...
...
Рейтинг: 0 / 0
27.02.2003, 09:24
    #32111863
sergasd
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поднять окно "Открыть с помощью"
Кстати о птичках!
как запустить файл с параметрами никто не знает???
Что то типа этого:
ShellExecute(Application.Handle,'open','route.exe','route -p add 192.168.3.0 mask 255.255.255.0 192.168.3.1 metric 2',nil,SW_HIDE);
Эта команда нормально отрабатывает,но результата почему то нет (не появляется маршрут).

Пришлось из батника запускать, что не очень удобно, потому что их много:
ShellExecute(Application.Handle,'open','1.bat',nil,nil,SW_HIDE);
...
Рейтинг: 0 / 0
27.02.2003, 11:17
    #32111949
Alex Alexeev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поднять окно "Открыть с помощью"
ShellExecute(Application.Handle,
'open',
'route.exe',
'route -p add 192.168.3.0 mask 255.255.255.0 192.168.3.1 metric 2',
nil,
SW_SHOWNORMAL {SW_HIDE - скрывает окно!}
);

Окно будет видно. Но по завершении работы закроется. Поэтому лучше, наверное, CreateProccess и WaitForSingleObject
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как поднять окно "Открыть с помощью" / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]