This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: System Search Returns Wrong Value - Installshield 2012 Spring
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
‎Feb 13, 2013
08:29 PM
System Search Returns Wrong Value - Installshield 2012 Spring
I have added a new System Search to get the InstallRoot of DotNet Framework from the registry. But its always returning wrong value.
Please find the details below
Added a System Search with the following potions.
1. Folder Path, as specified by a Registry Entry
2. Registry Root : HKEY_LOCAL_MACHINE
3. Registry Key : SOFTWARE\Microsoft\.NETFramework
4. Registry Value : Install Root
5. Store the value to Property : DOTNETROOT
Added another search to use the value of the above property
1. File Path, by Searching Folders
2. File Name : RegAsm.exe
3. Path Found in a previous search : The folder stored in DOTNETROOT
4. Store the value to Property : REGASMPATH
I have called the above 2 properties in a custom action to register dotnet dlls.
Now, I tried to install the setup in a Win 7 system
In the target system, Registry contains the following values
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework : InstallRoot = C:\Windows\Microsoft.NET\Framework64\
But on running the above setup, I'm always getting the value for InstallRoot as C:\Windows\Microsoft.NET\Framework\
Please help in fixing this issue.
Please find the details below
Added a System Search with the following potions.
1. Folder Path, as specified by a Registry Entry
2. Registry Root : HKEY_LOCAL_MACHINE
3. Registry Key : SOFTWARE\Microsoft\.NETFramework
4. Registry Value : Install Root
5. Store the value to Property : DOTNETROOT
Added another search to use the value of the above property
1. File Path, by Searching Folders
2. File Name : RegAsm.exe
3. Path Found in a previous search : The folder stored in DOTNETROOT
4. Store the value to Property : REGASMPATH
I have called the above 2 properties in a custom action to register dotnet dlls.
Now, I tried to install the setup in a Win 7 system
In the target system, Registry contains the following values
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework : InstallRoot = C:\Windows\Microsoft.NET\Framework64\
But on running the above setup, I'm always getting the value for InstallRoot as C:\Windows\Microsoft.NET\Framework\
Please help in fixing this issue.
(4) Replies
‎Feb 13, 2013
09:11 PM
This is by design. Your installer is a 32bit installer so Windows Installer is reading from the 32bit registry hive located under HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node.
‎Feb 13, 2013
09:42 PM
Thanks Christoper for the information.
Is there any way we can get the value based on 32 bit or 64 bit system ??
Do I need to define 2 set of properties? 1 for 32 bit and 1 for 64 bit ?
Regards,
Robin
Is there any way we can get the value based on 32 bit or 64 bit system ??
Do I need to define 2 set of properties? 1 for 32 bit and 1 for 64 bit ?
Regards,
Robin
Christopher Painter wrote:
This is by design. Your installer is a 32bit installer so Windows Installer is reading from the 32bit registry hive located under HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node.
‎Feb 14, 2013
12:01 AM
Thanks Christoper
I have solved the issue by checking the following option in the system search
Search 64-bit portion of the Registry
Robin
I have solved the issue by checking the following option in the system search
Search 64-bit portion of the Registry
Robin
‎Feb 14, 2013
06:00 AM
You may need two properties. I've had to do this from time to time.