2010-11-27 1 views
0

問題:フォルダーの作成、IE設定の変更、ファイアウォールの変更、exeのインストールなどの一連の作業を行うためにnsiを書く必要があります。インストールするexeはライセンスコピーであり、登録名とキーが必要です。登録名とキーを設定する必要があるexeファイルをインストールするNSISスクリプト

シナリオ:50台以上のコンピュータにexeをインストールした後も同じ手順を実行する必要があり、手作業でエラーが発生しないようにしたいと考えています。

私は正常にすべての手順を書いたが、exeをインストールする方法を見つけるために、私は登録名とキーを要求します。

おかげ lazywizar

+0

、あなたがこの製品はそのを保存する場所を把握する必要がありますあなたがインストール中にそれを記入したい場合は、登録情報... – Anders

答えて

0

あなたが登録名とキーを処理する予定ですか、あなたはインストールを検証するためのサーバーが必要になりますどのように説明できますか?

とにかくカスタムページを作成し、このページでカスタムフォームを作成する必要があります。何かのように:

のcreatePageは、ページのUI

例を作成する関数である

Page custom CreatePage QuitPage 

:私たちは十分な情報を持っていない

;;In the variables section 
var regname_hdl 
var regkey_hdl 
Var regname_inpt_hdl 
var regkey_inpt_hdl 
var RegName 
var RegKey 


Function CreatePage 

GetDlgItem $0 $hwndParent 3 
EnableWindow $0 0 

nsDialogs::Create 1018 
Pop $Dialog 

${If} $Dialog == error 
    Abort 
${EndIf} 

${NSD_CreateLabel} 0 0 100% 10u "Say something to user" 
Pop $Label 

${NSD_CreateLabel} 20u 20u 20% 20u "Enter Registration Name " 
Pop $regname_inpt_hdl 

${NSD_CreateLabel} 20u 40u 20% 20u "Enter Registration Key " 
    Pop $regkey_inpt_hdl 


    ${NSD_CreateText} 30% 20u 30% 10u "" 
    Pop $regname_hdl 

    ${NSD_CreatePassword} 30% 40u 30% 10u "" 
    Pop $regkey_hdl 

    nsDialogs::Show 

FunctionEnd 

Function QuitPage 

    ${NSD_GetText} $reg_hdl $2 
    ${NSD_GetText} $key_hdl $3 
    Push $3 
    Push $2 
    Pop $RegName 
    Pop $RegKey 


    ${If} '$2' == "" 
      messageBox MB_ICONEXCLAMATION "Reg name is empty !" 
      Abort 
    ${ElseIf} '$3' == "" 
     messageBox MB_ICONEXCLAMATION "Reg key is empty !" 
     Abort 
    ${Else} 
      System::Alloc 9 
      Pop $4 
      ;; Here you have to call some procedure to check if reg name and key are valid 
      ;; let's say the procedure returns 1 for true and 0 for false and it stores the result in $1 

     ${If} $1 == 0 
       messageBox MB_ICONEXCLAMATION "Installation denied !" 
       Abort 
     ${EndIf} 
    ${EndIf} 
    MessageBox MB_OK "Installation allowed !" 

    SetPluginUnload manual 
    System::Free 0 

FunctionEnd 
関連する問題