InstallShield InstallScript project remote debugging involves:

  1. Copying debugger and supporting files to remote machine, including:

    • ISDbg.exe: InstallScript Debugger, located at %ProgramFiles(X86)%\InstallShield\20xx\System\ISDbg.exe;
    • SciLexer.dll: InstallScript Debugger runtime dependency, required since InstallShield 2012, located at %ProgramFiles(X86)%\InstallShield\20xx\System\SciLexer.dll;
    • (Optional) ISdbg.chm: InstallScript Debugger Help, located at %ProgramFiles(X86)%\InstallShield\20xx\Program\0409\ISDbg.chm (English) or %ProgramFiles(X86)%\InstallShield\20xx\Program\0411\ISDbg.chm (Japanese).

    Note: If your installation is built with InstallShield 2016, 2018, 2019 or later, Visual C++ Redistributable for Visual Studio 2012 (VC++ 11.0) x86 is also required to be installed on remote machine.

  2. Register ISDbg.exe on remote machine:

    cd to the directory containing ISDbg.exe and run the following command:

    ISDbg.exe /REGSERVER
    
  3. Compile InstallScript files with -gi or -g switch:

    Use cmd.exe:

    cd "My Project\Script Files"
    set ISVer=2019
    
    "%ProgramFiles(x86)%\InstallShield\%ISVer%\System\Compile.exe" ^
        Setup.rul IFX.obl Isrt.obl ^
        -gi ^
        -libpath"%ProgramFiles(x86)%\InstallShield\%ISVer%\Script\Ifx\Lib" ^
        -libpath"%ProgramFiles(x86)%\InstallShield\%ISVer%\Script\Isrt\Lib" ^
        -i"%ProgramFiles(x86)%\InstallShield\%ISVer%\Script\Ifx\Include" ^
        -i"%ProgramFiles(x86)%\InstallShield\%ISVer%\Script\Isrt\Include"
    

    ^ is the line-continuation mark for cmd.exe.

    Or use PowerShell:

    cd "My Project\Script Files"
    $ISVer="2019"
    
    & "${env:ProgramFiles(x86)}\InstallShield\$ISVer\System\Compile.exe" `
        Setup.rul IFX.obl Isrt.obl `
        -gi `
        -libpath"${env:ProgramFiles(x86)}\InstallShield\$ISVer\Script\Ifx\Lib" `
        -libpath"${env:ProgramFiles(x86)}\InstallShield\$ISVer\Script\Isrt\Lib" `
        -i"${env:ProgramFiles(x86)}\InstallShield\$ISVer\Script\Ifx\Include" `
        -i"${env:ProgramFiles(x86)}\InstallShield\$ISVer\Script\Isrt\Include"
    

    ` (backtick) is the line-continuation mark for PowerShell.

  4. Setup.inx is the compiled file; replace the one built by InstallShield.

  5. Run built installer setup.exe with /d flag on remote machine:

    setup /d
    

    When prompting for the script folder, locate to My Project\Script Files folder which contains .rul and .h files.

    The .ism project file and other files are not needed at all.

Keyboard Shortcuts of InstallScript Debugger

Shortcuts of InstallScript Debugger are similar to Visual Studio ones.

  ISDbg
Go F5
Break Break
   
Step Into F11
Step Over F10
Step Out Shift + F10
   
Show Next Statement Alt + Num*
   
Toggle Breakpoing F9
Clear All Breakpoints Shift + Ctrl + F9

Troubleshooting

  • Failed to create empty document.

    InstallShield Script Debugger - Failed to create empty document.

    Make sure SciLexer.dll is copied to the same folder as ISDbg.exe, and Visual C++ Redistributable for Visual Studio 2012 (VC++ 11.0) x86 is installed on the machine being debugged as well.

  • Help menu is disabled.

    InstallShield Script Debugger - Help menu disabled

    Make sure ISDbg.chm is copied to the same folder as ISDbg.exe. Do not put it in a subdirectory.

Docs

Docs on "Debugging an Installation on Any Computer":
InstallShield 2019, InstallShield 2018, InstallShield 2016, InstallShield 2015, InstallShield 2014, InstallShield 2013, InstallShield 2012 Spring.