Archive: .NET framework install


.NET framework install
Hey all,

I've got a .NET app I want to have available for download. Problem is, users can't run my app without the .NET framework installed. Since Mickey$oft hasn't come up with an elegant solution, I decided to come up with my own, with the help of NSIS. Incindentally, their solution was to package the 20MB .NET framework redist with my 200KB program!

I believe I understand enough of the scripting language to have my installer check for the presence of the framework (via reg. query or mscorlib.dll version) and download the redistributable .NET exe from MS with nsisdl.

My question is, how can I have my installer run again after the .NET Framework install reboots the machine?

And while I'm at it, what's the best way to exit my installer and run the framework installer?


Re .NET Framework
Hi,

I share your pain.

I'm trying to deploy a 700k app, small until I add the 20MB runtime. What a gyp.

Have you had anyluck in solving this problem?

Cheers,

Padgett


Write to the RunOnce registry key. You can find more info at: http://support.microsoft.com/default...EN-US;Q137367&

To execute the installer use Exec and then Quit or Abort. You might want to use ExecWait and wait for the return value to know if it succeeded or failed.


kichik,

Thanks. I was thinking of RunOnce, but I've not had the opportunity to use it before. I'm pretty sure the .NET framework will have something in there too, but now that I think of it, it really shouldn't be a problem for my setup to run while it's tidying up.

And how could I use ExecWait since the .NET install will ask for a reboot? If the user hits reboot from there, my installer will never get a return value. Plus, in that case, all my installer's files will be left laying around. Is there any way to tell where the current working directory is?

I'm thinking I could write a small file or reg key the first time through that saves the current working directory and whether the .NET install was attempted. If on the second time through, the file exists and .NET still isn't on the machine, throw an error. Does that sound like the way to go?


I am sure there is some way telling the installer not to reboot and let you do the reboot. You just need to find this way :)

I'm thinking I could write a small file or reg key the first time through that saves the current working directory and whether the .NET install was attempted. If on the second time through, the file exists and .NET still isn't on the machine, throw an error. Does that sound like the way to go?
Does the installer delete itself? If it does, then it should work, but I think it will be better if you make it not reboot.