title: Get Windows 7, InstallShield, MDAC 2.7, and (shudder) VB6 playing nicely
body: <p><strong>Short version:</strong><br>
  When I moved to Win7, I manually removed the MDAC 2.7 lines from my .ISM module, built it, and installed my software. It seems to work. Can I trust it?</p>
  
  <p><strong>Longer version:</strong>
  We have just gone from XP to Windows 7. The software we deliver is C# (.NET 4 framework), targeting XP and Windows 7. It contains a few older COM modules, one of which is written in VB6. (Yes, I would love to rewrite this in a modern technology, but that's not an option at this point.)</p>
  
  <p>I use InstallShield 2010 to build the installer for this package. Building this installer on XP worked with no problems. When I try on Windows 7, it wants MDAC 2.7 as a prerequisite merge module. Microsoft doesn't allow you to download 2.7 anymore, and I'm not going to get it from "Sharewarez R'us" sites. </p>
  
  <p>The error InstallShield gave me when it couldn't find the merge module was: <code>File not found. An error occured merging Module 'MDAC27ENU...'</code></p>
  
  <p>From what I've read on the web, Windows 7 has the latest-greatest MDAC (now renamed WDAC) already installed. On a whim, I manually deleted the MDAC dependencies from the .ISM, built and installed, and my software <strong>seemed</strong> to run just fine. </p>
  
  <p>What I think is happening is Win7 is noticing that something in VB6 is using MDAC and the OS is supplying the latest-greatest and it just works. I no longer need the merge module because Windows 7 has WDAC built in. (Can it really be that simple?)</p>
  
  <p>My main question is: can I trust it?</p>
  
  <p>My secondary question is: What about XP deployments? They will still need MDAC 2.7... Does that indicate I can't build on Windows 7 to target XP if I require MDAC 2.7?  Please point me in the right direction. Thanks.</p>