I want to run a modern program (Opera latest) on Windows Vista. However since it requires Windows 7 at minimum it's attempting to use procedures in Kernel32.dll that don't exist in the Vista version of Kernel32.dll.

A work around I thought of is to get a Kernel32.dll (and whatever other DLLs are required) from Windows 7 and somehow instruct Opera use the procedures from them instead.

How can this be done?

  • It’s kernel32.dll, with 2 e. Also, not possible at all. – Daniel B Sep 8 '17 at 21:16
  • What you want will not be possible. If you replace the dll one of two things will happen Windows will fail to boot or you will have to replace the next unsupportable dll that Opera uses. Eventually you will cause Vista not to boot – Ramhound Sep 8 '17 at 21:36
  • Could you install Windows 7 in a Virtual Machine and run the latest Opera from inside the VM? – AlainD Sep 8 '17 at 22:27
  • 1
    @Ramhound: Just curious, but could you put a Windows 7 kernel32.dll into the Opera folder? Then when the Opera application loads it doesn't need to go to %windir% to find it and can (in theory) use the local version. This may not work because kernel32.dll may be resident in memory, but its worth a shot. – AlainD Sep 8 '17 at 22:29
  • 1
    Kernel32.dll is one of those critical DLLs that come as a matched set. If the versions don't match nothing works. If they were upgraded there would be a whole list of problems to be solved. What you are proposing would work for some DLLs but not for Kernel32. Also you have no assurance that Kernel32 is the only problem. – LMiller7 Sep 9 '17 at 3:18

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.