Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Общие вопросы по .NET и C# > Запуск процессов с заданными параметрами |
Автор: Legolas 13.11.2007, 17:20 |
Если такая возможность в C#, как запуск сторонней программы (например, WinMediaPlayer) с определнными начальными параметрами? Я имею ввиду запуск того же плеера с определенным фильмом, с определенной минуты, с особыми настройками - такими как настройками звука (сила звучания) или формат экрана, или, не знаю, скорость воспроизведения. |
Автор: marcusmae 13.11.2007, 17:27 |
Legolas, да, есть. Метод http://msdn2.microsoft.com/en-us/library/system.diagnostics.process.start(VS.71).aspx класса Process (пространство имён System.Diagnostics) допускает запуск процесса с параметрами. Только эти параметры - аргументы коммандной строки. Не уверен, что MediaPlayer поддерживает аргументы коммандной строки. В MSDN в качестве примера рассматривается запуск браузера с параметром - url. |
Автор: Legolas 13.11.2007, 18:05 |
это понятно, если написать так Process.Start("http://forum.vingrad.ru/forum"); то он автомат загрузит IE с данной страничкой. А как это оформляется (аргументы командной строки)? приведи пример. |
Автор: Legolas 13.11.2007, 18:34 | ||||||
нет, не забыл, по умолчанию такие страницы открываются IE. А где можно поподробнее узнать о консольных опциях-параметрах? Добавлено через 3 минуты и 6 секунд нет, ошибся - запустится не IE, а браузер по умолчанию. Добавлено через 7 минут и 17 секунд кстати, имя процесса указывать совсем не обязательно, тк все файлы открываюся "программами по умолчанию". К примеру можно запустить фильм вот так:
|
Автор: marcusmae 13.11.2007, 19:01 | ||||
Круто. Именно из-за этого я бы указал ![]()
http://support.microsoft.com/KB/241422 http://www.tech-recipes.com/windows_tips1389.html http://www.google.com/search?client=opera&rls=ru&q=Windows+Media+Player+command+line+options&sourceid=opera&ie=utf-8&oe=utf-8 |
Автор: Legolas 13.11.2007, 19:36 |
спасибо, но я там нигде не нашел параметров для изменения звука и других - только открытие-закрытие файлов и размер экрана. |
Автор: marcusmae 13.11.2007, 20:57 |
ещё плейлисты и медиа-устройства Остальное через аргументы недоступно. Громкость и эквалайзеры следует искать либо в .ini-файле, либо в реестре. Там забиваются значения по умолчанию - их можно было бы изменить. А вот начать проигрывание с определённой позиции так не выйдёт. Есть ещё одна идея. Вам знакомо COM-взаимодействие? Многие программы его поддерживают. = Попробуйте открыть References проекта на вкладке COM. В зависимости от версии ОС и WMP там должны быть объекты типа Windows Media Player Launcher (и другие). Присоедините какой-нибудь и дважды кликните по названию - откроется Object Browser с содержимым, по которому можно посмотреть, что может пригодиться. Оттуда, возможно, будет доступно больше настроек. Но это уже имеет мало общего с названием темы ![]() |
Автор: Legolas 14.11.2007, 00:25 |
спасибо за совет - сейчас попробую. Добавлено через 5 минут и 8 секунд похоже то, что нужно! спасиб огромный - щас буду разбираться... |
Автор: marcusmae 14.11.2007, 00:37 |
Не за что. Вот ссылка по теме : http://msdn2.microsoft.com/en-us/library/bb249583.aspx Возможно, понадобится http://msdn2.microsoft.com/en-us/library/bb262657.aspx, хотя что-то можно сделать и без него. |
Автор: Legolas 14.11.2007, 01:02 |
marcusmae, твои ссылки - золото! ![]() ![]() ![]() |
Автор: kven 10.12.2007, 01:19 |
Эта команда запускает только зарегестрированные программы, или абсолютно любую из указанной дирректории и с параметрами? Мне необходимо запустить просто ехе файл, должно работать? |
Автор: sllh 10.12.2007, 01:25 |
Абсолютно любую -- есть же MSDN, можно http://msdn2.microsoft.com/en-us/library/system.diagnostics.process.start.aspx ;) |
Автор: kven 10.12.2007, 03:50 |
В том то и дело, мсдн читаю. Запускает мне нужный файл, как доолнительные параметры ввожу то что мне нужно, но то что работает только при выхове из командной строки, внутри программы(она досовская) можно вводить данные только они не вводятся. а когда передаю как второй параметр строковой или как процессинфо вроде как работает но для внутреннего вызова не работают мои параметры. Может скоро разберусь, но если знаеш подскажи как заставить параметры принимать как будто они были посланы из командной строки |