Номер версии .NET (версия установщика) - PullRequest
9 голосов
/ 06 августа 2010

Я пытаюсь добавить функцию в мое приложение winforms, которая печатает номер версии на главном экране. В настоящее время у меня есть это:

txtVersion.Text = ProductVersion.ToString();

Который говорит мне версию программы - все хорошо.

Однако, в идеале, я бы хотел выбрать версию программы установки, которая использовалась для создания MSI. Есть ли способ либо запросить это из установленной программы, либо как-то передать информацию во время установки?

Ответы [ 4 ]

4 голосов
/ 08 августа 2010

Звучит так, как будто вы хотите ProductVersion свойство . Вы можете получить это во время выполнения, вызвав функцию :: MsiGetProductInfo () , предоставив код продукта для MSI, который установил вас.

Если у вас ничего не получится, тогда запись ProductVersion в раздел реестра и чтение его во время выполнения довольно популярны. Вы также можете использовать этот раздел реестра для решения проблем ICE38, описанных здесь: http://robmensching.com/blog/posts/2007/4/27/How-to-create-an-uninstall-shortcut-and-pass-all-the

1 голос
/ 06 августа 2010

Лучше не брать версию приложения из установщика, а взять версию установщика из приложения (AssemblyInfo.cs), imo.

0 голосов
/ 06 августа 2010

Вы можете очень хорошо сделать из вашей программы установки (MSI) через пользовательские действия, используя Wix3

Следующие ссылки помогут вам начать

WIX в Sourceforge

Wix Tutorial

0 голосов
/ 06 августа 2010

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

...