//--------------------------------------------------------------------------- // OEJunk.idl //--------------------------------------------------------------------------- import "objidl.idl"; import "ocidl.idl"; import "mimeole.idl"; //--------------------------------------------------------------------------- // Interfaces //--------------------------------------------------------------------------- interface IOEJunkFilter; // Make sure we only bring in this file only once cpp_quote("// Bring in only once") cpp_quote("#if _MSC_VER > 1000") cpp_quote("#pragma once") cpp_quote("#endif") cpp_quote("") //--------------------------------------------------------------------------- // HRESULT Macros //--------------------------------------------------------------------------- cpp_quote("#ifndef FACILITY_INTERNET") cpp_quote("#define FACILITY_INTERNET 12") cpp_quote("#endif") cpp_quote("#ifndef HR_E") cpp_quote("#define HR_E(n) MAKE_SCODE(SEVERITY_ERROR, FACILITY_INTERNET, n)") cpp_quote("#endif") cpp_quote("#ifndef HR_S") cpp_quote("#define HR_S(n) MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_INTERNET, n)") cpp_quote("#endif") cpp_quote("#ifndef HR_CODE") cpp_quote("#define HR_CODE(hr) (INT)(hr & 0xffff)") cpp_quote("#endif") cpp_quote("") cpp_quote("//+-------------------------------------------------------------------------") cpp_quote("// GUID Definitions") cpp_quote("//--------------------------------------------------------------------------") cpp_quote("#pragma comment(lib,\"uuid.lib\")") cpp_quote("") cpp_quote("// {2f97b130-2266-11d2-b1f2-006097d503d9}") cpp_quote("DEFINE_GUID(IID_IOEJunkFilter, 0x2f97b130, 0x2266, 0x11d2, 0xb1, 0xf2, 0x0, 0x60, 0x97, 0xd5, 0x03, 0xd9);") cpp_quote("") //--------------------------------------------------------------------------- // Junk Manager HRESULTs //--------------------------------------------------------------------------- //--------------------------------------------------------------------------- // IOEJunkFilter interface //--------------------------------------------------------------------------- [ object, uuid(2f97b130-2266-11d2-b1f2-006097d503d9), pointer_default(unique), version(1.0) ] interface IOEJunkFilter : IUnknown { HRESULT SetIdentity( [in] LPCSTR pszFirstName, [in] LPCSTR pszLastName, [in] LPCSTR pszComanyName); const ULONG STF_USE_DEFAULT = 0x00000001; const ULONG STF_USE_MOST = 0x00000002; const ULONG STF_USE_LEAST = 0x00000003; const ULONG STF_USE_MORE = 0x00000004; const ULONG STF_USE_LESS = 0x00000005; HRESULT SetSpamThresh( [in] ULONG ulThresh); HRESULT GetSpamThresh( [out] ULONG * pulThresh); HRESULT GetDefaultSpamThresh( [out] DOUBLE * pdblThresh); HRESULT LoadDataFile( [in] LPCSTR pszFilePath); const DWORD CJPF_SENT_TO_ME = 0x00000001; HRESULT CalcJunkProb( [in] DWORD dwFlags, [in] IMimePropertySet * pIMPropSet, [in] IMimeMessage * pIMMsg, [out] double * pdblProb); }; //--------------------------------------------------------------------------- // OE Junk Mail Type Library //--------------------------------------------------------------------------- [ uuid(2f97b131-2266-11d2-b1f2-006097d503d9), version(1.0), helpstring("Microsoft Outlook Express Junk Mail Type Library") ] library OERules { importlib("stdole2.tlb"); [ uuid(2f97b132-2266-11d2-b1f2-006097d503d9), ] coclass OEJunkFilter { [default] interface IOEJunkFilter; }; };