Hello, We installed a new MSVC++ SDK Windows XP SP2 SDK Release Notes and tried to use it with MSvc++ 6.0. We had some problems with uuid.lib, which we replaced by MSvc++ 6.0 uuid.lib. Now some of our COM interfaces does not work anymore. First we tried to find out, whats the problem maker: as long as i do not use the include directory of the new sdk, everythings works fine! so the problem maker is a include file! now we tried to brake down what kind of interfaces cannot be created anymore (QueryInterface returns : DISP_E_BADVARTYPE). interfaces containing HRESULT GetDragData ( [in] FORMATETC *pformatetc, [in,out] STGMEDIUM *pmedium ); cannot be created anymore. Now we found a difference in objidl.h : objidl.h in MSvc++6.0 has: typedef struct tagSTGMEDIUM { DWORD tymed; /* [switch_is][switch_type] */ union { /* [case()] */ HBITMAP hBitmap; /* [case()] */ HMETAFILEPICT hMetaFilePict; /* [case()] */ HENHMETAFILE hEnhMetaFile; /* [case()] */ HGLOBAL hGlobal; /* [case()] */ LPOLESTR lpszFileName; /* [case()] */ IStream __RPC_FAR *pstm; /* [case()] */ IStorage __RPC_FAR *pstg; /* [default] */ /* Empty union arm */ } ; /* [unique] */ IUnknown __RPC_FAR *pUnkForRelease; } uSTGMEDIUM; while objidl.h in the new SDK contains: typedef struct tagSTGMEDIUM { DWORD tymed; /* [switch_is][switch_type] */ union { /* [case()] */ HBITMAP hBitmap; /* [case()] */ HMETAFILEPICT hMetaFilePict; /* [case()] */ HENHMETAFILE hEnhMetaFile; /* [case()] */ HGLOBAL hGlobal; /* [case()] */ LPOLESTR lpszFileName; /* [case()] */ IStream *pstm; /* [case()] */ IStorage *pstg; /* [default] */ /* Empty union arm */ } ; /* [unique] */ IUnknown *pUnkForRelease; } uSTGMEDIUM; there is no RPC_FAR * anymore!!! any ideas?why has MS removed the RPC_FAR ? -- mit freundlichen Gren/best regards mario semo