The Microsoft article
Application Registration explains registration of applications on Windows.
The installers of all applications developed by IDM Computer Solutions, Inc. do that application registration.
What must be taken into account during installation process for correct application registration:
- Bit width of Windows - 32-bit or 64-bit - on which the application is installed.
The bit width of Windows can be seen in Windows Control Panel - System which can be opened since Windows 95 by pressing Win+Break (pressing and holding Windows key and additionally pressing key Break (German: Pause) which on notebooks often requires pressing additionally the key Fn for Break key code). 32-bit Windows does not show any information about bit width in this window. 64-bit Windows display 64 in block with operating system information.
The bit width of the processor does not matter. On a computer with a 64-bit processor there can be installed nevertheless 32-bit Windows which means 64-bit applications can't be used although the CPU would support them.
- Bit width of application
Only 32-bit applications can be installed on 32-bit Windows. But it is possible to install 32- or 64-bit applications on 64-bit Windows.
The bit width of the application on 64-bit Windows determine to which registry keys the application has access according to Microsoft article Registry Keys Affected by WOW64 (WOW = Windows on Windows).
- Installation for current user only or all users
An installation done for current user only does not require an elevation to a user account with enhanced privileges which means everyone can install the application just for usage by own user account. This means write access is only possible to HKEY_CURRENT_USER registry hive for the installer.
An installation for all users requires either administrator privileges (user account has administrator rights) or elevation to special user account Trusted Installer (Windows Vista and later Windows) with a user prompt if the application should be really installed with the enhanced privileges the Trusted Installer account has. This means write access is also possible to HKEY_LOCAL_MACHINE registry hive for the installer.
- Installation folder
By default 32-bit applications on 32-bit Windows and 64-bit applications on 64-bit Windows are installed to %ProgramFiles% which expands on Windows Vista and later Windows usually to C:\Program Files.
By default 32-bit applications on 64-bit Windows are installed to %ProgramFiles(x86)% which expands on 64-bit Windows Vista and later 64-bit Windows usually to C:\Program Files (x86).
But the user installing an IDM Computer Solutions, Inc. purchased application has the possibility to specify during installation any other installation directory than the default which I always use on my computers simply to have them all installed in same directory on all of my computers.
- Name of executable file
Sometimes the name of the executable file depends on bit width of the application. For example 32-bit UltraEdit has uedit32.exe while 64-bit UltraEdit has as file name uedit64.exe.
However, the application registration must be done with the name of the executable of the application.
There are 4 different possible keys on which an application can be registered in Windows registry.
- HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\App Paths
is for 32-bit applications on 32-bit Windows or 64-bit applications on 64-bit Windows installed for all users.
- HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\App Paths
is for 32-bit applications on 64-bit Windows installed for all users.
- HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\App Paths
is for 32-bit applications on 32-bit Windows or 64-bit applications on 64-bit Windows installed for current user only.
- HKEY_CURRENT_USER\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\App Paths
is for 32-bit applications on 64-bit Windows installed for current user only.
The application is registered by adding to the appropriate registry key one more key with name of the executable file with the default string of this key being file name of executable with full path. Optionally one more string value can be added with name
Path containing only the path to the application's executable. The installers of IDM applications add the
Path string value, too.
UltraCompare, UltraEdit, UEStudio, UltraSentry and UltraFinder use those application registration information to detect existence of other IDM applications.
Example registry file for manually registering 64-bit UltraCompare installed on a 64-bit Windows for all users with using default installation folder with program files folder for 64-bit Windows applications being located on drive C: as on usual Windows installations.
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\App Paths\uc.exe]
@="C:\\Program Files\\IDM Computer Solutions\\UltraCompare\\uc.exe"
"Path"="C:\\Program Files\\IDM Computer Solutions\\UltraCompare\\"
[HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\App Paths\uc.exe]
@="C:\\Program Files\\IDM Computer Solutions\\UltraCompare\\uc.exe"
"Path"="C:\\Program Files\\IDM Computer Solutions\\UltraCompare\\"
The second key with
Wow6432Node\ makes sure that even a 32-bit UltraEdit can detect and run 64-bit UltraCompare on 64-bit Windows Server 2008, Windows Vista, Windows Server 2003, and Windows XP on which
Microsoft\Windows\CurrentVersion\App Paths is just redirected and not shared as on Windows 7 and Windows Server 2008 R2 and later Windows versions.
Copying the 8 lines above into a text file, saving the file for example as
RegisterUltraCompare.reg after adapting all paths, file names and keys according to the criteria listed above and double clicking this registry file to import into Windows registry results in making the application registration manually.
The installers of the IDM products add some more registry keys to Windows registry. But the application registration under
App Paths is the absolute minimum required for the IDM applications to detect other installed IDM applications.
To be continued ...