VB6 on Win-10, multi-media control (MCI32.OCX) crashes Windows (BSOD) in IDE

129 Views Asked by At

... but the compiled application runs fine. This is a large (~500k LOC) mature application, which I've been maintaining for many years on Windows-10 with no unexplained issues. I just moved to a new computer (a Lenovo laptop) and installed all my stuff, including the VB6 IDE. This all went smoothly, so I loaded up the application and ran it within the IDE, resulting in an immediate BSOD. I narrowed down the crashing statement to a MMControl1.Command "Open" on the applications opening banner screen. The file it's supposed to open exists, and everything else is the same environmentally as the previous development machine.

Note that I've installed the VB6 IDE on at least a half-dozen Win-10 machines, and a couple of Win-11, with no problems, and in fact I've never BSODed any of these machines. I've also run the VB6 IDE in a Win-XP virtual machine on the problem computer, and (as expected) the application ran there with no issues. Again, the compiled program works fine even on the problem computer, and everything else in this large program does also in the IDE (no other use of the Multi-Media control, though).

Any ideas of what to try? Thanks!

2

There are 2 best solutions below

0
Mark Moulding On

Apparently solved. I have yet to extensively test this, but it appears that running in compatibility mode with a reduced color mode (I was using 65536 colors) leads to this crash. With this compatibility option turned off, I'm no longer getting BSOD crashes, and on this (much newer) laptop, the graphic performance of the IDE doesn't seem to be unduly affected.

0
Mark Moulding On

tl;dr: The problem was the drivers/BIOS, not Windows or the VB6 setup.

Actually really solved, this time. The above fix (turning off reduced color mode) did work, but the real problem turned out to be the drivers (and possibly the BIOS) on the laptop. It was a Lenovo ThinkPad E14, and in addition to the video problems (I found another application that would also BSOD, having nothing to do with VB6), USB-serial adapters essentially could not be used.

The serial adapter itself would work fine, but while any serial traffic was occurring, the USB keyboard and mouse would lurch, hang up, or drop clicks/characters to the extent that the computer was unusable. Updating the drivers was of no help. The problem existed equally with both FTDI and Prolific chip sets, but strangely not with the CH340 chip sets. (These are generally considered to be second-tier compared to the other two, but are becoming more prevalent.)

With no apparent solution (after several hours of Googling and trying things), I eventually abandoned the ThinkPad altogether and switched to a refurbished Dell Latitude 7480, which has worked perfectly. (Also half the cost, and a 3k screen to boot!)