📄 vidsvr.odl
字号:
[propget, id(dispidHasCA)] HRESULT HasCA([out, retval] boolean *HasCA);
[propget, id(dispidIsInput)] HRESULT IsInput([out, retval] boolean *IsInput);
[propget, id(dispidIsOutput)] HRESULT IsOutput([out, retval] boolean *IsOutput);
[propget, id(dispidHasChannel)] HRESULT HasChannel([out, retval] boolean *HasChannel);
[propget, id(dispidStatus)] HRESULT Status([out, retval] long *Status);
[propget, id(dispidProdName)] HRESULT ProdName([out, retval] BSTR *ProdName);
[propget, id(dispidDevFileName)] HRESULT FileName([out, retval] BSTR *FileName);
[propput, id(dispidDevFileName)] HRESULT FileName([in] BSTR FileName);
[propget, id(dispidChannel)] HRESULT Channel([out, retval] long *Channel);
[propput, id(dispidChannel)] HRESULT Channel([in] long Channel);
[propget, id(dispidDevImageSourceWidth)] HRESULT ImageSourceWidth([retval, out] long *x);
[propget, id(dispidDevImageSourceHeight)] HRESULT ImageSourceHeight([retval, out] long *y);
[propget, id(dispidDevCurrentState)] HRESULT CurrentState([out, retval] long *CurrentState);
[propget, id(dispidDevCurrentPosition)] HRESULT CurrentPosition([retval, out] double *dPos);
[propput, id(dispidDevCurrentPosition)] HRESULT CurrentPosition([in] double dPos);
[propget, id(dispidDevDuration)] HRESULT Duration([retval, out] double *dPos);
[propget, id(dispidDevPrerollTime)] HRESULT PrerollTime([retval, out] double *dPos);
[propput, id(dispidDevPrerollTime)] HRESULT PrerollTime([in] double dPos);
[propget, id(dispidDevRate)] HRESULT Rate([retval, out] double *dPos);
[propput, id(dispidDevRate)] HRESULT Rate([in] double dPos);
[propget, id(dispidDevCountryCode)] HRESULT CountryCode([retval, out] long *lcc);
[propput, id(dispidDevCountryCode)] HRESULT CountryCode([in] long lcc);
[propget, id(dispidDevVideoFrequency)] HRESULT VideoFrequency([retval, out] long *lcc);
[propget, id(dispidDevAudioFrequency)] HRESULT AudioFrequency([retval, out] long *lcc);
[propget, id(dispidDevDefaultVideoType)] HRESULT DefaultVideoType([retval, out] long *lcc);
[propput, id(dispidDevDefaultVideoType)] HRESULT DefaultVideoType([in] long lcc);
[propget, id(dispidDevDefaultAudioType)] HRESULT DefaultAudioType([retval, out] long *lcc);
[propput, id(dispidDevDefaultAudioType)] HRESULT DefaultAudioType([in] long lcc);
[propget, id(dispidDevVideoSubchannel)] HRESULT VideoSubchannel([retval, out] long *lcc);
[propput, id(dispidDevVideoSubchannel)] HRESULT VideoSubchannel([in] long lcc);
[propget, id(dispidDevAudioSubchannel)] HRESULT AudioSubchannel([retval, out] long *lcc);
[propput, id(dispidDevAudioSubchannel)] HRESULT AudioSubchannel([in] long lcc);
[propput, id(dispidDevVolume)] HRESULT Volume([in] long lVol);
[propget, id(dispidDevVolume)] HRESULT Volume([retval, out] long *lVol);
[propput, id(dispidDevBalance)] HRESULT Balance([in] long lBal);
[propget, id(dispidDevBalance)] HRESULT Balance([retval, out] long *lBal);
[propput, id(dispidDevPower)] HRESULT Power([in] boolean bPower);
[propget, id(dispidDevPower)] HRESULT Power([retval, out] boolean *bPower);
#ifdef ENABLE_OVERSCAN
[propput, id(dispidDevOverScan)] HRESULT OverScan([in] long lPercent);
[propget, id(dispidDevOverScan)] HRESULT OverScan([retval, out] long *plPercent);
#endif
[id(CASERVERID_ProviderRating), propget] HRESULT ProviderRating([out, retval] long* pRating);
[id(CASERVERID_ProviderStatus), propget] HRESULT ProviderStatus([out, retval] boolean* pStatus);
[id(CASERVERID_ProviderEPGMask), propget] HRESULT ProviderEPGMask([out, retval] long* pMask);
[id(CASERVERID_HistoryItems), propget] HRESULT HistoryItems([out, retval] IBPCHistoryItemsCollection** ppHistoryItem);
[id(CASERVERID_EmailMessages), propget] HRESULT EmailMessages([out, retval] IBPCEmailMessagesCollection** ppEmailMsg);
[id(CASERVERID_UserName), propget] HRESULT UserName([out, retval] BSTR* pUserName);
[id(CASERVERID_UserName), propput] HRESULT UserName([in] BSTR UserName);
[id(CASERVERID_UserArea), propget] HRESULT UserArea([out, retval] BSTR* pUserArea);
[id(CASERVERID_UserArea), propput] HRESULT UserArea([in] BSTR UserArea);
[id(CASERVERID_ItemDetails), propget] HRESULT ItemDetails([in] long Priority, [in] IBPCPurchase *pInDetails, [out, retval] IBPCPurchase** ppOutDetails);
//methods
[id(dispidDevRun)] HRESULT Run();
[id(dispidDevPause)] HRESULT Pause();
[id(dispidDevStop)] HRESULT Stop();
[id(dispidDevRefresh)] HRESULT Refresh();
[id(dispidChannelAvailable)] HRESULT ChannelAvailable([in] long nChannel, [out] long *SignalStrength, [retval, out] boolean *fSignalPresent);
[id(CASERVERID_ResetProviderSystem)] HRESULT ResetProviderSystem();
[id(CASERVERID_BuyItem)] HRESULT BuyItem([in] long Priority, [in] IBPCPurchase *pInDetails, [out, retval] IBPCPurchase **ppOutDetails);
[id(CASERVERID_CancelItem)] HRESULT CancelItem([in] IBPCPurchase *pInDetails, [out, retval] IBPCPurchase **ppOutDetails);
[id(CASERVERID_DisplayConfigDialog)] HRESULT DisplayConfigDialog();
[id(CASERVERID_HandleCardChaining)] HRESULT HandleCardChaining([in] boolean fOK);
};
//NOTE: IBPCDeviceEvent methods should match the non-stock events
// in DBPCVidEvents
// NOTE: this interface must match the midl version above the
// library statement or the marshalling won't work right.
[uuid(F4B33700-BD9B-11cf-A88F-444553540000),
hidden, oleautomation, dual,
helpstring("Private Interface for Device Events between vidsvr and ocx")
]
interface IBPCDeviceEvent : IDispatch
{
[id(eventidGotControl)] HRESULT GotControl();
[id(eventidLostControl)] HRESULT LostControl();
[id(eventidStateChange)] HRESULT StateChange([in] IBPCDeviceBase *lpd, [in] long oldState, [in] long newState);
[id(eventidErrorMessage)] HRESULT ErrorMessage([in] long iMessage, [in] BSTR Text);
// MESSAGE EVENTS
[id(CAEVENTID_CardMissing)] HRESULT CardMissing([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority, [in] IBPCMessage *Message);
[id(CAEVENTID_CardInvalid)] HRESULT CardInvalid([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority, [in] IBPCMessage *Message);
[id(CAEVENTID_WrongCard)] HRESULT WrongCard([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority, [in] IBPCMessage *Message);
[id(CAEVENTID_BlackedOut)] HRESULT BlackedOut([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority, [in] IBPCMessage *Message);
[id(CAEVENTID_RatingExceeded)] HRESULT RatingExceeded([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority, [in] IBPCMessage *Message);
[id(CAEVENTID_CostExceeded)] HRESULT CostExceeded([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority, [in] IBPCMessage *Message);
[id(CAEVENTID_OSDRequest)] HRESULT OSDRequest([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority, [in] IBPCMessage *Message);
[id(CAEVENTID_NoSubscriber)] HRESULT NoSubscriber([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority, [in] IBPCMessage *Message);
[id(CAEVENTID_CAFail)] HRESULT CAFail([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority, [in] IBPCMessage *Message);
[id(CAEVENTID_CannotPurchase)] HRESULT CannotPurchase([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority, [in] IBPCMessage *Message);
[id(CAEVENTID_CASuccess)] HRESULT CASuccess([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority, [in] IBPCMessage *Message);
[id(CAEVENTID_Retry)] HRESULT Retry([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority, [in] IBPCMessage *Message);
// NOTIFICATION EVENTS
[id(CAEVENTID_SignalLost)] HRESULT SignalLost([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority);
[id(CAEVENTID_NewEmail)] HRESULT NewEmail([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority);
[id(CAEVENTID_ColdStart)] HRESULT ColdStart([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority);
[id(CAEVENTID_Ready)] HRESULT Ready([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority);
[id(CAEVENTID_NotReady)] HRESULT NotReady([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority);
[id(CAEVENTID_CAFault)] HRESULT CAFault([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority);
[id(CAEVENTID_PasswordCleared)] HRESULT PasswordCleared([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority);
[id(CAEVENTID_TuningChanged)] HRESULT TuningChanged([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority);
// SPECIAL EVENT
[id(CAEVENTID_HandlePurchaseOffer)] HRESULT HandlePurchaseOffer([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority, [in] IBPCPurchase *pDetails);
[id(CAEVENTID_RevokeEvent)] HRESULT RevokeEvent([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority);
[id(CAEVENTID_CopyCard)] HRESULT CopyCard([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority);
[id(CAEVENTID_EPGFilterChanged)] HRESULT EPGFilterChanged([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority);
[id(CAEVENTID_TapingControlChanged)] HRESULT TapingControlChanged([in] IBPCDeviceBase *lpdDevice, [in] long SubEvent, [in] long EventNumber, [in] long ItemNumber, [in] long Priority);
};
[uuid(E323F120-B484-11cf-A88F-444553540000),
dual, oleautomation, hidden,
helpstring("Dispatch Dual Interface for Devices Collection"),
]
interface IBPCDevices : IDispatch
{
// properties
[propget, id(dispidCount)] HRESULT Count([out, retval] long *lCount);
[propget, id(DISPID_NEWENUM), restricted] HRESULT _NewEnum([out, retval] IUnknown **pD);
[propput, id(dispidHWnd)] HRESULT HWnd([in] long hwnd);
[propput, id(dispidLCID)] HRESULT LCID([in] long lcid);
[propput, id(dispidNotify)] HRESULT Notify([in] IBPCDeviceEvent *pDeviceEvents);
[propget, id(dispidDevColorKey)] HRESULT ColorKey([retval, out] long *lcc);
[propput, id(dispidDevColorKey)] HRESULT ColorKey([in] long lcc);
[propget, id(dispidDevPriority)] HRESULT Priority([retval, out] long *lcc);
[propput, id(dispidDevPriority)] HRESULT Priority([in] long lcc);
[propget, id(dispidDevInput)] HRESULT Input([retval, out] IBPCDeviceBase **ppInput);
[propput, id(dispidDevInput)] HRESULT Input([in] IBPCDeviceBase *pInput);
[propget, id(dispidDevOutput)] HRESULT Output([retval, out] IBPCDeviceBase **ppOutput);
[propput, id(dispidDevOutput)] HRESULT Output([in] IBPCDeviceBase *pOutput);
[propget, id(dispidDevVideoOn)] HRESULT VideoOn([out, retval] boolean *VideoOn);
[propput, id(dispidDevVideoOn)] HRESULT VideoOn([in] boolean VideoOn);
// methods
[id(dispidItem)] HRESULT Item([in] VARIANT v, [out, retval] IBPCDeviceBase **pDB);
[id(dispidDevTune)] HRESULT Tune([in] long lTuningSpace, [in] long Channel, [in] long VideoSubchannel, [in] long AudioSubchannel);
[id(dispidDevLogin)] HRESULT Login([in] BSTR UserName, [in] BSTR Password);
[id(dispidDevLogout)] HRESULT Logout();
[id(dispidDevOpen)] HRESULT Open([in] BSTR FileName);
[id(dispidDevTSDevCount)] HRESULT TSDeviceCount([in] long lTuningSpace, [out, retval] long *count);
[id(dispidDevAutoScan)] HRESULT AutoScan([retval, out] long *SignalStrength);
};
[ uuid(8AFAFD81-31C3-11CF-A1E9-00AA0062C797),
helpstring("Dispatch interface for Vid Control"), hidden,
oleautomation, dual
]
interface IBPCVid : IDispatch
{
// properties
[id(dispidPower), propget] HRESULT Power([retval, out] boolean *Power);
[id(dispidPower), propput] HRESULT Power([in] boolean Power);
[id(dispidStartTime), propget] HRESULT StartTime([retval, out] double *StartTime);
[id(dispidStartTime), propput] HRESULT StartTime([in] double StartTime);
[id(dispidStopTime), propget] HRESULT StopTime([retval, out] double *StopTime);
[id(dispidStopTime), propput] HRESULT StopTime([in] double StopTime);
[id(dispidVideoOn), propget] HRESULT VideoOn([out, retval] boolean *VideoOn);
[id(dispidVideoOn), propput] HRESULT VideoOn([in] boolean VideoOn);
[id(dispidClosedCaption), propget] HRESULT ClosedCaption([out, retval] boolean *ClosedCaption);
[id(dispidClosedCaption), propput] HRESULT ClosedCaption([in] boolean ClosedCaption);
[id(dispidDebug), helpstring("Information/Diagnostic display in the OCX window"), propget] HRESULT Debug([out, retval] boolean *Debug);
[id(dispidDebug), helpstring("Information/Diagnostic display in the OCX window"), propput] HRESULT Debug([in] boolean Debug);
[id(dispidDeviceCount), propget] HRESULT DeviceCount([out, retval] long *DeviceCount);
[id(dispidInput), propget] HRESULT Input([out, retval] IBPCDeviceBase** Input);
[id(dispidInput), propput] HRESULT Input([in] IBPCDeviceBase* Input);
[id(dispidOutput), propget] HRESULT Output([out, retval] IBPCDeviceBase** Output);
[id(dispidOutput), propput] HRESULT Output([in] IBPCDeviceBase* Output);
[id(dispidColorKey), propget] HRESULT ColorKey([out, retval] long *ColorKey);
[id(dispidColorKey), propput] HRESULT ColorKey([in] long ColorKey);
[id(dispidFileName), propget] HRESULT FileName([out, retval] BSTR *FileName);
[id(dispidFileName), propput] HRESULT FileName([in] BSTR FileName);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -