title: Can I use two incompatible versions of the same DLL in the same process?
body: <p>I'm using two commercial libraries that are produced by the same vendor, called VendorLibA and VendorLibB. The libraries are distributed as many DLLs that depend on the compiler version (e.g. VC7, VC8). Both libraries depend on a another library, produced by this vendor, called VendorLibUtils and contained in one DLL.</p>
  
  <p>The problem: VendorLibA uses a different version of VendorLibUtils than VendorLibB. The two versions are not binary compatible, and even if they were it would be a bad idea to use the wrong version.</p>
  
  <p>Is there any way I could use the two libraries under the same process?</p>
  
  <p><strong>Note:</strong> LoadLibrary can't solve this since my process is not that one that's importing VendorLibUtils.</p>
  
  <p><strong>EDIT:</strong> Forgot to mention the obvious, I don't have to source code for any of the commercial libraries and probably I will never have (<em>sigh</em>).</p>
  
  <p><strong>EDIT:</strong> The alternative btw, is to do this: <a href="https://stackoverflow.com/questions/312569/how-to-combine-gui-applications-in-windows">How to combine GUI applications in Windows</a></p>