Click Once and .Net 3.0 as Prerequisite

A

Allan Bredahl

Hi All


I'm trying to publish my win application to our web server using the Publish
functionallity in VS 2005.


The problem is that I'm using a couple of dll's from the 3.0 Framework,
which makes it impossible to install the app on machines not having 3.0
installed.

You can set up Framework 2.0 as a prerequisite under the publish options,
but not 3.0, which is what I'm missing.


How can you add 3.0 as a prerequisite alongside 2.0 ??

Thanks in advance

Allan Bredahl
 
R

RobinS

Did you try copying the dlls over to a subfolder of your solution, adding a
reference to them there instead of using the default .Net reference, and
marking them as CopyLocal=True?

If that doesn't work, you can create your own prerequisite. If you have a
redistributable from Microsoft that you can distribute, you can create your
own bootstrap manifest -- there is a bootstrap manifest generator out there
that will do this for you and it gets added to the prerequisites in Visual
Studio where you can select it.

If you need a link for that, post back and I'll look it up; it's on my
other computer. Or go buy Brian Noyes' book about ClickOnce deployment,
which is where I got it.

Robin S.
 
A

Allan Bredahl

Hi

Thanks a lot for the info.


I found the .NetFX3 bootstrapper that came with the SDK, and I have got it
loaded into VS2005.

BUT, I get an error when I try to use it saying that it is missing Public
Keys for the installers. When looking into the product.xml of the
bootstrapper it is missing a public key for the two .exe files, and I really
don't know what to do about that ??

Allam Bredahl
"
 
R

RobinS

Did you create the bootstrapper manifest? Try running the bootstrap
manifest generator -- you point it to the redistributable, and it creates
the manifest and adds the option to your Visual Studio / Publish /
Prerequisites menu.

You might also want to select Windows Installer 3.1 (or 4.0 if it's there;
it's not there even on my Vista machine) so it throws in the windows
installer in case the machine on which you are installing it does not have
Windows Installer (although it would have to be pretty old).

Here's where the BMG is:

http://www.codeplex.com/bmg

Good luck.
Robin S.
 
A

Allan Bredahl

The bootstrapper for .net 3.0 comes with the SDK, but I just can't use it
since it is incomplete (The keys for the .exe's are missing)
I have been trying to use the Manifest Builder before, but didn't quite get
the hang of it. Can't see how to make the checks if the framework is
allready installed, and can't see how to point it to the redistributable at
the MS site...

I'll have a look into i


Allan Bredahl
 
R

RobinS

I didn't point mine at the redistributable on Microsoft.com, I copied it
down locally and in ClickOnce, said "deploy this from my server". Then when
I do the Publish, it copies it to my web server.

If you have the .exe file, you can run the Bootstrapper Manifest builder
and point it at that .exe file and tell it to create the bootstrapper
manifest. It adds an entry to Visual Studio for you that you can select as
a preprequisite.

What Manifest Builder are you using? Are you using the one I pointed you
to? Is it the same one? It actually puts the manifest wherever it needs to
go, IIRC. If you need more help with this, post back and I'll give more
exact instructions; that's on my other computer (why is everything always
on the computer I'm not typing on?).

You don't need to check and see if .Net 3.0 is already installed; the
redistributable, when run, will do that. So you just need to package it in
as a prerequisite.

I am running XP, and have a couple of Virtual Machines (I use Cisco's free
VMware Server). I'm running IIS on my machine, and can host the ClickOnce
package, and run it in my VM and see it run. That's just one way to test it
without mucking up anybody.


Does that help?

Robin S.
-----------------------------------------------
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top