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

📄 mstve.idl

📁 墨香最新私服
💻 IDL
📖 第 1 页 / 共 5 页
字号:
//------------------------------------------------------------------------------
// File: MSTve.idl
//
// Desc: IDL source for MSTvE.dll
//
// Copyright (c) 1999-2001, Microsoft Corporation.  All rights reserved.
//------------------------------------------------------------------------------

//
// This file will be processed by the MIDL tool to
// produce the type library (TveContr.tlb) and marshalling code.
//
//      Need to put MIDL attributes of:
//          'noncreatable' on
//          'hidden'       on
//          'nonbrowsable' on
//
//  -- _Helper interfaces need to be in the library section or else
//      can't seen them in the client
//
//  -- None of the _Helper interfaces are marked dual.  Hence they 
//     won't work up on the client... (???)
//
// ---------------------------------------------------
//      CAUTION - if you change methods below, you need to regen the proxy-stub file
//          nmake -f MSTvEps.mk
//          regsvr32 /s MSTvEps.dll
//  
//
//      Also - if you change any of the IID's, you need to 
//      rebuild ..\uuid\[]\strmiids.lib

cpp_quote("//+-------------------------------------------------------------------------")
cpp_quote("//")
cpp_quote("//  Microsoft Windows")
cpp_quote("//  Copyright (C) Microsoft Corporation, 1999-2001.")
cpp_quote("//")
cpp_quote("//--------------------------------------------------------------------------")
cpp_quote("#pragma once")

import "oaidl.idl";
import "ocidl.idl";

// forward declarations
interface ITVETrigger;
interface ITVETrack;
interface ITVEVariation;
interface ITVEEnhancement;
interface ITVEService;
interface ITVEActiveService;
interface ITVESupervisor;
interface ITVEAttrMap;
interface ITVEAttrTimeQ;

interface ITVETracks;
interface ITVEVariations;
interface ITVEEnhancements;
interface ITVEServices;

interface ITVEFile;

interface ITVESupervisor_Helper;

//  Listener..
interface ITVEMCast;
interface ITVEMCasts;
interface ITVEMCastManager;
interface ITVEMCastCallback;

//  interfaces to configure the filter and get events from,
interface ITVEFilter ;
interface ITVEFilter_Helper;

// glue stuff
interface   ITVENavAid;
interface   ITVENavAid_Helper;
interface   ITVENavAid_NoVidCtl;
interface   ITVETriggerCtrl;
interface   ITVETriggerCtrl_Helper;

interface   ITVEFeature;
interface   ITVESupervisorGITProxy;
// ----------------------------------------------------------------------------------

#define COLLECTID_Item      DISPID_VALUE    // (0)  
#define COLLECTID_Count     1               // standard set of collection interfaces
#define COLLECTID_Add       2
#define COLLECTID_Remove    3
#define COLLECTID_RemoveAll 4               // extra for maps
#define COLLECTID_Key       5   
#define COLLECTID_Replace   6       
#define COLLECTID_Insert    7       
#define COLLECTID_Update    8
    
typedef enum NENH_Mode
{
    NENH_New,
    NENH_Duplicate,
    NENH_Updated,
    NENH_Starting,
    NENH_Expired
} NENH_Mode;

typedef enum NPKG_Mode
{
    NPKG_Starting,                          // brand new packet (never seen this UUID before)
    NPKG_Received,                          // correctly received and decoded a package
    NPKG_Duplicate,                         // duplicate send of a one already successfully received (packet 0 only)
    NPKG_Resend,                            // resend of one that wasn't received correctly before (packet 0 only)
    NPKG_Expired
} NPKG_Mode;

typedef enum NTRK_Mode
{
    NTRK_New,
    NTRK_Duplicate,                         // exact duplicate of existing one
    NTRK_Updated,                           // updated version of existing one
    NTRK_Starting,                          // (not used???)
    NTRK_Expired
} NTRK_Mode;

typedef enum NFLE_Mode
{
    NFLE_Received,                          // correctly received and decoded a package
    NFLE_Expired
} NFLE_Mode;

typedef enum NTUN_Mode
{
    NTUN_New,                               // new station (service) never seen before
    NTUN_Retune,                            // tuning back to an existing station
    NTUN_Reactivate,                        // retuning to the current station
    NTUN_Turnoff,                           // turning atvef off
    NTUN_Fail                               // failed to tune for some reason
} NTUN_Mode;


typedef enum NWHAT_Mode                     // used in NotifyAuxInfo
{
    NWHAT_Announcement,
    NWHAT_Trigger,
    NWHAT_Data,
    NWHAT_Other,
    NWHAT_Extra
} NWHAT_Mode;


        

            // ---------------------------------------------------------------------

    [
        object,
        uuid(05500101-FAA5-4df9-8246-BFC23AC5CEA8),
        dual,
        helpstring("ITVETrigger Interface"),
        pointer_default(unique)
    ]
    interface ITVETrigger : IDispatch
    {
        [propget, id(1), helpstring("property Parent")]         HRESULT Parent([out, retval] IUnknown* *pVal);
        [propget, id(2), helpstring("property Service")]        HRESULT Service([out, retval] ITVEService* *pVal);
        [propget, id(3), helpstring("property IsValid")]        HRESULT IsValid([out, retval] VARIANT_BOOL *pVal);
        [propget, id(4), helpstring("property URL")]            HRESULT URL([out, retval] BSTR *pVal);
        [propget, id(5), helpstring("property Name")]           HRESULT Name([out, retval] BSTR *pVal);
        [propget, id(6), helpstring("property Expires")]        HRESULT Expires([out, retval] DATE *pVal);
        [propget, id(7), helpstring("property Executes")]       HRESULT Executes([out, retval] DATE *pVal);
        [propget, id(8), helpstring("property Script")]         HRESULT Script([out, retval] BSTR *pVal);
        [propget, id(9), helpstring("property TVELevel")]       HRESULT TVELevel([out, retval] float *pVal);
        [propget, id(10), helpstring("property Rest")]          HRESULT Rest([out, retval] BSTR *pVal);
        [         id(11), helpstring("method ParseTrigger")]    HRESULT ParseTrigger([in] const BSTR rVal);
    };

    [
        object,
        uuid(05500201-FAA5-4df9-8246-BFC23AC5CEA8),
//      dual,
        hidden,
        helpstring("ITVETrigger_Helper Interface"),
        pointer_default(unique)
    ]
    interface ITVETrigger_Helper : IUnknown
    {
        [         id(1), helpstring("method ConnectParent")]    HRESULT ConnectParent([in] ITVETrack *pTrack);
        [propget, id(2), helpstring("property CRC")]            HRESULT CRC([in] const BSTR rVal, [out, retval] BSTR *pbstrCRC);
        [         id(3), helpstring("method UpdateFrom")]       HRESULT UpdateFrom([in] ITVETrigger *pTrigger, [out] long *plgrfTRKChanged);
        [         id(4), helpstring("method RemoveYourself")]   HRESULT RemoveYourself();
        [         id(5), helpstring("method DumpToBSTR")]       HRESULT DumpToBSTR([out] BSTR *pbstrBuff);
    };


// ---------------------------------------------------

    [
        object,
        uuid(05500102-FAA5-4df9-8246-BFC23AC5CEA8),
        dual,
        helpstring("ITVETrack Interface"),
        pointer_default(unique)
    ]
    interface ITVETrack : IDispatch
    {
        [propget, id(1), helpstring("property Parent")]         HRESULT Parent([out, retval] IUnknown* *pVal);
        [propget, id(2), helpstring("property Service")]        HRESULT Service([out, retval] ITVEService* *pVal);
        [propget, id(3), helpstring("property Trigger")]        HRESULT Trigger([out, retval] ITVETrigger* *pVal);
        [propget, id(4), helpstring("property Description")]    HRESULT Description([out, retval] BSTR *pVal);
        [propput, id(4), helpstring("property Description")]    HRESULT Description([in] BSTR newVal);
        [         id(5), helpstring("method AttachTrigger")]    HRESULT AttachTrigger([in] ITVETrigger *pTrigger);
        [         id(6), helpstring("method ReleaseTrigger")]   HRESULT ReleaseTrigger();
        [         id(7), helpstring("method CreateTrigger")]    HRESULT CreateTrigger([in] const BSTR bstrDescription);
    };

    [
        object,
        uuid(05500202-FAA5-4df9-8246-BFC23AC5CEA8),
//      dual,

⌨️ 快捷键说明

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