Проект установки Visual Studio 2010 [ProductName] - PullRequest
1 голос
/ 20 сентября 2011

C #, Visual studio 2010

У меня есть проект приложения и проект установки, связанные с приложением. В свойстве «Проекты установки» я установил для свойства ProductName значение MyApp.

У меня есть две ссылки (проект установки) в папке приложений, один для запуска проекта и один для удаления

Я использую технику создания ссылки удаления из папки приложений с помощью запуск моего приложения с флагом и кода продукта приложения, как это --uninstall [ProductCode]

  1. Я не могу использовать [ProductName] в качестве имени ссылки для запуска приложения, почему это так? Если я это сделаю, проект установки создаст ссылку в папке приложения в меню «Пуск». с именем [ProductName] вместо «MyApp».

  2. Как локализовать «удалить ссылку», сегодня я называю ссылку удаления «Удалить MyApp»? Я надеялся, что это возможно сделать что-то вроде этого "strings.Remove [ProductName]"

  3. Можно ли связать проект установки с моим проектом MyApp таким образом, чтобы Вместо этого проект установки получает имя приложения, номер версии и т. Д. Из проекта MyApp. Как это Свойство настройки ProjectName = MyApp.properties.Application.AssemblyName

/ Stefan


Понятно, спасибо за ответ

Почему вы не используете командную строку msiexec.exe

Я использую msiexec, я вызываю его в своем классе приложения, как это

            sComLine = CommandLine.CL.get("uninstall"); // Check command line if the --uninstall [ProductCode] is given
            if (sComLine != null)
            {
                string path = Environment.GetFolderPath(Environment.SpecialFolder.System);
                System.Diagnostics.ProcessStartInfo uninstallProcess = new System.Diagnostics.ProcessStartInfo(path + System.IO.Path.DirectorySeparatorChar + "msiexec.exe", "/x " + sComLine);
                System.Diagnostics.Process.Start(uninstallProcess);
                System.Windows.Application.Current.Shutdown();
            }

1 Ответ

1 голос
/ 20 сентября 2011

Я использую технику создания ссылки деинсталлятора в папка приложения, запустив мое приложение с флагом и приложения Код продукта, подобный этому --uninstall [ProductCode]

Почему вы не используете командную строку msiexec.exe? Возможно эта ветка поможет:

Как создать сценарий удаления в проекте установки Visual Studio?

Я не могу использовать [ProductName] в качестве имени ссылки для запуска приложение, почему это? Если я это сделаю, проект установки создаст ссылка в папке приложения под меню «Пуск» с именем [ProductName] вместо «MyApp».

Имена ярлыков не поддерживают свойства установщика. Это ограничение в установщике Windows. Поэтому имя должно быть жестко закодированным значением.

Как локализовать "удалить ссылку"

Это не поддерживается Visual Studio. Это можно сделать только в инструменте разработки настроек, который предлагает поддержку локализации.

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

Нет, это не поддерживается Visual Studio. Как примечание, версия вашего приложения не всегда совпадает с версией пакета. Обычно лучше держать их отдельно.

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