[electron-builder-nsis 如何使用 If-Else 来控制 MUI_PAGE_DIRECTORY?

Posted

技术标签:

【中文标题】[electron-builder-nsis 如何使用 If-Else 来控制 MUI_PAGE_DIRECTORY?【英文标题】:[electron-builder-nsis How Can I Use If-Else To Control MUI_PAGE_DIRECTORY? 【发布时间】:2021-09-23 14:17:26 【问题描述】:

首先,请原谅我的英语不好~ 你好,我需要完成这个问题: 如果用户安装了我的应用程序,更新到应用程序,我希望安装程序不显示 MUI_PAGE_DIRECTORY,如果人们从未安装过,可以显示 MUI_PAGE_DIRECTORY。 但是当我写 install.nsh 时发现我做不到。 比如

// I want this write
$if $userInstallPath != ""
   //
$else
    !insertmacro MUI_PAGE_DIRECTORY
$endif

但事实并非如此

【问题讨论】:

【参考方案1】:

要跳过页面,请在页面预回调中调用Abort。我不知道你是如何在 Electron builder 中做到这一点的,但在普通的 NSIS 中你会这样做:

!define MUI_PAGE_CUSTOMFUNCTION_PRE dirskip
!insertmacro MUI_PAGE_DIRECTORY
... 

Function dirskip
$If $userInstallPath != ""
   Abort
$EndIf
FunctionEnd 

【讨论】:

以上是关于[electron-builder-nsis 如何使用 If-Else 来控制 MUI_PAGE_DIRECTORY?的主要内容,如果未能解决你的问题,请参考以下文章

Markdown公式用法大全

shell编程-如何定义函数如何调用函数如何调试shell

[精选] Mysql分表与分库如何拆分,如何设计,如何使用

四连问:前后端分离接口应该如何设计?如何保证安全?如何签名?如何防重?

集合元素如何添加?如何删除?如何遍历?

2021-10-16 如何如何如何。