📄 mstvca.idl
字号:
uuid(11166260-DF8A-463A-B620-7BEC23542010),
helpstring("_ICAComponentsEvents Interface")
]
dispinterface _ICAComponentsEvents
{
properties:
methods:
[id(1), helpstring("method ItemAdded")] HRESULT ItemAdded([in] ICAComponent *pComponent, [in] long cComponent);
[id(2), helpstring("method ItemRemoved")] HRESULT ItemRemoved([in] ICAComponent *pComponent, [in] long cComponent);
}; // --------------------------------
[
object,
dual,
uuid(11166300-DF8A-463a-B620-7BEC23542010),
helpstring("ICAManager Interface"),
pointer_default(unique)
]
interface ICAManager : IDispatch
{
[propget, id(1), helpstring("property Policies")] HRESULT Policies([out, retval] ICAPolicies **ppPolicies);
[propget, id(2), helpstring("property ActiveRequest")] HRESULT ActiveRequest([out, retval] ICARequest **ppRequest);
[propget, id(3), helpstring("property Offers")] HRESULT Offers([out, retval] ICAOffers **ppOffers);
[propget, id(4), helpstring("property PaidTolls")] HRESULT PaidTolls([out, retval] ICATolls **ppTolls);
[propput, id(5), helpstring("property UseDefaultUI")] HRESULT UseDefaultUI([in] long fUseDefaultUI);
[propget, id(5), helpstring("property UseDefaultUI")] HRESULT UseDefaultUI([out, retval] long *pfUseDefaultUI);
[propget, id(6), helpstring("property DenialsFor")] HRESULT DenialsFor([in] IUnknown *pUnk, [out, retval] ICADenials **ppDenials);
};
[
object,
uuid(11166310-DF8A-463a-B620-7BEC23542010),
dual,
helpstring("ICARequest Interface"),
pointer_default(unique)
]
interface ICARequest : IDispatch
{
[propget, id(1), helpstring("property RequestedItem")] HRESULT RequestedItem([out, retval] IUnknown **ppTunereq);
[propget, id(2), helpstring("property CAManager")] HRESULT CAManager([out, retval] ICAManager **ppManager);
[propget, id(3), helpstring("property ScheduleEntry")] HRESULT ScheduleEntry([out, retval] IUnknown **ppUnkScheduleEntry); // IScheduleEntry?
[propget, id(4), helpstring("property Denials")] HRESULT Denials([out, retval] ICADenials **ppDenials);
[propget, id(5), helpstring("property Components")] HRESULT Components([out, retval] ICAComponents **pComponents);
[propget, id(6), helpstring("property Check")] HRESULT Check([out, retval] long *pcDenials);
[propget, id(7), helpstring("property ResolveDenials")] HRESULT ResolveDenials([out, retval] long *pcDenials);
[propget, id(8), helpstring("property CountDeniedComponents")] HRESULT CountDeniedComponents([out, retval] long *pcDeniedComponents);
};
[
object,
uuid(11166320-DF8A-463a-B620-7BEC23542010),
helpstring("ICAPolicy Interface"), // client written
pointer_default(unique)
]
interface ICAPolicy : IUnknown // -- not IDispatch, let the client side implement that interface
{
[propget, id(0), helpstring("property Name")] HRESULT Name([out, retval] BSTR *pbstr);
[ id(1), helpstring("method CheckRequest")] HRESULT CheckRequest([in] ICARequest *pReq);
// [propget, id(2), helpstring("property CAManager")] HRESULT CAManager([out, retval] ICAManager **ppManager);
[propput, id(2), helpstring("property CAManager")] HRESULT CAManager([in] ICAManager *pManager);
[propget, id(3), helpstring("property OkToPersist")] HRESULT OkToPersist([out, retval] BOOL *pfOkToPersist);
[propget, id(4), helpstring("property OkToRemove")] HRESULT OkToRemove([out, retval] BOOL *pfOkToRemove);
[propget, id(5), helpstring("property OkToRemoveDenial")] HRESULT OkToRemoveDenial(ICADenial *pDenial, [out, retval] BOOL *pfOk);
[propget, id(6), helpstring("property OkToRemoveOffer")] HRESULT OkToRemoveOffer(ICAOffer *pOffer, [out, retval] BOOL *pfOk);
}
[
object,
uuid(11166330-DF8A-463a-B620-7BEC23542010),
dual,
helpstring("ICAToll Interface"), // also client written
pointer_default(unique)
]
interface ICAToll : IUnknown // -- also not IDispatch - client side implements that interface
{
// [propget, id(1), helpstring("property CAManager")] HRESULT CAManager([out, retval] ICAManager **ppManager);
[propput, id(1), helpstring("property CAManager")] HRESULT CAManager([in] ICAManager *pManager);
[ id(2), helpstring("method Select")] HRESULT Select([in] BOOL fSelect);
[ id(3), helpstring("method PayToll")] HRESULT PayToll();
[propget, id(4), helpstring("property Refundable")] HRESULT Refundable([out, retval] BOOL *pfRefundable);
[ id(5), helpstring("method RefundToll")] HRESULT RefundToll();
[propget, id(6), helpstring("property TolledObject")] HRESULT TolledObject([out, retval] IUnknown **ppUnkTolled);
[propget, id(7), helpstring("property Denials")] HRESULT Denials([out, retval] ICADenials **ppDenials);
[propget, id(8), helpstring("property Policy")] HRESULT Policy([out, retval] ICAPolicy **ppPolicy);
[propget, id(9), helpstring("property Description")] HRESULT Description([in] CADescFormat enFormat, [out, retval] BSTR *pbstr);
[propget, id(10),helpstring("property TimePaid")] HRESULT TimePaid([out, retval] DATE *pdtPaid);
[propget, id(11),helpstring("property State")] HRESULT State([out, retval] CATollState *penState);
};
[
object,
uuid(11166340-DF8A-463a-B620-7BEC23542010),
dual,
helpstring("ICADenial Interface"),
pointer_default(unique)
]
interface ICADenial : IDispatch
{
[propget, id(1), helpstring("property DeniedObject")] HRESULT DeniedObject([out, retval] IUnknown **ppUnkDenied);
[propget, id(2), helpstring("property Policy")] HRESULT Policy([out, retval] ICAPolicy **ppPolicy);
[propget, id(3), helpstring("property Description")] HRESULT Description([in] CADescFormat enFormat, [out, retval] BSTR *pbstr);
[propput, id(3), helpstring("property Description")] HRESULT Description([in] CADescFormat enFormat, [in] BSTR bstr);
[propget, id(4), helpstring("property State")] HRESULT State([out, retval] CADenialState *penState);
[propput, id(4), helpstring("property State")] HRESULT State([in] CADenialState enState);
[propget, id(5), helpstring("property Tolls")] HRESULT Tolls([out, retval] ICATolls **ppTolls);
[ id(6), helpstring("method NotifyTollStateChanged")] HRESULT NotifyTollStateChanged([in] ICAToll *pToll, [in] CATollState enStateFrom);
};
[
object,
uuid(11166350-DF8A-463a-B620-7BEC23542010),
dual,
helpstring("ICAOffer Interface"),
pointer_default(unique)
]
interface ICAOffer : IDispatch
{
[propget, id(1), helpstring("property CAManager")] HRESULT CAManager([out, retval] ICAManager **ppManager);
[propput, id(1), helpstring("property CAManager")] HRESULT CAManager([in] ICAManager *pManager);
[propget, id(2), helpstring("property Policy")] HRESULT Policy([out, retval] ICAPolicy **pppolicy);
[propget, id(3), helpstring("property Description")] HRESULT Description([in] CADescFormat enFormat, [out, retval] BSTR *pbstr);
[propput, id(3), helpstring("property Description")] HRESULT Description([in] CADescFormat enFormat, [in] BSTR bstr);
[propget, id(4), helpstring("property StartTime")] HRESULT StartTime([out, retval] DATE *pdtStart);
[propget, id(5), helpstring("property EndTime")] HRESULT EndTime([out, retval] DATE *pdtEnd);
[propget, id(6), helpstring("property Tolls")] HRESULT Tolls([out, retval] ICATolls **ppTolls);
[ id(7), helpstring("method NotifyTollStateChanged")] HRESULT NotifyTollStateChanged([in] ICAToll *pToll, [in] CATollState enStateFrom);
};
[
object,
uuid(11166360-DF8A-463a-B620-7BEC23542010),
dual,
helpstring("ICAComponent Interface"),
pointer_default(unique)
]
interface ICAComponent : IDispatch
{
[propget, id(1), helpstring("property Component")] HRESULT Component([out, retval] IComponent **ppComponent);
[propget, id(2), helpstring("property Denials")] HRESULT Denials([out, retval] ICADenials **ppDenials);
[propget, id(3), helpstring("property Request")] HRESULT Request([out, retval] ICARequest **ppComponent);
};
// --------------------------------
[
uuid(11166100-DF8A-463a-B620-7BEC23542010),
helpstring("CAManager Class")
]
coclass CAManager
{
[default] interface ICAManager;
interface ICAManagerInternal;
// interface ICAManagerXProxy; // this is the actual outgoing 'event' interface
[default, source] dispinterface _ICAManagerEvents;
};
[ // magic class used to avoid circular references through the CAManager.
hidden,
uuid(11166101-DF8A-463a-B620-7BEC23542010),
helpstring("CAManagerProxy Class")
]
coclass CAManagerProxy
{
[default] interface ICAManager;
interface ICAManagerInternal;
// [default, source] dispinterface _ICAManagerEvents; /// QUESTION ??? DO I want these just here, or in the true Manager, or both?
};
[
uuid(11166540-DF8A-463a-B620-7BEC23542010), // needed for user's tolls.
helpstring("CADenials Class")
]
coclass CADenials
{
[default] interface ICADenials;
interface ICADenialsInternal;
[default, source] dispinterface _ICADenialsEvents;
};
// TODO - mark this as hidden...
[
uuid(11166550-DF8A-463a-B620-7BEC23542010),
helpstring("CAOffer Class")
]
coclass CAOffer
{
[default] interface ICAOffer;
};
/* [
uuid(11166999-DF8A-463a-B620-7BEC23542010),
helpstring("CATempEvent_TempBuilder Class - used so we can build events the first time")
]
coclass CATempEvent_TempBuilder
{
[source] dispinterface _ICAResDenialTreeEvents;
[source] dispinterface _ICAManagerEvents;
[source] dispinterface _ICARequestEvents;
[source] dispinterface _ICATollsEvents;
[source] dispinterface _ICADenialsEvents;
[source] dispinterface _ICAPoliciesEvents;
[source] dispinterface _ICAOffersEvents;
[source] dispinterface _ICAComponentsEvents;
};
*/
// -----------------------------------
[
object,
uuid(11166898-DF8A-463a-B620-7BEC23542010),
dual,
helpstring("ICAResDenialTree Interface"),
pointer_default(unique)
]
interface ICAResDenialTree : IDispatch
{
[propget, id(1), helpstring("property CAManager")] HRESULT CAManager([out, retval] ICAManager **ppCAManager);
[propput, id(1), helpstring("property CAManager")] HRESULT CAManager([in] ICAManager *pCAManager);
[propget, id(2), helpstring("property DisplayFields")] HRESULT DisplayFields([out, retval] long *penFields); // fields to display in default ResDenial UI
[propput, id(2), helpstring("property DisplayFields")] HRESULT DisplayFields([in] long enFields); // fields to display in default ResDenial UI
[ id(3), helpstring("method UpdateView")] HRESULT UpdateView([in] IUnknown *pUnk); // if object is being viewed, updates it.
// ResDenial control listens to these incoming sink events sent by Manager ((_ICAManagerEvents).. ID's Must match
[ id(2201),helpstring("method NotifyRequestActivated")] HRESULT NotifyRequestActivated([in] ICARequest *preq);
[ id(2202),helpstring("method NotifyRequestDeactivated")] HRESULT NotifyRequestDeactivated([in] ICARequest *preq);
[ id(2203),helpstring("method NotifyOfferAdded")] HRESULT NotifyOfferAdded([in] ICAOffer *pOffer,[in] long cOffers);
[ id(2204),helpstring("method NotifyOfferRemoved")] HRESULT NotifyOfferRemoved([in] ICAOffer *pOffer,[in] long cOffers);
[ id(2205),helpstring("method NotifyPolicyAdded")] HRESULT NotifyPolicyAdded([in] ICAPolicy *pPolicy,[in] long cPolicies);
[ id(2206),helpstring("method NotifyPolicyRemoved")] HRESULT NotifyPolicyRemoved([in] ICAPolicy *pPolicy,[in] long cPolicies);
[ id(2207),helpstring("method NotifyRequestDenialAdded")] HRESULT NotifyRequestDenialAdded([in] ICARequest *preq, [in] ICADenial *pDenial,[in] long cDenials);
[ id(2208),helpstring("method NotifyRequestDenialRemoved")] HRESULT NotifyRequestDenialRemoved([in] ICARequest *preq, [in] ICADenial *pDenial,[in] long cDenials);
[ id(2209),helpstring("method NotifyDenialTollAdded")] HRESULT NotifyDenialTollAdded([in] ICADenial *pDenial, [in] ICAToll *pToll, [in] long cTolls);
[ id(2210),helpstring("method NotifyDenialTollRemoved")] HRESULT NotifyDenialTollRemoved([in] ICADenial *pDenial, [in] ICAToll *pToll, [in] long cTolls);
[ id(2211),helpstring("method NotifyTollDenialAdded")] HRESULT NotifyTollDenialAdded([in] ICAToll *pToll, [in] ICADenial *pDenial,[in] long cDenials);
[ id(2212),helpstring("method NotifyTollDenialRemoved")] HRESULT NotifyTollDenialRemoved([in] ICAToll *pToll, [in] ICADenial *pDenial,[in] long cDenials);
[ id(2213),helpstring("method NotifyOfferTollAdded")] HRESULT NotifyOfferTollAdded([in] ICAOffer *pOffer, [in] ICAToll *pToll, [in] long cTolls);
[ id(2214),helpstring("method NotifyOfferTollRemoved")] HRESULT NotifyOfferTollRemoved([in] ICAOffer *pOffer, [in] ICAToll *pToll, [in] long cTolls);
[ id(2215),helpstring("method NotifyTollStateChanged")] HRESULT NotifyTollStateChanged([in] ICAToll *pToll, [in] CATollState enStateLast);
[ id(2216),helpstring("method NotifyDenialStateChanged")] HRESULT NotifyDenialStateChanged([in] ICADenial *pDenial, [in] CADenialState enStateLast);
[ id(2217),helpstring("method NotifyComponentDenialAdded")] HRESULT NotifyComponentDenialAdded([in] ICAComponent *preq, [in] ICADenial *pDenial,[in] long cDenials);
[ id(2218),helpstring("method NotifyComponentDenialRemoved")] HRESULT NotifyComponentDenialRemoved([in] ICAComponent *preq, [in] ICADenial *pDenial,[in] long cDenials);
};
[
uuid(11166998-DF8A-463a-B620-7BEC23542010),
helpstring("CA Default RequestDenial Control")
]
coclass CAResDenialTree
{
[default] interface ICAResDenialTree;
[default, source] dispinterface _ICAResDenialTreeEvents;
};
// -----------------------------
[
uuid(11166991-DF8A-463a-B620-7BEC23542010),
helpstring("_ICADefaultDlgEvents Interface")
]
dispinterface _ICADefaultDlgEvents
{
properties:
methods:
};
[
uuid(11166990-DF8A-463a-B620-7BEC23542010),
helpstring("CADefaultDlg Class")
]
coclass CADefaultDlg
{
[default] interface ICADefaultDlg;
[default, source] dispinterface _ICADefaultDlgEvents;
};
// -------------------------------------
// Magic way to define the SID_ ...
cpp_quote("#define SID_CAManager CLSID_CAManager")
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -