WINDS.IDL
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:12k
源码类别:

Windows编程

开发平台:

Visual C++

  1. [
  2.     uuid(DDFFFE60-36D0-11CE-9F2D-00AA00510E3B),
  3.     version(1.6),
  4.     pointer_default(unique)
  5. ]
  6. #define MAX_ALIAS_SIZE      16+1
  7. #define MAX_STRING_SIZE     32+1
  8. #define MAX_PHONE_SIZE      12+1
  9. #define MAX_COMMENT_SIZE    79+1
  10. #define MAX_PASSWORD_SIZE   MAX_ALIAS_SIZE
  11. interface WINDSREM
  12. {
  13.     long RemoteIsServerRunning
  14.             ();
  15.     long RemoteGetAllAccounts
  16.             ([out] long *                                               pPipeNumber);
  17.     long RemoteFinishUpload                                             
  18.             ([in, string] unsigned char *                               szCookie);
  19.     long RemoteGetContainerProps                                        
  20.             ([in] unsigned long                                         dwContainerID,
  21.              [out] unsigned long *                                      pdwContentCount);
  22.     long RemoteGetContainerRecipients                                   
  23.             ([in] unsigned long                                         dwFlags,
  24.              [in] unsigned long                                         dwContainerID, 
  25.              [out] long *                                               pPipeNumber);
  26.     long RemoteGetPublicFoldersList                                     
  27.             ([in] short                                                 nFlags,
  28.              [out] long *                                               pPipeNumber);
  29.     long RemoteGetPublicFolderMessages                                  
  30.             ([in] short                                                 nFlags,
  31.              [in] unsigned long                                         dwFolderID,
  32.              [out] long *                                               pPipeNumber);
  33.                                                                         
  34.     // ANSI Remote server calls
  35.     long RemoteChangePasswordA                                          
  36.             ([in] unsigned char *                                       szMailbox,
  37.              [in, string] unsigned char *                               szOldPassword,
  38.              [in, string] unsigned char *                               szNewPassword);
  39.     long RemoteLogonMailBoxA                                            
  40.             ([in, string] unsigned char *                               szMailbox,
  41.              [in, string] unsigned char *                               szPassword,
  42.              [out, string, size_is(MAX_STRING_SIZE)] unsigned char *    szFullName,
  43.              [out] unsigned long *                                      pdwMailboxID);
  44.     long RemoteLogonMailBoxAndSetNotifA
  45.             ([in, string] unsigned char *                               szMailbox,
  46.              [in, string] unsigned char *                               szPassword,
  47.              [out, string, size_is(MAX_STRING_SIZE)] unsigned char *    szFullName,
  48.              [out] unsigned long *                                      pdwMailboxID,
  49.              [in, string] unsigned char *                               szComputerName,
  50.              [in] unsigned long                                         ulNotifMask,
  51.              [out] unsigned long *                                      pulConnectionID);
  52.     long RemoteTerminateNotifA
  53.             ([in, string] unsigned char *                               szComputerName,
  54.              [in] unsigned long                                         ulConnectionID);
  55.     long RemoteValidateNotifA
  56.             ([in, string] unsigned char *                               szComputerName,
  57.              [in, string] unsigned char *                               szMailboxName,
  58.              [in] unsigned long                                         ulNotifMask,
  59.              [out] unsigned long *                                      pulConnectionID);
  60.     long RemoteOpenMsgUploadPipeA
  61.             ([in, string] unsigned char *                               szSenderMailbox,
  62.              [out] long *                                               pPipeNumber,
  63.              [out, string, size_is(MAX_STRING_SIZE)] unsigned char *    szCookie);
  64.     long RemoteSendMsgToAccountA
  65.             ([in, string] unsigned char *                               szRecipAccount,
  66.              [in, string] unsigned char *                               szHeaderInfo,
  67.              [in, string] unsigned char *                               szCookie);
  68.     long RemoteOpenMsgDownloadPipeA                                     
  69.             ([in, string] unsigned char *                               szMailbox,
  70.              [out] unsigned long *                                      pPipeNumber);
  71.     long RemoteOpenHeaderDownloadPipeA                                  
  72.             ([in, string] unsigned char *                               szMailbox,
  73.              [out] long *                                               pPipeNumber);
  74.     long RemoteCheckNewMailA                                            
  75.             ([in, string] unsigned char *                               szMailbox,
  76.              [out] unsigned long *                                      pulPending);
  77.     long RemoteOpenOneMsgDownloadPipeA                                  
  78.             ([in, string] unsigned char *                               szMailbox,
  79.              [out] long *                                               pPipeNumber);
  80.     long RemoteGetRecipientPropsA 
  81.             ([in] unsigned long                                         dwObjID,
  82.              [out] unsigned long *                                      pdwUserType,
  83.              [out, string, size_is(MAX_ALIAS_SIZE)] unsigned char *     szMailboxName,
  84.              [out, string, size_is(MAX_STRING_SIZE)] unsigned char *    szFullName,
  85.              [out, string, size_is(MAX_STRING_SIZE)] unsigned char *    szJobTitle,
  86.              [out, string, size_is(MAX_STRING_SIZE)] unsigned char *    szOffice,
  87.              [out, string, size_is(MAX_PHONE_SIZE)] unsigned char *     szPhone,
  88.              [out, string, size_is(MAX_PHONE_SIZE)] unsigned char *     szAltPhone,
  89.              [out, string, size_is(MAX_PHONE_SIZE)] unsigned char *     szFax,
  90.              [out, string, size_is(MAX_COMMENT_SIZE)] unsigned char *   szComments,
  91.              [out, string, size_is(MAX_STRING_SIZE)] unsigned char *    szCompany,
  92.              [out, string, size_is(MAX_STRING_SIZE)] unsigned char *    szDepartment,
  93.              [out, string, size_is(MAX_STRING_SIZE)] unsigned char *    szManagerName,
  94.              [out, string, size_is(MAX_ALIAS_SIZE)] unsigned char *     szManagerAlias,
  95.              [out] unsigned long *                                      pdwManagerID);
  96.     long RemoteGetDistListPropsA
  97.             ([in] unsigned long                                         dwObjID,
  98.              [out, string, size_is(MAX_ALIAS_SIZE)] unsigned char *     szDLAlias,
  99.              [out, string, size_is(MAX_STRING_SIZE)] unsigned char *    szDLFullName,
  100.              [out] unsigned long *                                      pdwContentCount,
  101.              [out, string, size_is(MAX_ALIAS_SIZE)] unsigned char *     szOwnerAlias,
  102.              [out, string, size_is(MAX_STRING_SIZE)] unsigned char *    szOwnerName,
  103.              [out, string, size_is(MAX_COMMENT_SIZE)] unsigned char *   szComments);
  104.     // UNICODE Remote server calls
  105.     long RemoteChangePasswordW
  106.             ([in] wchar_t *                                             szMailbox,
  107.              [in, string] wchar_t *                                     szOldPassword,
  108.              [in, string] wchar_t *                                     szNewPassword);
  109.     long RemoteLogonMailBoxW
  110.             ([in, string] wchar_t *                                     szMailbox,
  111.              [in, string] wchar_t *                                     szPassword,
  112.              [out, string, size_is(MAX_STRING_SIZE)] wchar_t *          szFullName,
  113.              [out] unsigned long *                                      pdwMailboxID);
  114.     long RemoteLogonMailBoxAndSetNotifW
  115.             ([in, string] wchar_t *                                     szMailbox,
  116.              [in, string] wchar_t *                                     szPassword,
  117.              [out, string, size_is(MAX_STRING_SIZE)] wchar_t *          szFullName,
  118.              [out] unsigned long *                                      pdwMailboxID,
  119.              [in, string] wchar_t *                                     szComputerName,
  120.              [in] unsigned long                                         ulNotifMask,
  121.              [out] unsigned long *                                      pulConnectionID);
  122.     long RemoteTerminateNotifW
  123.             ([in, string] wchar_t *                                     szComputerName,
  124.              [in] unsigned long                                         ulConnectionID);
  125.     long RemoteValidateNotifW
  126.             ([in, string] wchar_t *                                     szComputerName,
  127.              [in, string] wchar_t *                                     szMailboxName,
  128.              [in] unsigned long                                         ulNotifMask,
  129.              [out] unsigned long *                                      pulConnectionID);
  130.     long RemoteOpenMsgUploadPipeW
  131.             ([in, string] wchar_t *                                     szSenderMailbox,
  132.              [out] long *                                               pPipeNumber,
  133.              [out, string, size_is(MAX_STRING_SIZE)] unsigned char *    szCookie);
  134.     long RemoteSendMsgToAccountW
  135.             ([in, string] wchar_t *                                     szRecipAccount,
  136.              [in, string] wchar_t *                                     szHeaderInfo,
  137.              [in, string] wchar_t *                                     szCookie);
  138.     long RemoteOpenMsgDownloadPipeW
  139.             ([in, string] wchar_t *                                     szMailbox,
  140.              [out] unsigned long *                                      pPipeNumber);
  141.     long RemoteOpenHeaderDownloadPipeW
  142.             ([in, string] wchar_t *                                     szMailbox,
  143.              [out] long *                                               pPipeNumber);
  144.     long RemoteCheckNewMailW
  145.             ([in, string] wchar_t *                                     szMailbox,
  146.              [out] unsigned long *                                      pulPending);
  147.     long RemoteOpenOneMsgDownloadPipeW
  148.             ([in, string] wchar_t *                                     szMailbox,
  149.              [out] long *                                               pPipeNumber);
  150.     long RemoteGetRecipientPropsW
  151.             ([in] unsigned long                                         dwObjID,
  152.              [out] unsigned long *                                      pdwUserType,
  153.              [out, string, size_is(MAX_ALIAS_SIZE)] wchar_t *           szMailboxName,
  154.              [out, string, size_is(MAX_STRING_SIZE)] wchar_t *          szFullName,
  155.              [out, string, size_is(MAX_STRING_SIZE)] wchar_t *          szJobTitle,
  156.              [out, string, size_is(MAX_STRING_SIZE)] wchar_t *          szOffice,
  157.              [out, string, size_is(MAX_PHONE_SIZE)] wchar_t *           szPhone,
  158.              [out, string, size_is(MAX_PHONE_SIZE)] wchar_t *           szAltPhone,
  159.              [out, string, size_is(MAX_PHONE_SIZE)] wchar_t *           szFax,
  160.              [out, string, size_is(MAX_COMMENT_SIZE)] wchar_t *         szComments,
  161.              [out, string, size_is(MAX_STRING_SIZE)] wchar_t *          szCompany,
  162.              [out, string, size_is(MAX_STRING_SIZE)] wchar_t *          szDepartment,
  163.              [out, string, size_is(MAX_STRING_SIZE)] wchar_t *          szManagerName,
  164.              [out, string, size_is(MAX_ALIAS_SIZE)] wchar_t *           szManagerAlias,
  165.              [out] unsigned long *                                      pdwManagerID);
  166.     long RemoteGetDistListPropsW
  167.             ([in] unsigned long                                         dwObjID,
  168.              [out, string, size_is(MAX_ALIAS_SIZE)] wchar_t *           szDLAlias,
  169.              [out, string, size_is(MAX_STRING_SIZE)] wchar_t *          szDLFullName,
  170.              [out] unsigned long *                                      pdwContentCount,
  171.              [out, string, size_is(MAX_ALIAS_SIZE)] wchar_t *           szOwnerAlias,
  172.              [out, string, size_is(MAX_STRING_SIZE)] wchar_t *          szOwnerName,
  173.              [out, string, size_is(MAX_COMMENT_SIZE)] wchar_t *         szComments);
  174. }