NODUALINTERFACE Entry is Placed in Registry by VFP 5.0

Last reviewed: November 18, 1997
Article ID: Q158765
5.00 WINDOWS kbsetup kbusage kbinterop

The information in this article applies to:

  • Microsoft Visual FoxPro for Windows, version 5.0

SUMMARY

Some ActiveX controls can support early binding, that is, where the control supports a dual interface (a combination of an IDispatch and a Vtable interface). If an ActiveX control registers itself incorrectly as supporting a dual interface, then it might produce incorrect error messages. These errors may include 'Invalid Page Faul't errors under Windows 95 or 'Access Violation' errors under Windows NT.

MORE INFORMATION

Some ActiveX controls might be incorrectly registered as supporting Vtable binding. This might cause an error when you use an ActiveX control. Visual FoxPro 5.0 addresses this error in the development environment by adding the "NoDualInterface" key to the registry. This key lists three known controls that can register themselves as supporting Vtable binding. Note that there may be other Activex controls that register themselves as supporting Vtable binding when, in fact, they do not. If you add them to this list, they function properly.

When Visual FoxPro is used to build an .exe file, it does not add the NoDualInterface key to the registry file upon installation. If an ActiveX control does not perform correctly, use the SYS(2333) function to enable or disable dual-interface support of an ActiveX control.

You can also build a .reg file and run it as a post-executable when you install the .exe file. This adds the "NoDualInterface" key to the registry.

Or, you can write a program in Visual FoxPro that updates the registry.

REFERENCES

For more information about how to write a program in Visual FoxPro to update the registry, please see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q135398
   TITLE     : How To Write to the Windows Registry Using API Calls

For more information about early binding, please see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q138138
   TITLE     : Three Binding Types (Late, ID, Early) Possible in VB
               for Apps

Currently, Visual FoxPro 5.0 is the only Microsoft product that supports the early Vtable binding of an ActiveX control. To disable dual-interface functionally of an ActiveX control, use the SYS(2333) function.


KBCategory: kbsetup kbusage kbinterop
KBSubcategory: FxsetupGeneral
Additional reference words: 5.00 kbdse VFoxWin
Keywords : FxsetupGeneral kbinterop kbsetup kbusage
Version : 5.00
Platform : WINDOWS


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: November 18, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.