PDA

View Full Version : DirectX7 (SDK) possibly not supported in latest video drivers?


Spaceman Spiff
05-20-2006, 10:23 PM
I'm looking to see if anyone else has run across this:


I've haved some old DirectDraw C++ builder components that've I kept around for putting together quick utilities. They compile against the DX7 sdk libs.

I put together a quick DirectDraw utility on my work PC, no problem. I took it home to continue adding some features to it and I noticed that DirectDraw failed to initialize.

My home PC is one I rebuilt a month ago due to a motherboard failure.

The following functions returned DDERR_UNSUPPORTED:

DirectDrawEnumerate
DirectDrawEnumerateEx - Unsupported and no callbacks ever made

DirectDrawCreate - worked actually

SetCooperativeLevel - Unsupported.

This is weird. Maybe it was a difference in the C++ builder environments. So I ran some other utility .exe made some time ago with the same DirectDraw components. Access Violation errors, and none of the DDraw stuff worked.


The most likely culprit is that when I rebuilt I upgraded my video card to a Nvidia 7900GT with driver version 84.21 - I'm guessing NVidia left out support for DDraw/DX7 unless in known application compatibility mode.

Interstingly enough, the home machine is running Win2k, and dual montiors, while my work machine is running winXp, with dual video cards/triple monitors - but the video cards are older ATI - a 9800pro and a 9250.

-------------------------------
I thought I would bring this up here, because some of you still use or have around DX7 code. If that's the case and you have similar troubles, please let me/us know.

Regards,

cliffski
05-21-2006, 01:42 AM
I run directx 7 code on a Geforce6800GT with the very latest (2 days old) drivers. No problems found here. Sounds like you need to totally uninstall your drivers (go back to VGA) and then reinstall them?

luggage
05-21-2006, 07:04 AM
I do remember there being some issues with (some) games regarding dual monitor setups. It's like it's trying to initialise DX on the non-primary display and it fails.

It was a while ago though so it may be the same problem.