NSIS學習記錄の----win8.1和win10對於NSIS創建的卸載快捷方式無法在開始目錄下顯示


NSIS提供了很好的軟件卸載功能編寫的方法,但是針對win8.1和win10操作系統,由於開始目錄的權限限制,我們有時候並不能完美的完成所需要的功能----卸載程序的快捷方式不能顯示。話不多說,下面提供解決方法:

  運用all用戶權限和current用戶權限各寫一遍即可解決問題。下面是我打安裝包卸載的快捷方式的代碼:

  SetShellVarContext current
  CreateDirectory "$SMPROGRAMS\立思辰合眾"
  CreateDirectory "$SMPROGRAMS\立思辰合眾\智課堂"
  CreateShortCut "$SMPROGRAMS\立思辰合眾\智課堂\智課堂.lnk" "$INSTDIR\U-Teach.exe"
  ;高級配置
  CreateShortCut "$SMPROGRAMS\立思辰合眾\智課堂\高級配置.lnk" "$INSTDIR\AdvancedConfig.exe"
  CreateShortCut "$SMPROGRAMS\立思辰合眾\智課堂\配置.lnk" "$INSTDIR\Config.exe"
  CreateShortCut "$SMPROGRAMS\立思辰合眾\智課堂\卸載智課堂.lnk" "$INSTDIR\Uninst.exe"
  
  SetShellVarContext all
  CreateShortCut "$DESKTOP\智課堂.lnk" "$INSTDIR\U-Teach.exe"
  CreateDirectory "$SMPROGRAMS\立思辰合眾"
  CreateDirectory "$SMPROGRAMS\立思辰合眾\智課堂"
  CreateShortCut "$SMPROGRAMS\立思辰合眾\智課堂\智課堂.lnk" "$INSTDIR\U-Teach.exe"
  ;高級配置
  CreateShortCut "$SMPROGRAMS\立思辰合眾\智課堂\高級配置.lnk" "$INSTDIR\AdvancedConfig.exe"
  CreateShortCut "$SMPROGRAMS\立思辰合眾\智課堂\配置.lnk" "$INSTDIR\Config.exe"
  CreateShortCut "$SMPROGRAMS\立思辰合眾\智課堂\卸載智課堂.lnk" "$INSTDIR\Uninst.exe"

 你會神奇的發現問題解決了,有個關鍵的問題需要注意一下,就是卸載的時候最好調用cmd命令完成,以保證完全是刪除快捷方式!代碼如下:

	;快捷方式刪除操作
  SetShellVarContext current
  Delete "$DESKTOP\智課堂.lnk"
  nsExec::Exec 'cmd /c rd /q /s "$SMPROGRAMS\立思辰合眾\智課堂"'

  SetShellVarContext all
  Delete "$DESKTOP\智課堂.lnk"
  nsExec::Exec 'cmd /c rd /q /s "$SMPROGRAMS\立思辰合眾\智課堂"'

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM