Share This Post

Scripting Sybase PowerDesigner Viewer 16.x for Deployment

Ran into a curious situation when automating the installation of Sybase PowerDesigner Viewer 16.  If you just want the answer, then jump to the bottom of this post 🙂

The installer was built as a self-extracting InstallShield setup.  Typically, for a ConfigMgr package I like to use the extracted files.  However, when attempting to run the Setup of the InstallShield installation, an error was generated that “setup.cab” was missing from “Disk2″.  This was issue #1.

Since there was no “disk 2″, so I reverted back to just using the native, self-extracting installer.  This appeared like it was going to be fairly simple as all defaults were going to be used.  Most times, just using /s is enough to complete the silent installation.  But no, this would be too easy.  The installation would still not run unattended.  Eventually I discovered that the only way to automate a silent installation was to create and include a setup.iss record file.  Again, this is despite that only the defaults were being used and that a basic setup.iss was already included as part of the extracted files.  This was issue #2.

So have we finally figured out how to automate the silent install?  Of course not – there is no reason that a simple application should be so easy to automate.  Running the install as PDV_16.exe /s /f1″setup.iss” would absolutely install PDV…when executed manually.  As soon as it was deployed using ConfigMgr, the setup would fail with an error.  Why oh why!?!  Turns out that their installer also hates to be run in System context.  Which is what we all know is how ConfigMgr needs to do it, especially for Task Sequences.  This was issue #3.

After tussling with this application, I finally figured out that not only is a recorded installation (setup.iss) necessary, but so is specifying a location for the log file!!  Conclusion?  I despise Sybase installers.  Answer?  Use the following command line.

PDV_16.exe /s /f1"setup.iss" /f2"c:\windows\temp\pdvsetup.log"

One last comment.  Make sure the log file is specified in a directory that already exists (such as c:\windows\temp), otherwise you end up with Issue #4.  And use a wrapper (such as a batch file) to specify the current working directory of the setup.iss file, otherwise you’ll end up with Issue #5.  If using a batch file, the command would like this for your ConfigMgr package:

"%~dp0PDV_16.exe" /s /f1"%~dp0setup.iss" /f2"c:\windows\temp\pdvsetup.log"

 

Share This Post

Hello and thanks for reading my blog (http://t3chn1ck.wordpress.com)! My hope is that information I post is useful to others! If you found that a solution did help you, or if you have questions, feel free to drop a comment on the post. I primarily blog on my IT experiences with ConfigMgr and desktop engineering. I am a 10 year, seasoned professional with ConfigMgr and systems management. I co-facilitate and present for the local user group in Denver, am an active blogger on topics for ConfigMgr and systems management techniques, involved in forums for Microsoft and MyITForum, and have been a speaker for events such as BDNA's SCCM Guru Webcast Series (March 2012), the Microsoft Management Summit (April 2013), and BDNA's Microsoft Master Webcast Series (Jan. 2014).

1 Comment

  1. Haha… I know what it’s like sometimes to get to a working cmdline. Thanks for sharing this! If you should ever need a Powershell script to deploy an application, I wrote a post on this –> http://baldwin-ps.blogspot.com/2013/05/deploy-application-using-powershell.html. Can come in handy sometimes.

    Grts.

Leave a Reply