NSISを使用してサイレントモードでMySQLをインストールしようとしています。今はMySQLの部品を手に入れようとしているだけです。このスクリプトは純粋にMySQLをインストールするためのものです。NSISを使用したMySQLのサイレントインストール
私が読んだフォーラム投稿の大半は2009〜2011年のものですから、時代遅れと思われます。あなたは私がすべては静かに実行し、インストールフォルダを指定するには、MSIを頼むで見ることができるように
!include MUI2.nsh
!include WordFunc.nsh
!insertmacro VersionCompare
!include LogicLib.nsh
!include InstallOptions.nsh
!include nsDialogs.nsh
Name "sqltest"
!define MUI_HEADERIMAGE
!define MUI_HEADERIMAGE_RIGHT
OutFile "sqltest.exe"
InstallDir "$PROGRAMFILES\sqltest"
RequestExecutionLevel admin
XPStyle on
!define MUI_WELCOMEPAGE_TEXT "The MySQL Test Install"
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
;!insertmacro MUI_UNPAGE_CONFIRM
;!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_LANGUAGE "English"
Section "install"
File mysql.msi
ExecWait 'msiexec /i "$INSTDIR\mysql.msi" /qn'
SetOutPath "$PROGRAMFILES\MySQL\MySQL Server 5.7.15"
SectionEnd
:
は、これまでのところ、私はこの基本的なスクリプトを持っています。
NSISインストーラをビルドして実行すると、$PROGRAMFILES\MySQL\MySQL Server 5.7.15
というフォルダが表示されますが、その中には何もありません。
実行する必要があるものはありますが、実際のインストールでは何も試したことがありません。
すべてのポインタは素晴らしいでしょうか?
私はそれを実行します。それは完璧な意味合いをして、私はちょうどその段階に到達する別の例に従っていた –
私はmsiexecとSetOutPathを入れ替えたが、まだフォルダが空白に見えます。 MSIがインストールされていないようです。 –
'SetOutPath'は' Section'の最初の命令である必要があります! 'SetOutPath'、次に' File'、そして 'ExecWait'!あなたの 'SetOutPath'行には、$ InstDirと同じではないかもしれないハードコーディングされたパスがいくつかあります。' SetOutPath'と 'ExecWait'の両方で同じパスを使います! – Anders