[ uuid(CBD8FFC2-ACD0-4983-A5BE-E0965E780889), version(1.0) ] library JoinDecl { // Referenced type libraries importlib("JoinDecl.tlb"); // forward declared typedef short USHORT; typedef LONG ULONG; typedef LONG PVOID; typedef LONG LPANSISTR; typedef LONG UINT; struct SafeArray1d { USHORT cDims; USHORT fFeatures; ULONG cbElements; ULONG cLocks; PVOID pvData; ULONG cElements; LONG lLbound; }; [ dllname("oleaut32.dll") ] module OleAut32 { BSTR SysAllocStringByteLen([in] LPANSISTR psz, [in] UINT iLen); }; [ dllname("kernel32.dll") ] module Kernel32 { void CopyMemory([in] void* pDst, [in] void* pSrc, [in] LONG ByteLen); void ZeroMemory([in] void* pDst, [in] LONG ByteLen); }; [ ] module OLEErrors { [entry(0x40000000)] LONG E_NOINTERFACE = -2147467262; }; };