Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

installing .NET framework on 32 and 64-bit systems


2 replies to this topic

Mariscal

Mariscal
  • Full Members
  • 50 posts

Posted 05 July 2007 - 19:47

Hello All,

I have set up a function within an application's installation that determines whether .NET framework is installed on the system, and if it is not found, it is installed. Now, I need to differentiate between 32 and 64-bit systems, calling the appropriate .NET exe if the framework is not found.

This seems straightforward enough: I use a conditional if...then statement with RegDBKeyExist, using "SOFTWARE\\Microsoft" to determine if it's a 32-bit system; and "SOFTWARE\\Wow6432Node" for 64-bit. But what I'm finding is that the installation prompts the user to install the framework twice if one installs on a 64-bit system, that somehow both of the RegDBKeyExist calls are returning TRUE, even though HKLM\SOFTWARE\Microsoft does not exist on a 64-bit Win 2k3 system. (If I install on a 32-bit system, it works correctly.)

What am I doing wrong?

Thanks for any help/suggestions anyone out there can offer.

Taco Bell

Taco Bell

    IS6 Expert

  • Moderators
  • 1,281 posts

Posted 09 July 2007 - 15:12

I have no experience with 64-bit systems, but I have incorporated the installation of the .NET Framework into my setups, so I'm wondering exactly what switches you're passing that redistributable?
user posted image

Mariscal

Mariscal
  • Full Members
  • 50 posts

Posted 11 July 2007 - 17:24

I changed my tack a bit, and got it to work--instead of using two if...then statements (one each in the case of 32 and 64-bit registry), I simply used an if...then...else, with the 64-bit registry check coming first. This prevents there from being two prompts to the user when installing on the 64-bit system. It's a bit of a fudge, true; I haven't actually determined why in the case of a 64-bit system it wasn't working with the previous setup. But it is working now, and so I am happy. wink.gif

Thanks for your response.