PRB: IApcStorage, IApcStream, and IApcGlobal Interfaces Only Works in Visual Basic

ID: Q244317


The information in this article applies to:
  • Microsoft Visual Basic for Applications (VBA) Software Development Kit (SDK), versions 6.0, 6.1


SYMPTOMS

When integrating Microsoft Visual Basic Applications (VBA) into applications written in languages other than Visual Basic, developers may receive errors such as APC_E_NOPERMISSION when calling methods on the IApcStorage, IApcStream, and IApcGlobal interfaces.


CAUSE

The IApcStorage, IApcStream, and IApcGlobal interfaces were developed for use within Visual Basic only. Visual Basic is currently unable to use the standard Structured Storage interfaces that VBA uses to load and save projects. The IApcStorage, IApcStream, and IApcGlobal interfaces provide automation capable wrappers so that VBA can be integrated into Visual Basic Applications.


RESOLUTION

For non-Visual Basic applications, the IPersistStorage and IPersistStream interfaces should be used instead of IApcStorage and IApcStream. The IApcGlobal interface wraps standard COM API's that should be used instead of IApcGlobal in non Visual Basic Applications.


STATUS

This behavior is by design.

Additional query words: VBASDK

Keywords : kbSDKVBA kbGrpDSO kbDSupport
Version : winnt:6.0,6.1
Platform : winnt
Issue type : kbprb


Last Reviewed: November 1, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.