Domanda

Ho aggiunto una pagina personalizzata per il mio programma di installazione creati utilizzando nsDialogs, tuttavia, la pagina è necessario solo per essere visualizzato a una delle mie opzioni InstType.

InstType "Default" # 1
InstType "Developer" # 2

Nell'esempio di cui sopra, vorrei pagina in più per essere mostrato ai soli sviluppatori. Qual è la migliore pratica?

  1. Controllare qualche attributo per determinare il tipo di installazione e di chiamata a sopprimere nsDialogs::Show? Non ho idea di che cosa attributo per cercare
  2. Alcuni logica nella pagina di routing che evita la pagina di essere colpito? Non ho idea di come fare questo
  3. Qualcos'altro?
È stato utile?

Soluzione

saltare una pagina , chiamata di interruzione nel creare funzione di callback per quella pagina.

!include LogicLib.nsh

InstType "Normal"
InstType "Developer"

Page Components
Page Custom myDevPage
;Page start menu etc...
Page InstFiles

Section /o "" ${SEC_Dev}
;This (hidden) section is used just to check the insttype state, but you could also use it to install dev specific files etc
SectionIn 2
Sectionend

Function myDevPage
${IfNot} ${SectionIsSelected} ${SEC_Dev}
    Abort
${EndIf}
;nsDialog code goes here
FunctionEnd
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top