I have written a script to build the Installshield project file(.ism) to setup files(.msi or .exe based on the release settings..).

So when the user runs the AutoIT script the process will be automatic for multiple ism files.

Func Build($sOutputIsm,$ReleaseName,$sFilePath="None",$NewName="None")  ;build the ism to get the msi

    If not FileExists($sOutputIsm) Then
        Logging("File Not Found: $sOutputIsm$",4)
        MsgBox($MB_OK + $MB_ICONERROR, "Error", "Could not find file ""$sOutputIsm$"".")
        Return
    EndIf
    Logging("Started Building $sOutputIsm$",4)
    ShowTrayTip($AppName, "Started Building $sOutputIsm$", 10, $TIP_ICONASTERISK)
    Dim $sBuildExe,$sBuildCommand,$Ret
    $sBuildExe = FindFileInPath("ISCmdBld.exe", "%ProgramFiles(x86)%\InstallShield")
    $sBuildCommand = """$sBuildExe$"" -p ""$sOutputIsm$"" -r ""$ReleaseName$"" -s"
    ;MsgBox(0,"",$sBuildCommand)
    $Ret = RunWait($sBuildCommand)
    If $Ret <> 0 Then
        ShowTrayTip($AppName,"ISM Build Failed, Please build the ISM Manually.",10, $TIP_ICONHAND)
        MsgBox($MB_OK + $MB_ICONERROR, "Error", "Could not build ""$sOutputIsm$"". Please build manually.")
        Logging("Error $Ret$ while Building $sOutputIsm$",4)
        Return;Exit(1)
    Else
        ShowTrayTip($AppName,"ISM Build Completed",10, $TIP_ICONASTERISK)
        Logging("Completed Building $sOutputIsm$",4)
        if not StringCompare($NewName, "None")=0 then MoveEXE($sFilePath,$NewName)
    EndIf
EndFunc

The problem is when we run the ISCmdBuild.exe the RunWait will give whether fail or success but not what are the errors we got.
If we use Run, it will give that logging but we don't have the feature of getting fail/success as RunWait.

If we run the above code by removing -s and using redirection operator > to a file, it is running manually but failing with autoit.

Like
 

$sBuildCommand = """$sBuildExe$"" -p ""$sOutputIsm$"" -r ""$ReleaseName$"" > c:\logs\uday.log"

Any help on this??

 

And also, in some machines the installshield shortcut is launching fine as licensed version but with ISCmdBld.exe it is giving error as licensing info missing or not registered.

 

Any suggestion on this too??

1 Comment   [ + ] Show Comment

Comments

  • Through GUI I can see option only to check the license status of itself.

    Can you tell how to check the license status of the iscmdbld from the IDE??
Please log in to comment

Answers

0

there is separate licensing for using iscmdbuild on remote machines, make sure you have that in place.

 

Answered 08/14/2016 by: Badger
Red Belt

  • we are connecting to license server for licensing...For other machines in our team, the commandline version is working but not in my machine.
    • just your machine?? Is DNS resolving the server name OK
      • yes..all other shares are working..
      • its not about shares. if installshield is working on your machine, you might still need another separate license for the iscmdbld part of the app.
  • We are connecting to the internal license server for licensing of installshield.

    In my peers machines, iscmdbuild.exe is also working.But it is not in my machine.Even the "Flexnet Licensing Service" is also running.

    Could you please suggest what I need to check in that machine o troubleshoot the same.
    • 'not working' = fails to launch?? Or can be launched by fails, is there a log or anything in eventvwr?? is it a licensing issue, or do you just think its a license issue
      • When I build the exe using Wizard then it is building correctly.When I do with ISCMDBuild.exe then I am getting the console output as below screenshot.

        http://www.mediafire.com/view/rjafp97c9j0vqpq/ISCmdBuild.exe+error.PNG

        http://www.mediafire.com/download/rjafp97c9j0vqpq/ISCmdBuild.exe+error.PNG
      • Below is the console output, if you can't access the screenshot.

        Microsoft Windows [Version 6.1.7601]
        Copyright (c) 2009 Microsoft Corporation. All rights reserved.

        C:\Users\kirud01>"C:\Program Files (x86)\InstallShield\2014\System\IsCmdBld.exe"
        -p "H:\ERwin ISM\x64\ISM\ERwin Data Modeler r9.64.02_64bit.ism" -r "Release 1"
        InstallShield (R)
        Release Builder
        Copyright (c) 2013 Flexera Software LLC.

        All Rights Reserved.

        Build started at Aug 19 2016 03:07 PM
        Building Release: Release 1

        ISDEV : fatal error -7159: The product license has expired or has not yet been i
        nitialized.
        Product Configuration 1\Release 1 - 1 error(s), 0 warning(s)

        Build finished at Aug 19 2016 03:07 PM
      • Can you check the license status of the iscmdbld from the IDE??
Please log in to comment
Answer this question or Comment on this question for clarity