
angela.zakaim1.5524945291685269E12 asked a question.
InstallShield 2014 Premier Edition
In the basic msi package we use InstallShield pre-defined check for PowerShell by searching the following registry:
HKLM\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngine
Value: PowerShellVersion
This registry entry does not exist in some Server even though a new Powershell version is installed.
Is there any InstallShield recommendation for this?
Or should I use following advice:
https://devblogs.microsoft.com/powershell/windows-powershell-2-0-deprecation/
=============================================================================
Installation Checks for Windows PowerShell 2.0
You may also have a legacy application that checks for the existence of Windows PowerShell on the box via the registry, particularly for the existence of HKLM:\Software\Microsoft\Windows\PowerShell\1\PowerShellEngine. As long as your application only targets supported versions of Windows and Windows Server (7/8.1/10 and Server 2008R2/2012/2012R2/2016), you can remove this validation altogether.
If not, you should instead check for the existence of the file %systemroot%\system32\WindowsPowerShell\v1.0\powershell.exe. If your installer absolutely requires a registry-based validations, you should first check for HKLM:\Software\Microsoft\PowerShell\3\PowerShellEngine (note the 3) before falling back to HKLM:\Software\Microsoft\PowerShell\1\PowerShellEngine.
=======================================================================================
Hi @angela_zakaim ,
Can you mention which server OS it doesn't have mentioned registry entry?There are two registry entries in general where powershell installation can be detected.
and
The later one as system search is accepted as an enhancement and will be fixed in future releases from InstallShield.
I would also recommend you to consider things given under Windows PowerShell 2.0 deprecation as well for future benefits.
Thanks,
Jenifer