You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
781 lines
25 KiB
781 lines
25 KiB
//+---------------------------------------------------------------------------
|
|
//
|
|
// Copyright 2001 Microsoft Corporation. All Rights Reserved.
|
|
//
|
|
// Contents: MSN Messenger UI Automantion interfaces
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
#ifdef __MKTYPLIB__
|
|
#define VARIANT_BOOL boolean
|
|
#else // __MKTYPLIB__
|
|
cpp_quote("//+-------------------------------------------------------------------------")
|
|
cpp_quote("//")
|
|
cpp_quote("// Microsoft Windows")
|
|
cpp_quote("// Copyright 1997 Microsoft Corporation. All Rights Reserved.")
|
|
cpp_quote("//")
|
|
cpp_quote("// File: msnmsgrua.h")
|
|
cpp_quote("//")
|
|
cpp_quote("//--------------------------------------------------------------------------")
|
|
|
|
|
|
import "objidl.idl";
|
|
import "oleidl.idl";
|
|
import "oaidl.idl";
|
|
#endif // __MKTYPLIB__
|
|
#include "mdispid.h"
|
|
|
|
#define MSGR_S(e) (0x01000300 + (e))
|
|
#define MSGR_E(e) (0x81000300 + (e))
|
|
#define E_FAIL 0x80004005
|
|
#define S_OK 0
|
|
|
|
//////////////////////////////////////////////////////////////////////////////////
|
|
// GUID usage:
|
|
// {218CB450-20B6-11d2-8E17-0000F803A446}-{218CB45F-20B6-11d2-8E17-0000F803A446}
|
|
|
|
//--------------------------------------------------------------------------
|
|
// Type Library
|
|
[
|
|
uuid(218CB45F-20B6-11d2-8E17-0000F803A446), // LIBID_Messenger
|
|
version(1.0),
|
|
helpstring("Messenger UI Automation Type Library")
|
|
]
|
|
library Messenger
|
|
{
|
|
importlib("stdole32.tlb");
|
|
interface IMessengerUA;
|
|
interface IMessengerIMWindow;
|
|
interface IMessengerIMWindows;
|
|
interface IMessengerContact;
|
|
interface IMessengerContacts;
|
|
|
|
#define DISPID_VALUE 0
|
|
#define DISPID_NEWENUM -4
|
|
|
|
typedef enum
|
|
{
|
|
MSTATE_UNKNOWN = 0x0000,
|
|
|
|
MSTATE_OFFLINE = 0x0001,
|
|
MSTATE_ONLINE = 0x0002,
|
|
MSTATE_INVISIBLE = 0x0006,
|
|
MSTATE_BUSY = 0x000A,
|
|
MSTATE_BE_RIGHT_BACK = 0x000E,
|
|
MSTATE_IDLE = 0x0012,
|
|
MSTATE_AWAY = 0x0022,
|
|
MSTATE_ON_THE_PHONE = 0x0032,
|
|
MSTATE_OUT_TO_LUNCH = 0x0042,
|
|
|
|
MSTATE_LOCAL_FINDING_SERVER = 0x0100,
|
|
MSTATE_LOCAL_CONNECTING_TO_SERVER = 0x0200,
|
|
MSTATE_LOCAL_SYNCHRONIZING_WITH_SERVER = 0x0300,
|
|
MSTATE_LOCAL_DISCONNECTING_FROM_SERVER = 0x0400,
|
|
}
|
|
MSTATE;
|
|
|
|
typedef enum
|
|
{
|
|
MPROMPT_YES_IF_NOT_ALLOWED_OR_BLOCKED = 0,
|
|
MPROMPT_NO_ADD_TO_ALLOW = 1,
|
|
}
|
|
MPROMPT;
|
|
|
|
typedef enum
|
|
{
|
|
MMSGPRIVACY_BLOCK_LIST_EXCLUDED = 0,
|
|
MMSGPRIVACY_ALLOW_LIST_ONLY = 1,
|
|
}
|
|
MMSGPRIVACY;
|
|
|
|
typedef enum
|
|
{
|
|
MURLTYPE_CHANGE_PASSWORD = 0,
|
|
MURLTYPE_CHANGE_INFO = 1,
|
|
MURLTYPE_COMPOSE_EMAIL = 2,
|
|
MURLTYPE_GO_TO_EMAIL_INBOX = 3,
|
|
MURLTYPE_GO_TO_EMAIL_FOLDERS = 4,
|
|
MURLTYPE_MOBILE_SIGNUP = 5,
|
|
MURLTYPE_CHANGE_MOBILE_INFO = 6,
|
|
MURLTYPE_CHANGE_PROFILE = 7,
|
|
MURLTYPE_N2P_ACCOUNT = 8,
|
|
MURLTYPE_N2P_ADD_FUND = 9
|
|
}
|
|
MURLTYPE;
|
|
|
|
typedef enum
|
|
{
|
|
MLIST_CONTACT = 0,
|
|
MLIST_ALLOW = 1,
|
|
MLIST_BLOCK = 2,
|
|
MLIST_REVERSE = 3,
|
|
}
|
|
MLIST;
|
|
|
|
typedef enum
|
|
{
|
|
MMSGTYPE_NO_RESULT = 0,
|
|
MMSGTYPE_ERRORS_ONLY = 1,
|
|
MMSGTYPE_ALL_RESULTS = 2,
|
|
}
|
|
MMSGTYPE;
|
|
|
|
typedef enum
|
|
{
|
|
MUPDATE_OPTIONAL = 0x00000001,
|
|
MUPDATE_MANDATORY = 0x00000002,
|
|
MUPDATE_BRANDED = 0x00000004,
|
|
}
|
|
MUPDATE_FLAGS;
|
|
|
|
typedef enum
|
|
{
|
|
MIF_REQUEST_LAUNCH = 0x00000001,
|
|
MIF_REQUEST_IP = 0x00000004,
|
|
MIF_PROVIDE_IP = 0x00000008,
|
|
}
|
|
MINVITE_FLAGS;
|
|
|
|
typedef enum
|
|
{
|
|
MPFLFIELD_COUNTRY = 0,
|
|
MPFLFIELD_POSTALCODE = 1,
|
|
MPFLFIELD_LANG_PREFERENCE = 2,
|
|
MPFLFIELD_GENDER = 3,
|
|
MPFLFIELD_PREFERRED_EMAIL = 4,
|
|
MPFLFIELD_NICKNAME = 5,
|
|
MPFLFIELD_ACCESSIBILITY = 6,
|
|
MPFLFIELD_WALLET = 7,
|
|
MPFLFIELD_DIRECTORY = 8,
|
|
MPFLFIELD_INETACCESS = 9,
|
|
}
|
|
MPFLFIELD;
|
|
|
|
typedef enum
|
|
{
|
|
MSGR_E_CONNECT = MSGR_E(0x0001),
|
|
MSGR_E_INVALID_SERVER_NAME = MSGR_E(0x0002),
|
|
MSGR_E_INVALID_PASSWORD = MSGR_E(0x0003),
|
|
MSGR_E_ALREADY_LOGGED_ON = MSGR_E(0x0004),
|
|
MSGR_E_SERVER_VERSION = MSGR_E(0x0005),
|
|
MSGR_E_LOGON_TIMEOUT = MSGR_E(0x0006),
|
|
MSGR_E_LIST_FULL = MSGR_E(0x0007),
|
|
MSGR_E_AI_REJECT = MSGR_E(0x0008),
|
|
MSGR_E_AI_REJECT_NOT_INST = MSGR_E(0x0009),
|
|
MSGR_E_USER_NOT_FOUND = MSGR_E(0x000A),
|
|
MSGR_E_ALREADY_IN_LIST = MSGR_E(0x000B),
|
|
MSGR_E_DISCONNECTED = MSGR_E(0x000C),
|
|
MSGR_E_UNEXPECTED = MSGR_E(0x000D),
|
|
MSGR_E_SERVER_TOO_BUSY = MSGR_E(0x000E),
|
|
MSGR_E_INVALID_AUTH_PACKAGES = MSGR_E(0x000F),
|
|
MSGR_E_NEWER_CLIENT_AVAILABLE = MSGR_E(0x0010),
|
|
MSGR_E_AI_TIMEOUT = MSGR_E(0x0011),
|
|
MSGR_E_CANCEL = MSGR_E(0x0012),
|
|
MSGR_E_TOO_MANY_MATCHES = MSGR_E(0x0013),
|
|
MSGR_E_SERVER_UNAVAILABLE = MSGR_E(0x0014),
|
|
MSGR_E_LOGON_UI_ACTIVE = MSGR_E(0x0015),
|
|
MSGR_E_OPTION_UI_ACTIVE = MSGR_E(0x0016),
|
|
MSGR_E_CONTACT_UI_ACTIVE = MSGR_E(0x0017),
|
|
MSGR_E_PRIMARY_SERVICE_NOT_LOGGED_ON = MSGR_E(0x0018),
|
|
MSGR_E_LOGGED_ON = MSGR_E(0x0019),
|
|
MSGR_E_CONNECT_PROXY = MSGR_E(0x001A),
|
|
MSGR_E_PROXY_AUTH = MSGR_E(0x001B),
|
|
MSGR_E_PROXY_AUTH_TYPE = MSGR_E(0x001C),
|
|
MSGR_E_INVALID_PROXY_NAME = MSGR_E(0x001D),
|
|
MSGR_E_NOT_LOGGED_ON = MSGR_E(0x001E),
|
|
MSGR_E_NOT_PRIMARY_SERVICE = MSGR_E(0x0020),
|
|
MSGR_E_TOO_MANY_SESSIONS = MSGR_E(0x0021),
|
|
MSGR_E_TOO_MANY_MESSAGES = MSGR_E(0x0022),
|
|
MSGR_E_REMOTE_LOGIN = MSGR_E(0x0023),
|
|
MSGR_E_INVALID_FRIENDLY_NAME = MSGR_E(0x0024),
|
|
MSGR_E_SESSION_FULL = MSGR_E(0x0025),
|
|
MSGR_E_NOT_ALLOWING_NEW_USERS = MSGR_E(0x0026),
|
|
MSGR_E_INVALID_DOMAIN = MSGR_E(0x0027),
|
|
MSGR_E_TCP_ERROR = MSGR_E(0x0028),
|
|
MSGR_E_SESSION_TIMEOUT = MSGR_E(0x0029),
|
|
MSGR_E_MULTIPOINT_SESSION_BEGIN_TIMEOUT = MSGR_E(0x002a),
|
|
MSGR_E_MULTIPOINT_SESSION_END_TIMEOUT = MSGR_E(0x002b),
|
|
MSGR_E_REVERSE_LIST_FULL = MSGR_E(0x002c),
|
|
MSGR_E_SERVER_ERROR = MSGR_E(0x002d),
|
|
MSGR_E_SYSTEM_CONFIG = MSGR_E(0x002e),
|
|
MSGR_E_NO_DIRECTORY = MSGR_E(0x002f),
|
|
MSGR_E_RETRY_SET = MSGR_E(0x0030),
|
|
MSGR_E_CHILD_WITHOUT_CONSENT = MSGR_E(0x0031),
|
|
MSGR_E_USER_CANCELLED = MSGR_E(0x0032),
|
|
MSGR_E_CANCEL_BEFORE_CONNECT = MSGR_E(0x0033),
|
|
MSGR_E_VOICE_IM_TIMEOUT = MSGR_E(0x0034),
|
|
MSGR_E_NOT_ACCEPTING_PAGES = MSGR_E(0x0035),
|
|
MSGR_E_EMAIL_PASSPORT_NOT_VALIDATED = MSGR_E(0x0036),
|
|
MSGR_E_AUDIO_UI_ACTIVE = MSGR_E(0x0037),
|
|
MSGR_E_NO_HARDWARE = MSGR_E(0x0038),
|
|
MSGR_E_PAGING_UNAVAILABLE = MSGR_E(0x0039),
|
|
MSGR_E_PHONE_INVALID_NUMBER = MSGR_E(0x003a),
|
|
MSGR_E_PHONE_NO_FUNDS = MSGR_E(0x003b),
|
|
MSGR_E_VOICE_NO_ANSWER = MSGR_E(0x003c),
|
|
MSGR_E_VOICE_WAVEIN_DEVICE = MSGR_E(0x003d),
|
|
MSGR_E_FT_TIMEOUT = MSGR_E(0x003e),
|
|
MSGR_E_MESSAGE_TOO_LONG = MSGR_E(0x003f),
|
|
MSGR_E_VOICE_FIREWALL = MSGR_E(0x0040),
|
|
MSGR_E_VOICE_NETCONN = MSGR_E(0x0041),
|
|
MSGR_E_PHONE_CIRCUITS_BUSY = MSGR_E(0x0042),
|
|
MSGR_E_SERVER_PROTOCOL = MSGR_E(0x0043),
|
|
MSGR_E_UNAVAILABLE_VIA_HTTP = MSGR_E(0x0044),
|
|
MSGR_E_PHONE_INVALID_PIN = MSGR_E(0x0045),
|
|
MSGR_E_PHONE_PINPROCEED_TIMEOUT = MSGR_E(0x0046),
|
|
MSGR_E_SERVER_SHUTDOWN = MSGR_E(0x0047),
|
|
MSGR_E_CLIENT_DISALLOWED = MSGR_E(0x0048),
|
|
MSGR_E_PHONE_CALL_NOT_COMPLETE = MSGR_E(0x0049),
|
|
|
|
MSGR_S_ALREADY_IN_THE_MODE = MSGR_S(0x0001),
|
|
MSGR_S_TRANSFER_SEND_BEGUN = MSGR_S(0x0002),
|
|
MSGR_S_TRANSFER_SEND_FINISHED = MSGR_S(0x0003),
|
|
MSGR_S_TRANSFER_RECEIVE_BEGUN = MSGR_S(0x0004),
|
|
MSGR_S_TRANSFER_RECEIVE_FINISHED = MSGR_S(0x0005),
|
|
|
|
MSGR_E_FAIL = E_FAIL,
|
|
MSGR_S_OK = S_OK,
|
|
}
|
|
MSGRConstants;
|
|
|
|
typedef enum
|
|
{
|
|
SSTATE_DISCONNECTED = 0,
|
|
SSTATE_CONNECTING = 1,
|
|
SSTATE_CONNECTED = 2,
|
|
SSTATE_DISCONNECTING = 3,
|
|
SSTATE_ERROR = 4,
|
|
}
|
|
SSTATE;
|
|
|
|
typedef enum
|
|
{
|
|
MFOLDER_INBOX = 0,
|
|
MFOLDER_ALL_OTHER_FOLDERS = 1,
|
|
}
|
|
MFOLDER;
|
|
|
|
// If you modify this enumeration, be sure to update loTable in blobject.cpp!!
|
|
typedef enum
|
|
{
|
|
[helpstring("Proxy State")] MLOPT_PROXY_STATE = 0,
|
|
[helpstring("Proxy Type")] MLOPT_PROXY_TYPE = 1,
|
|
[helpstring("SOCKS4 Proxy Server")] MLOPT_SOCKS4_SERVER = 2,
|
|
[helpstring("SOCKS5 Proxy Server")] MLOPT_SOCKS5_SERVER = 3,
|
|
[helpstring("HTTPS Proxy Server")] MLOPT_HTTPS_SERVER = 4,
|
|
[helpstring("SOCKS4 Port")] MLOPT_SOCKS4_PORT = 5,
|
|
[helpstring("SOCKS5 Port")] MLOPT_SOCKS5_PORT = 6,
|
|
[helpstring("HTTPS Port")] MLOPT_HTTPS_PORT = 7,
|
|
[helpstring("SOCKS5 Username")] MLOPT_SOCKS5_USERNAME = 8,
|
|
[helpstring("SOCKS5 Password")] MLOPT_SOCKS5_PASSWORD = 9,
|
|
[helpstring("Server Name")] MLOPT_SERVER_NAME = 10,
|
|
[helpstring("Enable Idle Detect")] MLOPT_ENABLE_IDLE_DETECT = 11,
|
|
[helpstring("Idle Threshold")] MLOPT_IDLE_THRESHOLD = 12,
|
|
[helpstring("Idle Detectable")] MLOPT_IDLE_DETECTABLE = 13,
|
|
[helpstring("ScreenSaver Detectable")] MLOPT_SS_DETECTABLE = 14,
|
|
[helpstring("HTTP Proxy Server")] MLOPT_HTTP_SERVER = 15,
|
|
[helpstring("HTTP Proxy Port")] MLOPT_HTTP_PORT = 16,
|
|
}
|
|
MLOCALOPTION;
|
|
|
|
|
|
//If you change this, then change the g_szPropertyString[] and g_uUserPropPropertyStringID[]
|
|
//arrays as well. You'll also need to check that the equivalents in basicim.idl are still
|
|
//OK.
|
|
typedef enum
|
|
{
|
|
MUSERPROP_INVALID_PROPERTY = -1,
|
|
MUSERPROP_HOME_PHONE_NUMBER = 0,
|
|
MUSERPROP_WORK_PHONE_NUMBER = 1,
|
|
MUSERPROP_MOBILE_PHONE_NUMBER = 2,
|
|
MUSERPROP_PAGES_ALLOWED = 3,
|
|
|
|
MUSERPROP_NUMBER_OF_PUBLIC_PROPERTIES = 4,
|
|
|
|
MUSERPROP_PAGES_ENABLED = 4,
|
|
MUSERPROP_NUMBER_OF_PROPERTIES,
|
|
}
|
|
MUSERPROPERTY;
|
|
|
|
typedef enum
|
|
{
|
|
MLOPT_MAX_SERVICE_STRING = 255,
|
|
MLOPT_MAX_PROXY_STRING = 255,
|
|
MLOPT_MAX_PORT_NUMBER = 65535,
|
|
MLOPT_MAX_IDLE_THRESHOLD = 999,
|
|
}
|
|
MLOCALOPTION_LIMITS;
|
|
|
|
typedef enum
|
|
{
|
|
[helpstring("Proxy Type: No proxy")] MPROXYTYPE_NO_PROXY = 0,
|
|
[helpstring("Proxy Type: SOCKS 4")] MPROXYTYPE_SOCKS4 = 1,
|
|
[helpstring("Proxy Type: SOCKS 5")] MPROXYTYPE_SOCKS5 = 2,
|
|
[helpstring("Proxy Type: HTTPS")] MPROXYTYPE_HTTPS = 3,
|
|
[helpstring("Proxy Type: HTTP")] MPROXYTYPE_HTTP = 4,
|
|
}
|
|
MPROXYTYPE;
|
|
|
|
// If you update this enumeration, be sure to fixup COptionsConnectionDlg::SetConnectionText
|
|
typedef enum
|
|
{
|
|
MCONNECTIONTYPE_DISCONNECTED = 0,
|
|
MCONNECTIONTYPE_DIRECT = 1,
|
|
MCONNECTIONTYPE_BROWSER_PROXY = 2,
|
|
MCONNECTIONTYPE_HTTP_PROXY = 3,
|
|
MCONNECTIONTYPE_SOCKS_PROXY = 4,
|
|
}
|
|
MCONNECTIONTYPE;
|
|
|
|
typedef enum
|
|
{
|
|
MOPTDLG_GENERAL_PAGE = 0,
|
|
MOPTDLG_PRIVACY_PAGE = 1,
|
|
MOPTDLG_EXCHANGE_PAGE = 2,
|
|
MOPTDLG_ACCOUNTS_PAGE = 3,
|
|
MOPTDLG_CONNECTION_PAGE = 4,
|
|
MOPTDLG_PHONE_PAGE = 5,
|
|
}
|
|
MOPTDLGPAGE;
|
|
|
|
typedef enum
|
|
{
|
|
MSF_PRIMARY = 0x00000001, // capable of being primary
|
|
MSF_APP_INVITE = 0x00000002, // supports app invites
|
|
MSF_MULTI_IM = 0x00000004, // supports multiway IM sessions
|
|
MSF_BLOCKING = 0x00000008, // unused
|
|
MSF_UNAME_IN_EMAIL_FMT = 0x00000010, // usernames look like e-mail names
|
|
MSF_LOCAL_LISTS = 0x00000020, // lists are kept locally, not on server
|
|
MSF_FIND_USER = 0x00000040, // supports FindUser
|
|
MSF_INVITE_MAIL = 0x00000080, // can send invitation mail
|
|
MSF_INTERNET = 0x00000100, // connects to server thru internet
|
|
MSF_NO_ALLOW_LIST = 0x00000200 // no allow list supported
|
|
}
|
|
MSERVICE_FLAGS;
|
|
|
|
typedef enum
|
|
{
|
|
MFT_SAVE_PASSWORD= 0x00000000,
|
|
MFT_DONT_SAVE_PASSWORD= 0x00000001,
|
|
MFT_OVERWRITE_EXISTING= 0x00000002,
|
|
}
|
|
MFIRSTTIME_FLAGS;
|
|
|
|
typedef enum
|
|
{
|
|
MSS_LOGGED_ON = 0,
|
|
MSS_NOT_LOGGED_ON = 1,
|
|
MSS_LOGGING_ON = 2,
|
|
MSS_LOGGING_OFF = 3
|
|
}
|
|
MSVCSTATUS;
|
|
|
|
typedef enum
|
|
{
|
|
MFTF_SENDING = 0x00000004,
|
|
MFTF_RECEIVING = 0x00000008,
|
|
MFTF_CONNECTING = 0x00000010,
|
|
MFTF_CONNECTED = 0x00000020,
|
|
MFTF_DISCONNECTED = 0x00000040,
|
|
}
|
|
MFILETRANSFER_FLAGS;
|
|
|
|
|
|
//--------------------------------------------------------------------------
|
|
// IMessengerUA Interface
|
|
[
|
|
uuid(F3A614DD-ABE0-11d2-A441-00C04F795683), // IID_IMessengerUA
|
|
helpstring("Messenger UI Automation Interface"),
|
|
helpcontext(0x0000),
|
|
dual,
|
|
oleautomation
|
|
]
|
|
interface IMessengerUA : IDispatch
|
|
{
|
|
[propget, helpstring("Returns the application automation object."), helpcontext(0x0000)]
|
|
HRESULT Application(
|
|
[out, retval] IDispatch** ppDisp);
|
|
|
|
[propget, helpstring("Returns the automation object of the container/parent if one exists or this automation object."), helpcontext(0x0000)]
|
|
HRESULT Parent(
|
|
[out, retval] IDispatch** ppDisp);
|
|
|
|
[id(100), helpstring("Exits application."), helpcontext(0x0000)]
|
|
HRESULT Quit();
|
|
|
|
[propget, helpstring("Returns name of the application."), helpcontext(0x0000)]
|
|
HRESULT Name(
|
|
[out, retval] BSTR* pbstrName);
|
|
|
|
[propget, helpstring("Returns file specification of the application, including path."), helpcontext(0x0000)]
|
|
HRESULT FullName(
|
|
[out, retval] BSTR* pbstrFullName);
|
|
|
|
[propget, helpstring("Returns the path to the application."), helpcontext(0x0000)]
|
|
HRESULT Path(
|
|
[out, retval] BSTR* pbstrPath);
|
|
|
|
// do we need success/failure result/event or use OnLogonResult event?
|
|
[id(200), helpstring("Initiates Logon dialog."), helpcontext(0x0000)]
|
|
HRESULT LaunchLogonUI();
|
|
|
|
[id(201), helpstring("Initiates Options dialog."), helpcontext(0x0000)]
|
|
HRESULT LaunchOptionsUI(
|
|
[in] MOPTDLGPAGE mOptDlgPage);
|
|
|
|
// do we need success/failure result/event or use OnListAddResult event
|
|
[id(202), helpstring("Initiates Add Contact dialog."), helpcontext(0x0000)]
|
|
HRESULT LaunchAddContactUI(
|
|
[in] BSTR bstrEMail);
|
|
|
|
[id(203), helpstring("Initiates Find Contact Dialog."), helpcontext(0x0000)]
|
|
HRESULT LaunchFindContactUI(
|
|
[in] BSTR bstrFirstName,
|
|
[in] BSTR bstrLastName,
|
|
[in, optional] VARIANT vbstrCity,
|
|
[in, optional] VARIANT vbstrState,
|
|
[in, optional] VARIANT vbstrCountry);
|
|
|
|
[id(210), helpstring("Initiates IM Window."), helpcontext(0x0000)]
|
|
HRESULT LaunchIMUI(
|
|
[in] VARIANT vUser,
|
|
[out, retval] IMessengerIMWindow** ppIMWindow);
|
|
|
|
[propget, helpstring("Collection of current IM Windows."), helpcontext(0x0000)]
|
|
HRESULT IMWindows(
|
|
[out, retval] IMessengerIMWindows** ppIMWindows);
|
|
|
|
[propget, helpstring("ToolBar visibility."), helpcontext(0x0000)]
|
|
HRESULT ToolBar(
|
|
[out, retval] VARIANT_BOOL* pBoolToolBar);
|
|
|
|
[propput]
|
|
HRESULT ToolBar(
|
|
[in] VARIANT_BOOL BoolToolBar);
|
|
|
|
[propget, helpstring("StatusBar visibility."), helpcontext(0x0000)]
|
|
HRESULT StatusBar(
|
|
[out, retval] VARIANT_BOOL* pBoolStatusBar);
|
|
|
|
[propput]
|
|
HRESULT StatusBar(
|
|
[in] VARIANT_BOOL BoolStatusBar);
|
|
|
|
[propget, helpstring("Text of StatusBar."), helpcontext(0x0000)]
|
|
HRESULT StatusText(
|
|
[out, retval] BSTR *pbstrStatusText);
|
|
|
|
[propput]
|
|
HRESULT StatusText(
|
|
[in] BSTR bstrStatusText);
|
|
|
|
[propget, helpstring("Returns the Handle of the Application window."), helpcontext(0x0000)]
|
|
HRESULT HWND(
|
|
[out, retval] long *phWnd);
|
|
|
|
[propget, helpstring("The horizontal position (pixels) of the Application window relative to the screen."), helpcontext(0x0000)]
|
|
HRESULT Left(
|
|
[out, retval] long *plLeft);
|
|
|
|
[propput]
|
|
HRESULT Left(
|
|
[in] long lLeft);
|
|
|
|
[propget, helpstring("The vertical position (pixels) of the Application window relative to the screen."), helpcontext(0x0000)]
|
|
HRESULT Top(
|
|
[out, retval] long *plTop);
|
|
|
|
[propput]
|
|
HRESULT Top(
|
|
[in] long lTop);
|
|
|
|
[propget, helpstring("The horizontal dimension (pixels) of the Application window."), helpcontext(0x0000)]
|
|
HRESULT Width(
|
|
[out, retval] long *plWidth);
|
|
|
|
[propput]
|
|
HRESULT Width(
|
|
[in] long lWidth);
|
|
|
|
[propget, helpstring("The vertical dimension (pixels) of the Application window."), helpcontext(0x0000)]
|
|
HRESULT Height(
|
|
[out, retval] long *plHeight);
|
|
|
|
[propput]
|
|
HRESULT Height(
|
|
[in] long lHeight);
|
|
|
|
[propget, helpstring("Visibility of the application."), helpcontext(0x0000)]
|
|
HRESULT Visible(
|
|
[out, retval] VARIANT_BOOL* pBoolVisible);
|
|
|
|
[propput]
|
|
HRESULT Visible(
|
|
[in] VARIANT_BOOL BoolVisible);
|
|
|
|
[id(222), helpstring("Initiates a Logon without UI if connected to the network and user saved the password."), helpcontext(0x0000)]
|
|
HRESULT AutoLogon();
|
|
|
|
[id(225), helpstring("Initiates Phone Window."), helpcontext(0x0000)]
|
|
HRESULT LaunchPhoneUI(
|
|
[in] VARIANT vUser,
|
|
[in] MUSERPROPERTY ePhoneNumber);
|
|
|
|
[id(226), helpstring("Launches the audio tuning wizard."), helpcontext(0x0000)]
|
|
HRESULT LaunchAudioTuningWizard(
|
|
[in] long hwndParent);
|
|
|
|
[id(227), helpstring("Initiates Pager IM Window."), helpcontext(0x0000)]
|
|
HRESULT LaunchPagerUI(
|
|
[in] VARIANT vUser,
|
|
[out, retval] IMessengerIMWindow** ppIMWindow);
|
|
|
|
[propget, helpstring("Returns the Contact list.")]
|
|
HRESULT ContactList([out, retval] IMessengerContacts** ppMContacts);
|
|
|
|
[propget, helpstring("Logon name.")]
|
|
HRESULT LocalLogonName([out, retval] BSTR* pbstrName);
|
|
|
|
[propput, helpstring("Local state.")]
|
|
HRESULT LocalState([in] MSTATE mState);
|
|
|
|
[propget]
|
|
HRESULT LocalState([out, retval] MSTATE* pmState);
|
|
|
|
}
|
|
|
|
//--------------------------------------------------------------------------
|
|
// DMessengerUAEvents Interface
|
|
[
|
|
uuid(59EC0341-7506-11d2-B05F-00C04F7F89FE), // DIID_DMessengerUAEvents
|
|
helpstring("Messenger Events for OE Private Interface"),
|
|
hidden
|
|
]
|
|
dispinterface DMessengerUAEvents
|
|
{
|
|
properties:
|
|
methods:
|
|
[id(DISPID_ONLOGONRESULT), helpstring("Logon attempt complete.")]
|
|
void OnLogonResult([in] long hr);
|
|
|
|
[id(DISPID_ONLOGOFF), helpstring("Logoff complete.")]
|
|
void OnLogoff();
|
|
|
|
[id(DISPID_ONLISTADDRESULT), helpstring("Result from list add request.")]
|
|
void OnContactListAddResult([in] long hr,
|
|
[in] IMessengerContact* pMContact);
|
|
|
|
[id(DISPID_ONLISTREMOVERESULT), helpstring("Result from list remove request.")]
|
|
void OnContactListRemoveResult([in] long hr,
|
|
[in] IMessengerContact* pMContact);
|
|
|
|
[id(DISPID_ONUSERFRIENDLYNAMECHANGERESULT), helpstring("Result from name change request.")]
|
|
void OnUserFriendlyNameChangeResult([in] long hr,
|
|
[in] IMessengerContact* pMContact,
|
|
[in] BSTR bstrPrevFriendlyName);
|
|
|
|
[id(DISPID_ONUSERSTATECHANGED), helpstring("User state changed.")]
|
|
void OnUserStateChanged([in] IMessengerContact* pMContact,
|
|
[in] MSTATE mPrevStateOE);
|
|
|
|
[id(DISPID_ONLOCALSTATECHANGERESULT), helpstring("Result from local state request.")]
|
|
void OnLocalStateChangeResult([in] long hr,
|
|
[in] MSTATE mLocalStateOE);
|
|
|
|
[id(DISPID_ONAPPSHUTDOWN), helpstring("Messenger is shutting down."), helpcontext(0x0000)]
|
|
void OnAppShutdown();
|
|
}
|
|
|
|
//--------------------------------------------------------------------------
|
|
// IMessengerIMWindow Interface
|
|
[
|
|
uuid(35EDD1CD-1A8C-11d2-B49D-00C04FB90376), // IID_IMessengerIMWindow
|
|
helpstring("Messenger IM Window Interface"),
|
|
helpcontext(0x0000),
|
|
dual,
|
|
oleautomation
|
|
]
|
|
interface IMessengerIMWindow : IDispatch
|
|
{
|
|
[propget, helpstring("Returns the application automation object if accessible, this automation object otherwise."), helpcontext(0x0000)]
|
|
HRESULT Application(
|
|
[out, retval] IDispatch** ppDisp);
|
|
|
|
[propget, helpstring("Returns the automation object of the container/parent if one exists or this automation object."), helpcontext(0x0000)]
|
|
HRESULT Parent(
|
|
[out, retval] IDispatch** ppDisp);
|
|
|
|
[propget, helpstring("Current history in the window."), helpcontext(0x0000)]
|
|
HRESULT History(
|
|
[out, retval] BSTR* pbstrHistory);
|
|
|
|
[id(300), helpstring("Sends a text message through the IM window."), helpcontext(0x0000)]
|
|
HRESULT SendText(
|
|
[in] BSTR bstrSendText);
|
|
|
|
[id(301), helpstring("Closes the IM window."), helpcontext(0x0000)]
|
|
HRESULT Close();
|
|
|
|
[propget, helpstring("ToolBar visibility."), helpcontext(0x0000)]
|
|
HRESULT ToolBar(
|
|
[out, retval] VARIANT_BOOL* pBoolToolBar);
|
|
|
|
[propput]
|
|
HRESULT ToolBar(
|
|
[in] VARIANT_BOOL BoolToolBar);
|
|
|
|
[propget, helpstring("StatusBar visibility."), helpcontext(0x0000)]
|
|
HRESULT StatusBar(
|
|
[out, retval] VARIANT_BOOL* pBoolStatusBar);
|
|
|
|
[propput]
|
|
HRESULT StatusBar(
|
|
[in] VARIANT_BOOL BoolStatusBar);
|
|
|
|
[propget, helpstring("Text of StatusBar."), helpcontext(0x0000)]
|
|
HRESULT StatusText(
|
|
[out, retval] BSTR *pbstrStatusText);
|
|
|
|
[propput]
|
|
HRESULT StatusText(
|
|
[in] BSTR bstrStatusText);
|
|
|
|
[propget, helpstring("Returns the Handle of the IM window."), helpcontext(0x0000)]
|
|
HRESULT HWND(
|
|
[out, retval] long *phWnd);
|
|
|
|
[propget, helpstring("The horizontal position (pixels) of the IM window relative to the screen."), helpcontext(0x0000)]
|
|
HRESULT Left(
|
|
[out, retval] long *plLeft);
|
|
|
|
[propput]
|
|
HRESULT Left(
|
|
[in] long lLeft);
|
|
|
|
[propget, helpstring("The vertical position (pixels) of the IM window relative to the screen."), helpcontext(0x0000)]
|
|
HRESULT Top(
|
|
[out, retval] long *plTop);
|
|
|
|
[propput]
|
|
HRESULT Top(
|
|
[in] long lTop);
|
|
|
|
[propget, helpstring("The horizontal dimension (pixels) of the IM window."), helpcontext(0x0000)]
|
|
HRESULT Width(
|
|
[out, retval] long *plWidth);
|
|
|
|
[propput]
|
|
HRESULT Width(
|
|
[in] long lWidth);
|
|
|
|
[propget, helpstring("The vertical dimension (pixels) of the IM window."), helpcontext(0x0000)]
|
|
HRESULT Height(
|
|
[out, retval] long *plHeight);
|
|
|
|
[propput]
|
|
HRESULT Height(
|
|
[in] long lHeight);
|
|
|
|
[propget, helpstring("Visibility of the window."), helpcontext(0x0000)]
|
|
HRESULT Visible(
|
|
[out, retval] VARIANT_BOOL* pBoolVisible);
|
|
|
|
[propput]
|
|
HRESULT Visible(
|
|
[in] VARIANT_BOOL BoolVisible);
|
|
|
|
[propget, helpstring("Returns a collection object of current recipients in the IM Window."), helpcontext(0x0000)]
|
|
HRESULT Members(
|
|
[out, retval] IMessengerContacts** ppUsers);
|
|
}
|
|
|
|
//--------------------------------------------------------------------------
|
|
// IMessengerIMWindows Interface
|
|
[
|
|
uuid(35EDD1CC-1A8C-11d2-B49D-00C04FB90376), // IID_IMessengerIMWindows
|
|
helpstring("Messenger IM Windows Collection Interface"),
|
|
helpcontext(0x0000),
|
|
dual,
|
|
oleautomation
|
|
]
|
|
interface IMessengerIMWindows : IDispatch
|
|
{
|
|
[propget, helpstring("Number of IM Windows."), helpcontext(0x0000)]
|
|
HRESULT Count(
|
|
[out, retval] long* pcWindows);
|
|
|
|
[id(DISPID_VALUE), helpstring("Retrieves a specific IM Window by index."), helpcontext(0x0000)]
|
|
HRESULT Item(
|
|
[in] long Index,
|
|
[out, retval] IMessengerIMWindow** ppIMWindow);
|
|
|
|
[propget, restricted, id(DISPID_NEWENUM), helpstring("Enumerates the IM Windows."), helpcontext(0x0000)]
|
|
HRESULT _NewEnum(
|
|
[out, retval] IUnknown **ppUnknown);
|
|
}
|
|
|
|
//--------------------------------------------------------------------------
|
|
// IMessengerContact Interface
|
|
[
|
|
uuid(59EC0342-7506-11d2-B05F-00C04F7F89FE), // IID_IMessengerContact
|
|
helpstring("Messenger User for OE Private Interface"),
|
|
hidden,
|
|
oleautomation
|
|
]
|
|
interface IMessengerContact : IUnknown
|
|
{
|
|
[propget]
|
|
HRESULT FriendlyName([out, retval] BSTR* pbstrFriendlyName);
|
|
|
|
[propget, helpstring("State of the user.")]
|
|
HRESULT State([out, retval] MSTATE* pMstate);
|
|
|
|
[propget, helpstring("Logon Name of the user.")]
|
|
HRESULT LogonName([out, retval] BSTR* pbstrLogonName);
|
|
|
|
[propget]
|
|
HRESULT Property(
|
|
[in] MUSERPROPERTY ePropType,
|
|
[out, retval] VARIANT *pvPropVal);
|
|
}
|
|
|
|
//--------------------------------------------------------------------------
|
|
// IMessengerContacts Interface
|
|
[
|
|
uuid(59EC0343-7506-11d2-B05F-00C04F7F89FE), // IID_IMessengerContacts
|
|
helpstring("Messenger Users Collection for IBasicIM"),
|
|
hidden,
|
|
oleautomation
|
|
]
|
|
interface IMessengerContacts : IUnknown
|
|
{
|
|
[propget, helpstring("Number of users.")]
|
|
HRESULT Count([out, retval] long* pcUsers);
|
|
|
|
[id(DISPID_VALUE), helpstring("Retrieves a specific user by index.")]
|
|
HRESULT Item([in] long Index,
|
|
[out, retval] IMessengerContact** ppMContact);
|
|
|
|
[id(100), helpstring("Adds a user object to the collection.")]
|
|
HRESULT Add([in] IMessengerContact* pMContact);
|
|
|
|
[id(101), helpstring("Removes a user object from the collection.")]
|
|
HRESULT Remove([in] IMessengerContact* pMContact);
|
|
|
|
[propget, restricted, id(DISPID_NEWENUM), helpstring("Enumerates the users.")]
|
|
HRESULT _NewEnum([out, retval] IUnknown **ppUnknown);
|
|
}
|
|
|
|
[
|
|
uuid(FB7199AB-79BF-11d2-8D94-0000F875C541), // CLSID_MessengerUIAutomation
|
|
helpstring("Messenger UI Automation"),
|
|
appobject
|
|
]
|
|
coclass MessengerUIAutomation
|
|
{
|
|
[default] interface IMessengerUA;
|
|
[source, default] dispinterface DMessengerUAEvents;
|
|
};
|
|
};
|
|
|
|
|
|
// end
|