openvpn-build
openvpn-build copied to clipboard
Value of exe_path in registry not updated during reinstall
If OpenVPN is reinstalled to a different path, the base directory for OpenVPN in the registry changes, but value for exe_path does not. This means that OpenVPNService is unable to find openvpn.exe when it tries to launch OpenVPN connections, which is evident from the Application EventLog. The problem can be reproduced with both interactive and silent (/S) installs using the official OpenVPN 2.4_beta1 installers.
A full "uninstall" then "install" procedure works around this problem, as the "HKLM:\SOFTWARE\OpenVPN" key is removed entirely during uninstall.
should we fail during reinstall ? and suggest to remove another installed openvpn fisrt ?
I think we could simply rewrite the registry values as necessary.
it might lead to undetermined situation.
- installer "A" is installed to c:\openvpn1
- installer "B" is installed to C:\Program Files (registry changed)
- uninstalled "B" (registry removed)
- installer "A" is somewhat broken
I would like to keep it simple and predictable, it is quite complicated already
I think we only need make sure the last installed version works, so if the following is avoided, we are ok:
Install A --> Install B --> uninstall A --> B is broken (can this happen?)
Refusing to install only if the current installed path in registry mismatches with the new choice is probably an acceptable way out. And always rewrite registry.
The only way to truly manage multiple simultaneous installations would be to have separate sets of registry keys for each, and to be able to point OpenVPNService and OpenVPN-GUI to the correct registry key. I think this adds too much complexity for such a rare(?) use-case.
I think @selvanair 's suggestion makes sense.
NSIS installer is not supported anymore. Closing issues.