2011-01-05 6 views
10

Перед публикацией я перешел в Project -> Properties -> Options -> File Associations и добавил расширение «.hsp». Установите значок и ProgID («MyCompany.Document.1» для тестирования). После того, как я опубликовал и установил, у моих файлов .hsp был установлен значок, поэтому ассоциация файлов должна быть правильно настроена, но когда я дважды щелкнул один из этих файлов, приложение запустило, и я ожидал, что имя файла, который я дважды щелкнул, в командной строке. Я попробовал прочитать параметр, переданный моей функции Main, попробовал Environment.CommandLine и попытался Environment.GetCommandLineArgs(), но единственное, что я нашел, это путь приложения. Кстати, я делаю все это, прежде чем создавать свою основную форму в функции Main, просто чтобы проверить. Параметр args пуст, а два других содержат только мой путь к приложению.Как получить командную строку из приложения ClickOnce?

Это начало моей Main функции:

static void Main(string[] args) 
    { 
     try 
     { 
      Application.EnableVisualStyles(); 
      Application.SetCompatibleTextRenderingDefault(false); 
      Application.ThreadException += new ThreadExceptionEventHandler(Application_ThreadException); 
      MessageBox.Show("CommandLine -> " + Environment.CommandLine); 
      foreach (string str in args) MessageBox.Show("args -> " + str); 
      foreach (string str in Environment.GetCommandLineArgs()) MessageBox.Show("GetCommandLineArgs -> " + str); 

ответ

9

При публикации приложения с помощью ClickOnce, а затем запустить его двойным щелчком мыши соответствующий файл, путь к этому файлу на самом деле получает хранится здесь:

документация
AppDomain.CurrentDomain.SetupInformation.ActivationArguments.ActivationData[0] 

знакомства MSDN для него здесь:

http://msdn.microsoft.com/en-us/library/system.runtime.hosting.activationarguments.aspx

Plus учебник по добавлению файлов ассоциации "Опубликованные" проекты:

http://blogs.msdn.com/b/mwade/archive/2008/01/30/how-to-add-file-associations-to-a-clickonce-application.aspx

+0

Спасибо так много! – pr0gg3r

Смежные вопросы