Re: InstallShield project in Visual Studio

Kenneth Angell <[email protected]>
Newsgroups gmane.comp.version-control.sourcegear-vault.user
Message-ID <[email protected]>
Dan,

I tested this in VSS this morning and I was able to add an InstallShield 
project to VSS through Visual Studio.  Once I got the project into VSS I 
noticed some extreme quirkiness in the way checkout and check in 
worked.  Here is what I have been able to deduce about the way 
InstallShield handles its source files:

When you create an InstallShield project it creates a .isv file which is 
the file that will be added to the source control.  The .isv file is 
used to create a .ism file which is the binary file format for 
InstallShield. InstallShield recreates this file every time you open 
your .isv file and this is the file you edit when using InstallShield. 
When you issue a check in command, this .ism file recreates the .isv 
file and a bunch of supporting .itd files which also get checked in to 
the source control.

Here is where the quirkiness comes in.  If you open the Solution without 
having first used the Client to check out the .isv file the file is 
opened "Read-Only" and consequently the .ism file is re-created as 
"Read-Only".  InstallShield allows you to edit a Read-only file but when 
you try to save it (InstallShield does this automatically when checking 
in) you can only Save-As and you are not allowed to Save-As the same 
file you opened.  Since the .ism is used to re-create the .isv file that 
gets checked in, a new .ism file creates a new .isv file during the 
Save-As.  If the project is reloaded after checkout, then the .ism file 
is not created as read-only and the Save-as problem is avoided.

So you have to jump through some hoops but it does work.

I think the problem with Vault may lie somewhere in the .itd files that 
InstallShield manages.  The only file checked out by the IDE is the .isv 
file.  But this file creates a bunch of .itd supporting files that 
recreate you .ism InstallShield file.  The IDE checks in the .isv file 
but I think it passes the buck to InstallShield to checkout the .itd 
files, re-generate them from the .ism file, and then check them in 
during the process.  I don't know if Vault can handle the hand-off but I 
figure if it can work on VSS it ought to work in Vault. 

If it helps, I am using InstallShiled Developer 8 SP2.

Ken Angell
NET-Architect

Dan Schreiber wrote:

> We don't use InstallShield here, so we have not seen the error.
>  
> A few questions though:
>  
> 1. Can you add the solution outside the IDE (using Vault's standalone 
> client)?
> 2. If you use VSS as the source control provider, do you get similiar 
> results?
>  
> Dan Schreiber
>
>     -----Original Message-----
>     *From:* [email protected]
>     [mailto:[email protected]]*On Behalf Of
>     *Kenneth Angell
>     *Sent:* Friday, January 09, 2004 8:40 PM
>     *To:* Vault List
>     *Subject:* [vault-list] InstallShield project in Visual Studio
>
>     I am currently trying to add an InstallShield Developer project to
>     a solution under Vault Source control.  The addition fails when I
>     try to check the new project in (add it to Vault) with
>     "Unspecified Error".  The same happens if I create the project
>     outside of Visual Studio and then try "Add Existing Project".  Has
>     anyone had problems with deployment projects in using the IDE
>     client or does anyone have any experience with using InstallShield
>     projects in Visual Studio and VSS? 
>
>     Ken Angell
>     Application Architect
>     NET-Architect
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.