Link to home
Start Free TrialLog in
Avatar of weeph
weeph

asked on

Install Shield 2010 Ver 16

My first project is 100% working. It was a client install.

Now I'm attempting to do a Server install.  I need to have SQL Server 2008 R2, (SQL), as part of the install.  I first installed SQL by itself and had no problems.  

When SQL starts it extracts all of the files needed into a new folder.

I then added it to my project using Custom Actions. Tried 2 ways of doing it, 1 at the start & 1 at then end of the install.

Both times I get an error saying that 2 files cannot be found, "Retry or Cancel.

I went looking for the files and they were there in the extracted folder. I noticed that the folder had no privileges.  When I gave the Administrator Total Control & then went back and clicked 'Retry' everything installed 100%.

I then did a clean win 7 install and installed SQL again by itself without any problems.  I check the extracted folder & I see it also doesn't have any privileges.

How can I give the extracted folder privileges if that's is what's needed?  Or am I adding SQL to the project incorrectly.?
Avatar of weeph
weeph

ASKER

I did a Google and found this which I added to the install, but still get the same errors.

I assume this only gives privileges to the SQLEXPRWT_x86_ENU.exe
SQL.jpg
Avatar of Vadim Rapp
> I then added it to my project using Custom Actions.

No, that's not the way to do it. Look at the Prerequisites.
Avatar of weeph

ASKER

I've done that.  How do I add the prerequisite to the project?

The reason I ask is that once I did the prereq the little save icon didn't change to blue.  So I assume nothing changed in the project
Avatar of weeph

ASKER

I have been using the help files, but can't seem to get it
>  How do I add the prerequisite to the project?

Adding InstallShield Prerequisites, Merge Modules, and Objects to Basic MSI, InstallScript MSI, and Web Projects

If SQL Server you want already exists as prerequisite, then add it.

If not, find out if you can download it, or you can create your own
Here's how you'd include it. If it's not the one you want, see my previous comment.

User generated image
Avatar of weeph

ASKER

That's what I'm after.  Unfortunately in IS 2010 MS Sql server 2008 isn't part of the Redistributables.  

If only I could find how to add 1
Download the latest trial of Installshield 2013 and install it.  it comes with prerequisites for everything up to SQL 2012 or 2014.

Simply go find the .prq file for the one you need and copy it into the directory for your version of Installshield.  This is 100% guaranteed to work, I've done it for many prereqs.

You could author your own, but it is more work.  There are a ton of updated prereqs that come with the latest Installshield and they all work wonderfully with the older versions of Installshield.  You can get prereqs for more recent versions of the .net framework and SQL and many others this way.

Note:  if you right click on the prereq in Installshield and click "Edit" then it will open the prereq and you can then find where it is on your disk and what files are needed to make it work.  This is a good way to find out how to author your own if you need to.
> If only I could find how to add 1

use the link in my comment to find out how. Here's another:

http://helpnet.flexerasoftware.com/installshield19helplib/Default.htm#StartTopic=helplibrary/IHelpSetPrereqCustom.htm

It's not hard at all, basically all you need is the command-line parameters. In this case it's even easier since there's already prq for sql server (but not r2), the parameters are almost certainly the same, so all you need is to simply adjust the executable name.
The parameters are indeed the same, 100% confirmed.
Avatar of weeph

ASKER

Did as you suggested.  Checked it all out and it points to the file to install.

I am using the 'Microsoft SQL Server 2008 R2 Express RTM (x86).prq' prereq

I did add 1 Condition to it, User is running a particular OS - Windows 7 (Any)

I should explain that I copy the msi file to another PC with a new install of Win 7 32 bit to test.

I did realise 1 mistake I made and that was in prereq I had to change the Files to Include location to reflect the SQLEXPRWT_x86_ENU.exe location on the install PC.

Did an Edit, and I could see that it definitely points to the right location for the exe file.

Tried and install, but SQL didn't even appear.

Do I need to add SQL to redistributables?  If so how?  Or how do I make the prq part of the install?
Once you have created your own prq, you save it in the same directory where all other prerequisites are: program files\installshield\2010\setup prerequisites.

Then you will find it among the prerequisites at the screenshot in my comment 39653896 above. Select it, and that will include it.

Of course, besides editing the name etc., make sure you replace the actual file under the tab "files to include".

Then when it's done, you see what the installation is doing by looking at the detailed log of it. You will see whether the conditions were met, did it try to install the prerequisite, and what was the result.
Avatar of weeph

ASKER

I have done that, but I still don't see the SQL item in the Redistributables after I have saved the prereq.

It still only lists the originals in IS 2010.  Don't see any as per your screenshot.

I am using IS 2010. I had a go with 2013 using the same prereq but from \program files\installshield\2013\setup prerequisites, but SQL still doesn't show in Redist as it does in your screenshot.

What am I missing?
try this:

1. run Installshield Prerequisite Editor (under Istallshield 2010 Tools in Windows start menu)
2. without even specifying anything at all, save the file as test.prq in the default directory it suggests
3. open installshield, go to redistributables, like on the screenshot, and see if it's there.

I just did all that, and it worked. Try it out. If it works, see what was different.
...if you made it by cloning an existing prq, maybe you need to generate new GUID on the tab "Properties".
Installshield is also stubborn about refreshing that list.  Sometimes you have to drop the selector at the top down to "merge modules" and then switch it back just to force a refresh.  It'll work.
Avatar of weeph

ASKER

I created a new test.prq, saved it, checked to see if it was in \program files\installshield\2010\setupprerequisites & it was.

So I opened the SQL 1 that I wanted,ie Microsoft SQL Server 2008 R2 Express RTM (x86).prq, did a screenshot of each tab eg Properties, Files to Run etc and then created a new 1 and inserted each of the requirements from the screenshots.

Saved it as SQLServer2008R2.prq.  Checked it was in the correct folder.  Also looked at the prq help file which said to exit out of IS and restart.  So I did.  Still not there in redistributables.

What am I missing?  Driving me nuts. I'm not going to give up.
Avatar of weeph

ASKER

This is the GUID that was produced when I created the new 1.  Do I need to change it? If so how?
GUID.jpg
I suspect it must be in the list...probably named something you don't expect.  The screenshot looks like it the prq file is "MySetupPrerequisite"...check for that name in the list?
Avatar of weeph

ASKER

I've checked the help file which says in App Info, More Options, click Set Additional Properties..

Can't find More Options
So you created an empty prq, and it did show up in the list.

But when you "stuffed" it with real content for sql server, it disappeared. Right?

This is indeed very weird, so I would do this.

Create new fresh prq. See if it shows up.

Now populate one tab in it with parameters from sql server. Save. See if it's in the list.

If it is, do the same with 2nd tab.

If not, see what made the difference. There must be one piece that made the difference, that installshield did not like.
Avatar of weeph

ASKER

No the new 1 didn't show up in redist altho it was in the correct program files\ folder.

I've just created a new 1 called new.  Again it's in the correct folder ie program files\installshield\2010\setupprerequisites.

Exit out of IS, start IS there is no New.prq in redist
You must be putting it in the wrong folder, that's the only explanation if it is not showing.  Either that or you have the drop down set to only show merge modules or something.

I've done this dozens of times and vadim has walked you through every detail that I would have.
No idea. At this point, all I can offer is connecting to your computer using teamviewer, and looking there. If you want to do it, send email to vr at vadimrapp com . This would go outside of experts-exchange.
Avatar of weeph

ASKER

Ok.
ASKER CERTIFIED SOLUTION
Avatar of Vadim Rapp
Vadim Rapp
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of weeph

ASKER

You're amazing.  Thanks for all your help. Have started an .ism, did a build and got 26 errors.  Checked them and did as the help said. Now down to 6 errors.

I'm not giving up

Anyway that's another problem.

Once again thanks a bundle
Glad we could help. Besides the errors, don't forget to also run validation, and address everything. If validation tells difficult/confusing things, we are here for ya.

Speaking of installing sql server, if you are developer, there's often overlooked fact that in your application you can use SQL Server Compact as database provider, which offers most of the features of full SQL Server. With that you don't need to install SQL Server on client's workstation. You simply include the database file (same as you'd include Microsoft Access database file), and it works, with the .Net Framework acting as database server.