文献:http://www.verydemo.com/demo_c92_i191183.html
uuid(B1D1C73C-E340-4FDC-8734-92ECEC64DC4E),
dual,
helpstring("IValidateCard Interface"),
pointer_default(unique)
interface IValidateCard : IDispatch
uuid(B3404054-C33E-4931-B737-5783CEEFECDB),
version(1.0),
helpstring("ValidateCreditCardServer 1.0 Type Library")
importlib("stdole32.tlb");
importlib("stdole2.tlb");
uuid(C79635D2-7B86-4B20-A83C-0565DCA54C3C),
helpstring("ValidateCard Class")
coclass ValidateCard
[default] interface IValidateCard;
3.
uuid(B1D1C73C-E340-4FDC-8734-92ECEC64DC4E),
dual,
helpstring("IValidateCard Interface"),
pointer_default(unique)
interface IValidateCard : IDispatch
[id(1), helpstring("method ValidateCreditCard")] HRESULT ValidateCreditCard([in] BSTR bstrCCNo,[in]BSTR bstrCCType,[out,retval]long *val );
[id(2), helpstring("method LuhnCheck")] HRESULT LuhnCheck([in] BSTR bstrCCNo,[in]BSTR bstrCCType);
[id(3), helpstring("method LengthCheck")] HRESULT LengthCheck([in] BSTR bstrCCNo,[in]BSTR bstrCCType);
[id(4), helpstring("method PrefixCheck")] HRESULT PrefixCheck([in] BSTR bstrCCNo,[in]BSTR bstrCCType);
};
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<CValidateCard, &CLSID_ValidateCard>,
public IDispatchImpl<IValidateCard, &IID_IValidateCard, &LIBID_VALIDATECREDITCARDSERVERLib>
CValidateCard()
}
COM_INTERFACE_ENTRY(IValidateCard)
COM_INTERFACE_ENTRY(IDispatch)
STDMETHOD(PrefixCheck)(/*[in]*/ BSTR bstrCCNo,/*[in]*/BSTR bstrCCType);
STDMETHOD(LengthCheck)(/*[in]*/ BSTR bstrCCNo,/*[in]*/BSTR bstrCCType);
STDMETHOD(LuhnCheck)(/*[in]*/ BSTR bstrCCNo,/*[in]*/BSTR bstrCCType);
STDMETHOD(ValidateCreditCard)(/*[in]*/ BSTR bstrCCNo,/*[in]*/BSTR bstrCCType,/*[out,retval]*/long *val);