Как установить AppId для Windows Настольного приложения (через InnoSetup) - PullRequest
0 голосов
/ 12 апреля 2020

В соответствии с заголовком, как мне установить идентификатор приложения для собственного Windows настольного приложения?

Документация по идентификаторам приложений редкая, и я ничего не нашел о ее настройке.

Это Microsoft Docs , но здесь упоминается, что это такое и как использовать AppUserModelId's

. Я использую Inno Setup Compiler для создания установщика для моего настольного приложения, и я установил пометить AppId идентификатором GUID, сгенерированным компилятором установки Inno.

AppId={{6BE5E5E6-68BF-4AF7-A9E5-FF919709E86C}

Насколько я понимаю, Inno Setup настроит AppId, когда вы запускаете установщик, но когда я запускаю этот фрагмент PowerShell, Я не могу найти свое приложение после установки (этот фрагмент кода показывает AppId как IdentifyingNumber):

get-wmiobject Win32_Product -Filter "Name LIKE 'MyApp%'"

В моем приложении все работает как положено. Он запускается и все, но мне нужно установить AppId для того, чтобы мои уведомления о тостах работали правильно (через wxWidgets).

Редактировать:

То, что я действительно после был AppUserModelId, а не AppId, что, как ни странно, было даже упомянуто здесь в моем вопросе.

2nd Edit:

Я узнал, что AppId является спецификацией Inno Setup. c вещь и не имеет ничего общего с Windows. Как упоминалось в моем предыдущем редактировании, я на самом деле искал AppUserModelId, и моя проблема стала более понятной, что было включено в этот вопрос .

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

1 Ответ

0 голосов
/ 12 апреля 2020

В соответствии с документацией для AppID говорится:

AppId также определяет фактическое имя раздела реестра Uninstall, к которому привязывается программа установки Inno " _is1 "в конце. (Поэтому, если AppId равен «MyProgram», ключ будет называться «MyProgram_is1».)

В вашем случае ключ реестра будет: {6BE5E5E6-68BF-4AF7-A9E5-FF919709E86C}_is1

На моем компьютере ключи реестра для удаления находятся здесь:

   HKEY_LOCAL_MACHINE\
             SOFTWARE\
          WOW6432Node\
            Microsoft\
              Windows\
        CurrentVersion\Uninstall\{...}_is1

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

  • InstallLocation
  • Inno Setup: App Path

Но в нем не указано имя исполняемого файла. Но ты бы все равно это знал.

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