> 1. I'd use this:
> http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvs05/html/cus
tom_pkg.asp
[quoted text clipped - 29 lines]
> > Many Many Many thanks for your help.
> > jeffmbdo
Yes, if you use that customisation it will show up as a prerequisite, and
you have the detection method there (IsMsiInstalled on the ProductCode of
the AccessRT MSI file) so it won't install it if it's already there.

Signature
Phil Wilson
[Microsoft MVP - Windows Installer]
> Sorry Phil
> I've finally caught up with you. (When I say caught up, i mean you're way
[quoted text clipped - 51 lines]
>> > Many Many Many thanks for your help.
>> > jeffmbdo
jeffmbdo - 01 Nov 2006 09:40 GMT
thanks again for the reply Phil.
Yes, i'd discovered the need for createobject instead of
wscript.createobject with the vbs for the shortcut. It may interest you to
know (although you probably already know, that it was not possible to update
the self-repair shortcut's targetpath property made by VS2005's setup project
- other shortuct properties such as description could be updated but not the
targetpath - had to delete shortcut and create new one. Also the vbscript
failed inside custom action if it used wscript.arguments(0). So, to pass the
TargetDir from the custom action I had to set it as an argument on the
shortcut made by the setup project - then get this from the shortcut before
deleing it and making a new one!)
Am i correct in not being able to run another msi from my setup project in a
customer action vbs script? i've tried .exec, .execute, .run. They all
produce the usual script failure message.
Jeff
> Yes, if you use that customisation it will show up as a prerequisite, and
> you have the detection method there (IsMsiInstalled on the ProductCode of
[quoted text clipped - 54 lines]
> >> > Many Many Many thanks for your help.
> >> > jeffmbdo
Phil Wilson - 03 Nov 2006 02:57 GMT
You can't run an MSI from a custom action in the execute sequence (which is
where VS puts them). That's why bootstrappers are pretty much the universal
way to deal with prerequisites.

Signature
Phil Wilson
[Microsoft MVP - Windows Installer]
> thanks again for the reply Phil.
> Yes, i'd discovered the need for createobject instead of
[quoted text clipped - 87 lines]
>> >> > Many Many Many thanks for your help.
>> >> > jeffmbdo
jeffmbdo - 01 Nov 2006 13:48 GMT
Hi Phil
Don't know if you can help, I hope so.
I'm getting error "Could not find prerequisite 'MS Access 2003 Runtime' in
path 'D:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bootstrapper'".
My Product.xml (located in 'D:\Program Files\Microsoft Visual Studio
8\SDK\v2.0\Bootstrapper\Packages\CustomPackage')is:
<?xml version="1.0" encoding="utf-8" ?>
<Product
xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper"
ProductCode="MS.Access.2003.Runtime.Package">
<RelatedProducts>
<DependsOnProduct Code="Microsoft.Windows.Installer.2.0" />
</RelatedProducts>
<PackageFiles>
<PackageFile Name="ACCESSRT.MSI"/>
<PackageFile Name="ACCESSRT.CAB"/>
</PackageFiles>
<Commands>
<Command PackageFile="ACCESSRT.MSI" Arguments="">
<ExitCodes>
<ExitCode Value="0" Result="Success"/>
<ExitCode Value="1641" Result="SuccessReboot"/>
<ExitCode Value="3010" Result="SuccessReboot"/>
<DefaultExitCode Result="Fail" String="GeneralFailure"/>
</ExitCodes>
</Command>
</Commands>
</Product>
Files AccessRT.mst and AccessRT.cab are located same folder as Product.xml.
My Package.xml (located in 'D:\Program Files\Microsoft Visual Studio
8\SDK\v2.0\Bootstrapper\Packages\CustomPackage\en' :
<?xml version="1.0" encoding="utf-8" ?>
<Package
xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper"
Name="DisplayName"
Culture="Culture">
<Strings>
<String Name="DisplayName">MS Access 2003 Runtime</String>
<String Name="Culture">en</String>
<String Name="GeneralFailure">A general error has occurred while
installing this package.</String>
</Strings>
<InstallChecks>
<MsiProductCheck
Property="IsMsiInstalled"
Product="{901C0409-6000-11D3-8CFE-0150048383C9}"/>
</InstallChecks>
<InstallConditions>
<BypassIf
Property="IsMsiInstalled"
Compare="ValueGreaterThan" Value="0"/>
</InstallConditions>
</MsiProductCheck>
</Package>
Thanks in advance,
Jeff
> Yes, if you use that customisation it will show up as a prerequisite, and
> you have the detection method there (IsMsiInstalled on the ProductCode of
[quoted text clipped - 54 lines]
> >> > Many Many Many thanks for your help.
> >> > jeffmbdo
Phil Wilson - 03 Nov 2006 02:55 GMT
I'm not well acquainted with the bootstrap, but you do need it at that
Visual Studio location so that it can copy it to the "cd image" being
created that contains the msi, manifest, prequisites etc.

Signature
Phil Wilson
[Microsoft MVP - Windows Installer]
> Hi Phil
>
[quoted text clipped - 130 lines]
>> >> > Many Many Many thanks for your help.
>> >> > jeffmbdo
jeffmbdo - 03 Nov 2006 13:22 GMT
Thanks for the reply Phil
I had the Installchecks and InstallConditions in the wrong xml file!
Its ok now, except when i run the setup it prompts with "Do You want to
install the Access Runtime". Is there any way to not prompt?
Jeff
> I'm not well acquainted with the bootstrap, but you do need it at that
> Visual Studio location so that it can copy it to the "cd image" being
[quoted text clipped - 133 lines]
> >> >> > Many Many Many thanks for your help.
> >> >> > jeffmbdo
MIlanB - 19 Nov 2006 09:54 GMT
Adding MS Access RunTime as prerequisite, will not show any Licence
Agreement, before installing accessrt.msi.
Maybe it is wrong... :)
Milan
> Thanks for the reply Phil
> I had the Installchecks and InstallConditions in the wrong xml file!
[quoted text clipped - 148 lines]
> > >> >> > Many Many Many thanks for your help.
> > >> >> > jeffmbdo
jeffmbdo - 20 Nov 2006 08:34 GMT
Thanks for the reply Milan,
No, its not the Access license agreement. Its a special bootstrapper
generated pre-requisite prompt: "do you want to install this <custom
package>?" that appears as soon as you runsetup.exe.
Jeff
> Adding MS Access RunTime as prerequisite, will not show any Licence
> Agreement, before installing accessrt.msi.
[quoted text clipped - 155 lines]
> > > >> >> > Many Many Many thanks for your help.
> > > >> >> > jeffmbdo
Dan - 27 Nov 2006 06:50 GMT
I know I'm jumping into this a little late, but I thought I'd add my 2
cents worth, as I've just dealt with it in my own application. My
decision was to install the ART with the application itself, by
creating a routine which detects the ART, downloads it from my server
and installs it if it's missing. This way, if a user is performing a
uninstall-reinstall, they don't have to go through the ART download
again, and I have a 500K setup program, which does well for some of my
dial-up clients.
Dan
> Thanks for the reply Milan,
> No, its not the Access license agreement. Its a special bootstrapper
[quoted text clipped - 161 lines]
> > > > >> >> > Many Many Many thanks for your help.
> > > > >> >> > jeffmbdo