WinShell plug-in: Difference between revisions

From NSIS Wiki
Jump to navigationJump to search
(20121005: Fixed a bug in the ANSI plugin)
(Delete the directory we created)
Line 35: Line 35:
WinShell::UninstShortcut "$SMPrograms\MyApp\MyApp.lnk"
WinShell::UninstShortcut "$SMPrograms\MyApp\MyApp.lnk"
Delete "$SMPrograms\MyApp\MyApp.lnk"
Delete "$SMPrograms\MyApp\MyApp.lnk"
RMDir "$SMPrograms\MyApp"
SectionEnd
SectionEnd
</highlight-nsis>
</highlight-nsis>

Revision as of 17:30, 15 March 2017

Author: Anders (talk, contrib)


Plugin Info

  • Version: 20121005
  • Type: Runtime plugin
  • Character encoding: Ansi & Unicode
  • Minimum OS: Win95/NT4
  • Minimum NSIS Version: 2.0
  • License: Freeware
  • Download: WinShell.zip (2 KB)


Information

SetLnkAUMI sets the PKEY_AppUserModel_ID property on a shortcut.

UninstAppUserModelId calls IApplicationDestinations::RemoveAllDestinations and ICustomDestinationList::DeleteList.

UninstShortcut calls IStartMenuPinnedList::RemoveFromList.


Usage Example

!define MyApp_AppUserModelId "MyCompany.MyApp.xyz"
 
Section Install
CreateDirectory "$SMPrograms\MyApp"
CreateShortcut "$SMPrograms\MyApp\MyApp.lnk" "$Instdir\MyApp.exe"
WinShell::SetLnkAUMI "$SMPrograms\MyApp\MyApp.lnk" "${MyApp_AppUserModelId}"
SectionEnd
 
 
Section Uninstall
WinShell::UninstAppUserModelId "${MyApp_AppUserModelId}"
 
WinShell::UninstShortcut "$SMPrograms\MyApp\MyApp.lnk"
Delete "$SMPrograms\MyApp\MyApp.lnk"
RMDir "$SMPrograms\MyApp"
SectionEnd


Credits

Written by Anders (For fun and profit?)