Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
951 B

  1. // Copyright (c) 1993-1999 Microsoft Corporation
  2. #ifndef _TIUTIL_H_
  3. #define _TIUTIL_H_
  4. // This is a special value that is used internally for marshaling interfaces
  5. #define VT_INTERFACE (VT_CLSID+1)
  6. #define VT_MULTIINDIRECTIONS (VT_TYPEMASK - 1)
  7. #define IfFailGo(expression, label) \
  8. { hresult = (expression); \
  9. if(FAILED(hresult)) \
  10. goto label; \
  11. }
  12. #define IfFailRet(expression) \
  13. { HRESULT hresult = (expression); \
  14. if(FAILED(hresult)) \
  15. return hresult; \
  16. }
  17. class PARAMINFO;
  18. HRESULT
  19. VarVtOfTypeDesc(
  20. IN ITypeInfo * pTypeInfo,
  21. IN TYPEDESC * pTypeDesc,
  22. OUT PARAMINFO * pParamInfo);
  23. HRESULT
  24. VarVtOfUDT(
  25. IN ITypeInfo * pTypeInfo,
  26. IN TYPEDESC * pTypeDesc,
  27. OUT PARAMINFO * pParamInfo);
  28. HRESULT VarVtOfIface(
  29. IN ITypeInfo * pTypeInfo,
  30. IN TYPEATTR * pTypeAttr,
  31. OUT PARAMINFO * pParamInfo);
  32. #endif //_TIUTIL_H_