FIX: Link Failures with Non-Default Calling Conventions

ID: Q156398


The information in this article applies to:
  • Microsoft Transaction Server, versions 1.0, 1.1


SYMPTOMS

If the default calling convention for the compiler you are using is something other than __cdecl, you will receive link errors when you use the GetObjectContext and SafeRef functions.


CAUSE

The function prototypes for GetObjectContext and SafeRef are not explicit in their calling conventions.


STATUS

Microsoft has confirmed this to be a problem in Microsoft Transaction Server version 1.0. This problem was corrected in Microsoft Transaction Server version 1.1.


MORE INFORMATION

The following function calls


   extern HRESULT GetObjectContext (IObjectContext** ppInstanceContext);
   extern void * SafeRef(REFIID rid, IUnknown* pUnk); 
Have been changed to:

   extern HRESULT __cdecl GetObjectContext (IObjectContext**
   ppInstanceContext);
   extern void* __cdecl SafeRef(REFIID rid, IUnknown* pUnk); 


REFERENCES

For information on obtaining version 1.1, please see the following article the Microsoft Knowledge Base:

Q168031 How to Obtain Microsoft Transaction Server Version 1.1

Additional query words: nondefault call

Keywords : kbprg kbusage kbMTS kbMTS100bug kbMTS110fix kbGrpCom kbDSupport kbBug
Version : winnt:1.0,1.1
Platform : winnt
Issue type : kbbug


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