⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tlbtypes.odl

📁 此源码为vb圣经编码
💻 ODL
📖 第 1 页 / 共 2 页
字号:
            [out] void**ppv);
    
        HRESULT CreateInstance( 
            [in] IUnknown *pUnkOuter,
            [in] REFIID riid,
            [out] void**ppvObj);
    
        HRESULT GetMops( 
            [in] MEMBERID memid,
            [out, retval] BSTR *pBstrMops);
    
        HRESULT GetContainingTypeLib( 
            [out] ITypeLib **ppTLib,
            [out,retval] UINT *pIndex);
    
        void ReleaseTypeAttr( 
            [in] TYPEATTRPtr pTypeAttr);
    
        void ReleaseFuncDesc( 
            [in] FUNCDESCPtr pFuncDesc);
    
        void ReleaseVarDesc( 
            [in] VARDESCPtr pVarDesc);
    }
    [
      uuid(00020412-0000-0000-C000-000000000046),
      odl
    ]
    interface ITypeInfo2 : ITypeInfo
    {
        HRESULT GetTypeKind( 
            [out,retval] TYPEKIND  *pTypeKind);
    
        HRESULT GetTypeFlags( 
            [out,retval] TYPEFLAGS  *pTypeFlags);
    
        HRESULT GetFuncIndexOfMemId( 
            [in] MEMBERID memid,
            [in] INVOKEKIND invKind,
            [out,retval] UINT  *pFuncIndex);
    
        HRESULT GetVarIndexOfMemId( 
            [in] MEMBERID memid,
            [out,retval] UINT  *pVarIndex);
    
        HRESULT GetCustData( 
            [in] REFGUID guid,
            [out,retval] VARIANT  *pVarVal);
    
        HRESULT GetFuncCustData( 
            [in] UINT index,
            [in] REFGUID guid,
            [out,retval] VARIANT  *pVarVal);
    
        HRESULT GetParamCustData( 
            [in] UINT indexFunc,
            [in] UINT indexParam,
            [in] REFGUID guid,
            [out,retval] VARIANT  *pVarVal);
    
        HRESULT GetVarCustData( 
            [in] UINT index,
            [in] REFGUID guid,
            [out,retval] VARIANT  *pVarVal);
    
        HRESULT GetImplTypeCustData( 
            [in] UINT index,
            [in] REFGUID guid,
            [out,retval] VARIANT  *pVarVal);
    
        HRESULT GetDocumentation2( 
            [in] MEMBERID memid,
            [in,defaultvalue(0)] LCID lcid,
            [in,defaultvalue(0)] BSTRPtr pbstrHelpString,
            [in,defaultvalue(0)] DWORDPtr pdwHelpStringContext,
            [in,defaultvalue(0)] BSTRPtr pbstrHelpStringDll);

        HRESULT GetAllCustData( 
            [out,retval] CUSTDATA  *pCustData);
    
        HRESULT GetAllFuncCustData( 
            [in] UINT index,
            [out,retval] CUSTDATA  *pCustData);
    
        HRESULT GetAllParamCustData( 
            [in] UINT indexFunc,
            [in] UINT indexParam,
            [out,retval] CUSTDATA  *pCustData);
    
        HRESULT GetAllVarCustData( 
            [in] UINT index,
            [out,retval] CUSTDATA  *pCustData);
    
        HRESULT GetAllImplTypeCustData( 
            [in] UINT index,
            [out,retval] CUSTDATA  *pCustData);
    };
    [
      uuid(00020405-0000-0000-C000-000000000046),
      odl
    ]
    interface ICreateTypeInfo : IUnknown
    {
        HRESULT SetGuid( 
            [in] REFGUID guid);
    
        HRESULT SetTypeFlags( 
            [in] UINT uTypeFlags);
    
        HRESULT SetDocString( 
            [in] LPWSTR pStrDoc);
    
        HRESULT SetHelpContext( 
            [in] DWORD dwHelpContext);
    
        HRESULT SetVersion( 
            [in] WORD wMajorVerNum,
            [in] WORD wMinorVerNum);
    
        HRESULT AddRefTypeInfo( 
            [in] ITypeInfo *pTInfo,
            [out,retval] HREFTYPE *phRefType);
    
        HRESULT AddFuncDesc( 
            [in] UINT index,
            [in] FUNCDESCPtr pFuncDesc);
    
        HRESULT AddImplType( 
            [in] UINT index,
            [in] HREFTYPE hRefType);
    
        HRESULT SetImplTypeFlags( 
            [in] UINT index,
            [in] INT implTypeFlags);
    
        HRESULT SetAlignment( 
            [in] WORD cbAlignment);
    
        HRESULT SetSchema( 
            [in] LPWSTR pStrSchema);
    
        HRESULT AddVarDesc( 
            [in] UINT index,
            [in] VARDESCPtr pVarDesc);
    
        HRESULT SetFuncAndParamNames( 
            [in] UINT index,
            [in] LPWSTRArrayPtr rgszNames,
            [in] UINT cNames);
    
        HRESULT SetVarName( 
            [in] UINT index,
            [in] LPWSTR szName);
    
        HRESULT SetTypeDescAlias( 
            [in] TYPEDESCPtr pTDescAlias);
    
        HRESULT DefineFuncAsDllEntry( 
            [in] UINT index,
            [in] LPWSTR szDllName,
            [in] LPOLESTR szProcName);
    
        HRESULT SetFuncDocString( 
            [in] UINT index,
            [in] LPWSTR szDocString);
    
        HRESULT SetVarDocString( 
            [in] UINT index,
            [in] LPWSTR szDocString);
    
        HRESULT SetFuncHelpContext( 
            [in] UINT index,
            [in] DWORD dwHelpContext);
    
        HRESULT SetVarHelpContext( 
            [in] UINT index,
            [in] DWORD dwHelpContext);
    
        HRESULT SetMops( 
            [in] UINT index,
            [in] BSTR bstrMops);
    
        HRESULT SetTypeIdldesc( 
            [in] IDLDESC *pIdlDesc);
    
        HRESULT LayOut( void);
    }
    [
      uuid(0002040E-0000-0000-C000-000000000046),
      odl
    ]
    interface ICreateTypeInfo2 : ICreateTypeInfo
    {
        HRESULT DeleteFuncDesc( 
            [in] UINT index);
    
        HRESULT DeleteFuncDescByMemId( 
            [in] MEMBERID memid,
            [in] INVOKEKIND invKind);
    
        HRESULT DeleteVarDesc( 
            [in] UINT index);
    
        HRESULT DeleteVarDescByMemId( 
            [in] MEMBERID memid);
    
        HRESULT DeleteImplType( 
            [in] UINT index);
    
        HRESULT SetCustData( 
            [in] REFGUID guid,
            [in] VARIANT *pVarVal);
    
        HRESULT SetFuncCustData( 
            [in] UINT index,
            [in] REFGUID guid,
            [in] VARIANT *pVarVal);
    
        HRESULT SetParamCustData( 
            [in] UINT indexFunc,
            [in] UINT indexParam,
            [in] REFGUID guid,
            [in] VARIANT *pVarVal);
    
        HRESULT SetVarCustData( 
            [in] UINT index,
            [in] REFGUID guid,
            [in] VARIANT *pVarVal);
    
        HRESULT SetImplTypeCustData( 
            [in] UINT index,
            [in] REFGUID guid,
            [in] VARIANT *pVarVal);
    
        HRESULT SetHelpStringContext( 
            [in] ULONG dwHelpStringContext);
    
        HRESULT SetFuncHelpStringContext( 
            [in] UINT index,
            [in] ULONG dwHelpStringContext);
    
        HRESULT SetVarHelpStringContext( 
            [in] UINT index,
            [in] ULONG dwHelpStringContext);
    
        HRESULT Invalidate( void);
    
        HRESULT SetName( 
            [in] LPWSTR szName);
    
    }
    [
      uuid(00020406-0000-0000-C000-000000000046),
      odl
    ]
    interface ICreateTypeLib : IUnknown
    {
        HRESULT CreateTypeInfo( 
            [in] LPWSTR szName,
            [in] TYPEKIND tkind,
            [out,retval] ICreateTypeInfo **ppCTInfo);
    
        HRESULT SetName( 
            [in] LPWSTR szName);
    
        HRESULT SetVersion( 
            [in] WORD wMajorVerNum,
            [in] WORD wMinorVerNum);
    
        HRESULT SetGuid( 
            [in] REFGUID guid);
    
        HRESULT SetDocString( 
            [in] LPWSTR szDoc);
    
        HRESULT SetHelpFileName( 
            [in] LPWSTR szHelpFileName);
    
        HRESULT SetHelpContext( 
            [in] DWORD dwHelpContext);
    
        HRESULT SetLcid( 
            [in] LCID lcid);
    
        HRESULT SetLibFlags( 
            [in] UINT uLibFlags);
    
        HRESULT SaveAllChanges( void);
    
    }
    [
      uuid(0002040F-0000-0000-C000-000000000046),
      odl
    ]
    interface ICreateTypeLib2 : ICreateTypeLib
    {
        HRESULT DeleteTypeInfo( 
            [in] LPWSTR szName);
    
        HRESULT SetCustData( 
            [in] REFGUID guid,
            [in] VARIANT *pVarVal);
    
        HRESULT SetHelpStringContext( 
            [in] ULONG dwHelpStringContext);
    
        HRESULT SetHelpStringDll( 
            [in] LPWSTR szFileName);
    }

    typedef enum
    {
      REGKIND_DEFAULT,
      REGKIND_REGISTER,
      REGKIND_NONE
    } REGKIND;

    typedef struct
    {
        BSTR szName;
        VariantType vt;
    } PARAMDATA;

    typedef [public] long PARAMDATAArrayPtr;

    typedef struct
    {
      BSTR szName;
      PARAMDATAArrayPtr ppData;
      DISPID dispid;
      UINT iMeth;
      CALLCONV cc;
      UINT cArgs;
      USHORT wFlags;
      VariantType vtReturn;
    } METHODDATA;

    typedef [public] long METHODDATAArrayPtr;

    typedef struct
    {
        METHODDATAArrayPtr pmethdata;
        UINT cMembers;
    } INTERFACEDATA;

    [dllname("oleaut32.dll")]
    module OleAut32
    {
      [entry("CreateTypeLib2")] HRESULT CreateTypeLib2([in] SYSKIND syskind, [in] LPWSTR szFile, [out,retval] ICreateTypeLib2 **ppctlib);
      [entry("LoadTypeLib")] HRESULT LoadTypeLib([in] LPWSTR szFile, [out,retval] ITypeLib** pptlib);
      [entry("LoadTypeLibEx")] HRESULT LoadTypeLibEx([in] LPWSTR szFile, [in, defaultvalue(2)] REGKIND RegKind, [out,retval] ITypeLib** pptlib);
      [entry("LoadRegTypeLib")] HRESULT LoadRegTypeLib([in] VBGUID* rlibid, [in] USHORT wVerMajor, [in] USHORT wVerMinor, [in] LCID lcid,  [out,retval] ITypeLib** pptlib);
      [entry("RegisterTypeLib")] HRESULT RegisterTypeLib([in] ITypeLib* ptlib, [in] LPWSTR szFullPath, [in] LPWSTR szHelpDir);
      [entry("UnRegisterTypeLib")] HRESULT UnRegisterTypeLib([in] VBGUID* rlibid, [in] USHORT wVerMajor, [in] USHORT wVerMinor, [in] LCID lcid, [in] SYSKIND SysKind);
      [entry("QueryPathOfRegTypeLib")] HRESULT QueryPathOfRegTypeLib([in] VBGUID* rlibid, [in] USHORT wVerMajor, [in] USHORT wVerMinor, [in] LCID lcid, [out,retval] BSTR* lpbstrPathName);
      [entry("LHashValOfNameSys")] ULONG LHashValOfNameSys([in] SYSKIND SysKind, [in] LCID lcid, [in] LPWSTR szName);
      [entry("ClearCustData")] void ClearCustData([in] CUSTDATA* pCustData);
      [entry("CreateDispTypeInfo")] HRESULT CreateDispTypeInfo([in] INTERFACEDATA* piData, [in] LCID lcid, [out,retval] ITypeInfo** pptinfo);
      [entry("CreateStdDispatch")] HRESULT CreateStdDispatch([in] stdole.IUnknown* punkOuter, [in] PVOID pvThis, [in] ITypeInfo* ptinfo, [out, retval] IUnknown** ppunkStdDisp);
      [entry("DispGetIDsOfNames")] long DispGetIDsOfNames([in] ITypeInfo* ptinfo, [in] LPOLESTRArrayPtr rgszNames, [in] UINT cNames,[in] DISPIDArrayPtr rgDispId);
      [entry("DispGetParam")] long DispGetParam([in,out] VBDISPPARAMS *pDispParams, [in] UINT Position, [in] VariantType vtTarg, [in, out] VARIANT* pvarResult, [in, out] UINT* puArgErr);
      [entry("DispInvoke")] long DispInvoke([in] PVOID pvThis, [in] ITypeInfo* ptinfo, [in] DISPID dispIdMember, [in] WORD wFlags, [in, out] VBDISPPARAMS *pDispParams, [in] VARIANTPtr pVarResult, [in, out] VBEXCEPINFO *pExcepInfo, [in, out] UINT *puArgErr);
      [entry("GetRecordInfoFromTypeInfo")] HRESULT GetRecordInfoFromTypeInfo([in] ITypeInfo* ptinfo, [out, retval] IRecordInfo** ppRecInfo);
      [entry("GetRecordInfoFromGuids")] HRESULT GetRecordInfoFromGuids([in] VBGUID* rGuidTypeLib, [in] ULONG uVerMajor, [in] ULONG uVerMinor, [in] LCID lcid, [in] VBGUID* rGuidTypeInfo, [out, retval] IRecordInfo** ppRecInfo);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -