[
uuid(DDFFFE60-36D0-11CE-9F2D-00AA00510E3B),
version(1.6),
pointer_default(unique)
]
#define MAX_ALIAS_SIZE 16+1
#define MAX_STRING_SIZE 32+1
#define MAX_PHONE_SIZE 12+1
#define MAX_COMMENT_SIZE 79+1
#define MAX_PASSWORD_SIZE MAX_ALIAS_SIZE
interface WINDSREM
{
long RemoteIsServerRunning
();
long RemoteGetAllAccounts
([out] long * pPipeNumber);
long RemoteFinishUpload
([in, string] unsigned char * szCookie);
long RemoteGetContainerProps
([in] unsigned long dwContainerID,
[out] unsigned long * pdwContentCount);
long RemoteGetContainerRecipients
([in] unsigned long dwFlags,
[in] unsigned long dwContainerID,
[out] long * pPipeNumber);
long RemoteGetPublicFoldersList
([in] short nFlags,
[out] long * pPipeNumber);
long RemoteGetPublicFolderMessages
([in] short nFlags,
[in] unsigned long dwFolderID,
[out] long * pPipeNumber);
// ANSI Remote server calls
long RemoteChangePasswordA
([in] unsigned char * szMailbox,
[in, string] unsigned char * szOldPassword,
[in, string] unsigned char * szNewPassword);
long RemoteLogonMailBoxA
([in, string] unsigned char * szMailbox,
[in, string] unsigned char * szPassword,
[out, string, size_is(MAX_STRING_SIZE)] unsigned char * szFullName,
[out] unsigned long * pdwMailboxID);
long RemoteLogonMailBoxAndSetNotifA
([in, string] unsigned char * szMailbox,
[in, string] unsigned char * szPassword,
[out, string, size_is(MAX_STRING_SIZE)] unsigned char * szFullName,
[out] unsigned long * pdwMailboxID,
[in, string] unsigned char * szComputerName,
[in] unsigned long ulNotifMask,
[out] unsigned long * pulConnectionID);
long RemoteTerminateNotifA
([in, string] unsigned char * szComputerName,
[in] unsigned long ulConnectionID);
long RemoteValidateNotifA
([in, string] unsigned char * szComputerName,
[in, string] unsigned char * szMailboxName,
[in] unsigned long ulNotifMask,
[out] unsigned long * pulConnectionID);
long RemoteOpenMsgUploadPipeA
([in, string] unsigned char * szSenderMailbox,
[out] long * pPipeNumber,
[out, string, size_is(MAX_STRING_SIZE)] unsigned char * szCookie);
long RemoteSendMsgToAccountA
([in, string] unsigned char * szRecipAccount,
[in, string] unsigned char * szHeaderInfo,
[in, string] unsigned char * szCookie);
long RemoteOpenMsgDownloadPipeA
([in, string] unsigned char * szMailbox,
[out] unsigned long * pPipeNumber);
long RemoteOpenHeaderDownloadPipeA
([in, string] unsigned char * szMailbox,
[out] long * pPipeNumber);
long RemoteCheckNewMailA
([in, string] unsigned char * szMailbox,
[out] unsigned long * pulPending);
long RemoteOpenOneMsgDownloadPipeA
([in, string] unsigned char * szMailbox,
[out] long * pPipeNumber);
long RemoteGetRecipientPropsA
([in] unsigned long dwObjID,
[out] unsigned long * pdwUserType,
[out, string, size_is(MAX_ALIAS_SIZE)] unsigned char * szMailboxName,
[out, string, size_is(MAX_STRING_SIZE)] unsigned char * szFullName,
[out, string, size_is(MAX_STRING_SIZE)] unsigned char * szJobTitle,
[out, string, size_is(MAX_STRING_SIZE)] unsigned char * szOffice,
[out, string, size_is(MAX_PHONE_SIZE)] unsigned char * szPhone,
[out, string, size_is(MAX_PHONE_SIZE)] unsigned char * szAltPhone,
[out, string, size_is(MAX_PHONE_SIZE)] unsigned char * szFax,
[out, string, size_is(MAX_COMMENT_SIZE)] unsigned char * szComments,
[out, string, size_is(MAX_STRING_SIZE)] unsigned char * szCompany,
[out, string, size_is(MAX_STRING_SIZE)] unsigned char * szDepartment,
[out, string, size_is(MAX_STRING_SIZE)] unsigned char * szManagerName,
[out, string, size_is(MAX_ALIAS_SIZE)] unsigned char * szManagerAlias,
[out] unsigned long * pdwManagerID);
long RemoteGetDistListPropsA
([in] unsigned long dwObjID,
[out, string, size_is(MAX_ALIAS_SIZE)] unsigned char * szDLAlias,
[out, string, size_is(MAX_STRING_SIZE)] unsigned char * szDLFullName,
[out] unsigned long * pdwContentCount,
[out, string, size_is(MAX_ALIAS_SIZE)] unsigned char * szOwnerAlias,
[out, string, size_is(MAX_STRING_SIZE)] unsigned char * szOwnerName,
[out, string, size_is(MAX_COMMENT_SIZE)] unsigned char * szComments);
// UNICODE Remote server calls
long RemoteChangePasswordW
([in] wchar_t * szMailbox,
[in, string] wchar_t * szOldPassword,
[in, string] wchar_t * szNewPassword);
long RemoteLogonMailBoxW
([in, string] wchar_t * szMailbox,
[in, string] wchar_t * szPassword,
[out, string, size_is(MAX_STRING_SIZE)] wchar_t * szFullName,
[out] unsigned long * pdwMailboxID);
long RemoteLogonMailBoxAndSetNotifW
([in, string] wchar_t * szMailbox,
[in, string] wchar_t * szPassword,
[out, string, size_is(MAX_STRING_SIZE)] wchar_t * szFullName,
[out] unsigned long * pdwMailboxID,
[in, string] wchar_t * szComputerName,
[in] unsigned long ulNotifMask,
[out] unsigned long * pulConnectionID);
long RemoteTerminateNotifW
([in, string] wchar_t * szComputerName,
[in] unsigned long ulConnectionID);
long RemoteValidateNotifW
([in, string] wchar_t * szComputerName,
[in, string] wchar_t * szMailboxName,
[in] unsigned long ulNotifMask,
[out] unsigned long * pulConnectionID);
long RemoteOpenMsgUploadPipeW
([in, string] wchar_t * szSenderMailbox,
[out] long * pPipeNumber,
[out, string, size_is(MAX_STRING_SIZE)] unsigned char * szCookie);
long RemoteSendMsgToAccountW
([in, string] wchar_t * szRecipAccount,
[in, string] wchar_t * szHeaderInfo,
[in, string] wchar_t * szCookie);
long RemoteOpenMsgDownloadPipeW
([in, string] wchar_t * szMailbox,
[out] unsigned long * pPipeNumber);
long RemoteOpenHeaderDownloadPipeW
([in, string] wchar_t * szMailbox,
[out] long * pPipeNumber);
long RemoteCheckNewMailW
([in, string] wchar_t * szMailbox,
[out] unsigned long * pulPending);
long RemoteOpenOneMsgDownloadPipeW
([in, string] wchar_t * szMailbox,
[out] long * pPipeNumber);
long RemoteGetRecipientPropsW
([in] unsigned long dwObjID,
[out] unsigned long * pdwUserType,
[out, string, size_is(MAX_ALIAS_SIZE)] wchar_t * szMailboxName,
[out, string, size_is(MAX_STRING_SIZE)] wchar_t * szFullName,
[out, string, size_is(MAX_STRING_SIZE)] wchar_t * szJobTitle,
[out, string, size_is(MAX_STRING_SIZE)] wchar_t * szOffice,
[out, string, size_is(MAX_PHONE_SIZE)] wchar_t * szPhone,
[out, string, size_is(MAX_PHONE_SIZE)] wchar_t * szAltPhone,
[out, string, size_is(MAX_PHONE_SIZE)] wchar_t * szFax,
[out, string, size_is(MAX_COMMENT_SIZE)] wchar_t * szComments,
[out, string, size_is(MAX_STRING_SIZE)] wchar_t * szCompany,
[out, string, size_is(MAX_STRING_SIZE)] wchar_t * szDepartment,
[out, string, size_is(MAX_STRING_SIZE)] wchar_t * szManagerName,
[out, string, size_is(MAX_ALIAS_SIZE)] wchar_t * szManagerAlias,
[out] unsigned long * pdwManagerID);
long RemoteGetDistListPropsW
([in] unsigned long dwObjID,
[out, string, size_is(MAX_ALIAS_SIZE)] wchar_t * szDLAlias,
[out, string, size_is(MAX_STRING_SIZE)] wchar_t * szDLFullName,
[out] unsigned long * pdwContentCount,
[out, string, size_is(MAX_ALIAS_SIZE)] wchar_t * szOwnerAlias,
[out, string, size_is(MAX_STRING_SIZE)] wchar_t * szOwnerName,
[out, string, size_is(MAX_COMMENT_SIZE)] wchar_t * szComments);
}