سؤال

Using keyhelp.ocx to display popup HtmlHelp in a modern Visual Studio C++ application fails.

I get a COM exception with no sensible error code. Looking at the debug output, there seems to be an Access Violation behind the scenes.

هل كانت مفيدة؟

المحلول

Your executable is build with Data Execution Prevention enabled, via /NXCOMPAT. That's the default in Visual Studio.

keyhelp.ocx is built using ATL7, which is incompatible with DEP - see http://support.microsoft.com/kb/948468

You need to disable DEP (/NXCOMPAT:NO) for your executable or find an alternative to keyhelp.ocx (I don't know of one).

(Note that's it's possible to enforce DEP system-wide - your code will still fail on such machines.)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top