The information in this article applies to:
SYMPTOMSModeless forms in Visual Basic ActiveX DLLs do not display in a Visual C++ application. Instead, a dialog box comes up informing the user that the client doesn't support Modeless Forms. CAUSE
In order to work properly, a Visual Basic modeless form requires access to the message loop of the client application. This access is provided by a COM object known as the Component Manager, which is integrated directly into the message loop of the client application. In order to determine if the client supports modeless forms, Visual Basic gets a reference to the message filter for the application, and calls IUnknown::QueryInterface for the Component Manager's primary interface. If this works, modeless forms can be supported. If it fails, the client cannot support modeless forms. RESOLUTION
To allow in-process components to detect at run time whether a client application supports the display of modeless forms, Visual Basic provides the Boolean NonModalAllowed property of the App object.
STATUSThis behavior is by design. REFERENCESFor additional information about Visual Basic Modeless Forms, please click the article number(s) below to view the article(s) in the Microsoft Knowledge Base: Q171978 Non-Modal Forms Support in Visual Basic DLLs Additional query words: VBASDK
Keywords : kbSDKVBA kbGrpDSO kbDSupport |
Last Reviewed: December 20, 1999 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |