Как запустить мою программу и прочитать текстовый файл, нажав на файл с рабочего стола - PullRequest
0 голосов
/ 14 октября 2019

У меня есть программа, которая открывает и сохраняет файлы, но только из графического интерфейса. Я видел сообщение об этом, но ему нужно что-то другое, поэтому здесь я прошу помощи.

Я хочу иметь возможность открывать файлы с рабочего стола, чтобы данные внутри файлов загружались в программу.

Мне удалось добавить расширение файла, но когда я дважды щелкаю файл на рабочем столе, открывается совершенно другое окно (окно Activision, которое я запрограммировал).

Я использую WPF с C #, но я работаю сVB.

Может кто-нибудь сказать мне, что я делаю не так? Есть ли событие, которое обрабатывает открытие файлов?

Ответы [ 2 ]

0 голосов
/ 16 октября 2019

Чего не хватает, так это того, что вы загружаете данные из файла. Когда вы открываете программу, дважды щелкнув соответствующий файл, Windows передает путь к этому файлу в качестве параметра.

В WPF эти параметры доступны в событии Application.StartUp. StartupEventArgs.Args - строковый массив, содержащий все переданные параметры. При открытии программы из файла e.Args[0] должно быть полное имя файла, который был открыт.

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

Вы можете изменить Application.StartupUri, чтобы выбрать, какое окно открывается первым.

Кроме того, вы также можете удалить StartupUri из файла App.xaml и создатьэкземпляр вашего окна самостоятельно (используя обычный метод Window.ShowDialog). Это дает вам преимущество в том, что вы можете получить доступ к окну во время события Startup и изменять любые свойства в зависимости от файла / параметра.

0 голосов
/ 15 октября 2019

Это не то, что вы делаете в своей программе. Вы должны указать Windows запускать вашу программу, когда кто-то дважды щелкает файл.

  1. Откройте панель управления и перейдите в «Программы».
  2. Выберите «Программы по умолчанию» и свяжите тип файла или протокол с определенной программой.
  3. Найдите тип файла, который вы хотите изменить, слева и выделите его.
  4. Выберите Изменить программу в правом верхнем углу.
  5. Выберите программу в появившемся новом окне и нажмите OK.

https://www.techjunkie.com/associate-file-types-programs/

Windows запустит вашу программу и передаст ей путь кфайл в качестве аргумента командной строки. Смотрите этот вопрос, чтобы узнать, как это сделать: Как запустить WPF на основе аргументов

...