Самый простой способ открыть файл с помощью приложения по умолчанию:
System.Diagnostics.Process.Start(@"c:\myPDF.pdf");
Однако я хотел бы знать, существует ли способ установить параметры для приложения по умолчанию, потому что я хотел бы открыть PDF-файл с определенным номером страницы.
Я знаю, как это сделать, создав новый процесс и установив параметры, но в этом случае мне нужно указать путь к приложению, и я хотел бы иметь портативное приложение, и мне не приходилось каждый раз указывать путь к приложению. Пользуюсь приложением на другом компьютере. Моя идея состоит в том, что я ожидаю, что на компьютере установлена программа для чтения PDF-файлов, и говорю только, что открывать.
Спасибо.
myProcess.StartInfo.FileName = "Acrobat.exe";
не указав полный путь к приложению?Ответы:
Если вы хотите, чтобы файл открывался в приложении по умолчанию, я имею в виду, что без указания Acrobat или Reader вы не сможете открыть файл на указанной странице.
С другой стороны, если вы согласны с указанием Acrobat или Reader, продолжайте читать:
Вы можете сделать это, не сообщая полный путь Acrobat, например:
Если вы хотите, чтобы PDF-файл открывался не в Reader, а в Acrobat, измените вторую строку следующим образом:
Вы можете запросить реестр, чтобы определить приложение по умолчанию для открытия файлов PDF, а затем соответственно определить FileName в StartInfo вашего процесса.
Следуйте этому вопросу, чтобы узнать подробности о том, как это сделать: Поиск приложения по умолчанию для открытия определенного типа файла в Windows
источник
это должно быть близко!
источник
Я преобразовал код VB в сообщении блога, связанном с xsl, на C # и немного изменил его:
РЕДАКТИРОВАТЬ - это ненадежно. См. Раздел Поиск приложения по умолчанию для открытия определенного типа файла в Windows .
источник
вы можете попробовать с
источник
Пожалуйста, добавьте настройки в свойствах проекта и используйте их таким образом, чтобы у вас были чистые и легко настраиваемые параметры, которые можно настроить по умолчанию.
Как: создать новую настройку во время разработки
Обновление: после комментариев ниже
источник