views:

255

answers:

2

I have a ClickOnce application that won't run unless the client machine has .NET 3.5 SP1. When Stop() gets called on the Storyboard I'm running it crashes. After I installed SP1 on my client virtual machine everything works perfectly.

My problem is I'm deploying with ClickOnce, and I've made .NET 3.5 a prerequisite, but I don't know how to require SP1 as well.

Any ideas?

UPDATE

I've checked the prerequisites dialog and it's definitely not there. I'm running VS 2008 on a Win 7 box (64 bit).

+4  A: 

Go to Properties / Publish / Prerequisites and click on ".NET Framework 3.5 SP1" (instead of ".NET Framework 3.5") :-)

Nestor
@Nestor wow I swear I didn't see that last night at 2 AM =P That's what I get for being stubborn and trying to solve a problem while sleep deprived!
Joseph
it also happened to me plenty of times bro!
Nestor
Ok so I see this on one computer which is running Windows Server. However, my main dev computer is running Win 7 and it does NOT have this option. What am I missing???
Joseph
A: 

For this reason (and others), I don't give my end users the final Click Once install location. Instead, I send them to a page/site that runs various checks on their PC's before allowing them to Install the application (.NET Framework level is one such check).

UPDATE:

If you can require FullTrust for this application, you can retrieve REG_SZ at the HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 for "Version" and compare it against 3.5.30729.01 when your application starts up.

Brett Veenstra