Add notes on testing the control

This commit is contained in:
Adam Demasi 2022-11-14 12:04:46 +10:30
parent 0f4fa75ced
commit aa6a614273
No known key found for this signature in database
GPG key ID: 5D3B26B3D58C7D91

View file

@ -19,7 +19,7 @@ You will need to install:
* C++ ATL for v141 build tools (x86 & x64)
* C++ MFC for v141 build tools (x86 & x64)
If building on XP, you will need to install [Visual Studio 2010](https://my.visualstudio.com/Downloads?q=Visual%20Studio%202010&pgroup=).
If building on XP, use [Visual Studio 2010](https://my.visualstudio.com/Downloads?q=Visual%20Studio%202010&pgroup=) instead (the last version that runs on XP). The solution is compatible with 2010 and up.
* [Visual Studio 2008](https://my.visualstudio.com/Downloads?q=Visual%20Studio%20Express%202008%20with%20Service%20Pack%201&pgroup=) for compiling a build that works on XP RTM and 2000 SP4 - not required if you only want to build for XP SP2 and later
* [NSIS](https://nsis.sourceforge.io/)
@ -27,7 +27,20 @@ In `activex/build/` you will need to download the following additional files:
* A copy of updroots.exe, which you can extract from [this update](http://download.windowsupdate.com/d/msdownload/update/software/secu/2015/03/rvkroots_3f2ce4676450c06f109b5b4e68bec252873ccc21.exe) using 7-Zip or extract.exe.
For debugging, if running on XP with IE8, install [Utilu IE Collection](https://www.utilu.com/iecollection/). IE6/IE7 is much more useful for debugging the native code, because of its simplistic single-process model. Visual Studio is able to launch it and directly attach to the relevant process in question.
### Testing
For debugging, if running on XP with IE8, install [Utilu IE Collection](https://www.utilu.com/iecollection/). IE6/IE7 is much more useful for debugging the native code, because of its simplistic single-process model. Visual Studio is able to launch it and directly attach to the process the code is running in.
To configure the debugger:
1. Right click LegacyUpdateOCX in the Solution Explorer → Properties
2. In the Debugging tab, set the Command field to:
* For system IE install: `$(ProgramW6432)\Internet Explorer\iexplore.exe`
* For Utilu IE6 RTM: `$(ProgramW6432)\Utilu IE Collection\IE600\iexplore.exe`
* For Utilu IE6 SP2: `$(ProgramW6432)\Utilu IE Collection\IE600XPSP2\iexplore.exe`
* For Utilu IE7: `$(ProgramW6432)\Utilu IE Collection\IE700\iexplore.exe`
3. Set the Command Arguments field to `http://legacyupdate.net/windowsupdate/v6/`, or any other URL you want to use for debugging
4. If running on XP, in the Debugger tab, set Register Output to Yes.
If running on Vista or later, this will throw a permission denied error due to UAC. Youll need to manually register the control using `regsvr32 LegacyUpdateOCX.dll` in an administrator command prompt.
## Disclaimer
The existence of this project shouldnt be taken as an endorsement to continue using unsupported OSes. You should stick to a supported OS such as Windows 10 or 11 (or, try Linux?!). However, this service exists anyway in recognition that using these OSes is sometimes necessary to run legacy hardware/software, or just interesting to play around with.