home *** CD-ROM | disk | FTP | other *** search
/ Freelog 19 / Freelog019.iso / Prog / Internet / source.txt
Text File  |  2001-01-05  |  5KB  |  226 lines

  1. Private Sub Form_Load()
  2.  
  3.     On Error GoTo ErrHandler
  4.  
  5.     ' Affiche la feuille pour activer la boεte de dialogue de connexion.
  6.     Me.Show
  7.  
  8.     ' DΘmarre une session MAPI.
  9.     mpsSession.DownLoadMail = True
  10.     mpsSession.LogonUI = True
  11.     mpsSession.SignOn
  12.     mpmMessages.SessionID = mpsSession.SessionID
  13.  
  14.     ' Lecture des messages α partir du serveur.
  15.     FetchMessages
  16.  
  17.     ' S'il y a des messages, affichage du premier. 
  18.     If listMessages.ListCount > 0 Then
  19.         listMessages.ListIndex = 0
  20.         listMessages_Click
  21.     End If
  22.     Exit Sub
  23.  
  24.   ErrHandler :
  25.   CriticalError
  26. End Sub
  27.  
  28. Public Sub CriticalError()
  29.  
  30.     ' Erreur !
  31.     ' Message d'information et fin du programme.
  32. MsgBox Error$, vbCritical, "Erreur critique : " & Str(Err)
  33.     If mpsSession.SessionID Then
  34.         mpsSession.SignOff
  35.     End If
  36.     End
  37. End Sub
  38.  
  39. Public Sub FetchMessages()
  40.  
  41.     Dim intMsgIndex As Integer
  42.  
  43.     On Error GoTo ErrHandler
  44.  
  45.     ' Lecture des messages sur le serveur
  46.     ' et les trie .
  47.     mpmMessages.FetchSorted = True
  48.     mpmMessages.FetchUnreadOnly = False
  49.     mpmMessages.Fetch
  50.  
  51.     ' Mise α jour de la liste dΘroulante.
  52.     listMessages.Clear
  53.     intMsgIndex = 0
  54.     If mpmMessages.MsgCount > 0 Then
  55.         Do
  56.             mpmMessages.MsgIndex = intMsgIndex
  57.             listMessages.AddItem mpmMessages.MsgSubject
  58.             intMsgIndex = intMsgIndex + 1
  59.         Loop Until (intMsgIndex = mpmMessages.MsgCount)
  60.     End If
  61.  
  62.   ErrHandler :
  63.   CriticalError
  64. End Sub
  65.  
  66.  
  67. Private Sub cmdMsgNew_Click()
  68.  
  69.     On Error GoTo ErrHandler
  70.  
  71.     ' CrΘation nouveau message.
  72.     mpmMessages.Compose
  73.     mpmMessages.Send True
  74.  
  75.     listMessages.SetFocus
  76.     Exit Sub
  77.  
  78.     ErrHandler:
  79.     CriticalError
  80. End Sub
  81.  
  82. Private Sub cmdMsgReply_Click()
  83.  
  84.     On Error GoTo ErrHandler
  85.  
  86.     ' RΘponse au message .
  87.     mpmMessages.MsgIndex = listMessages.ListIndex
  88.     mpmMessages.Reply
  89.     mpmMessages.Send True
  90.  
  91.     listMessages.SetFocus
  92.     Exit Sub
  93.  
  94.     ErrHandler:
  95.     CriticalError
  96. End Sub
  97.  
  98. Private Sub cmdMsgReplyAll_Click()
  99.  
  100.     On Error GoTo ErrHandler
  101.  
  102.     ' RΘponse α tous les destinataires du message.
  103.     mpmMessages.MsgIndex = listMessages.ListIndex
  104.     mpmMessages.ReplyAll
  105.     mpmMessages.Send True
  106.  
  107.     listMessages.SetFocus
  108.     Exit Sub
  109.  
  110.     ErrHandler:
  111.     CriticalError
  112. End Sub
  113.  
  114. Private Sub cmdMsgForward_Click()
  115.  
  116.     On Error GoTo ErrHandler
  117.  
  118.     ' TransfΦre le message α un autre destinataire.
  119.     mpmMessages.MsgIndex = listMessages.ListIndex
  120.     mpmMessages.Forward
  121.     mpmMessages.Send True
  122.  
  123.     listMessages.SetFocus
  124.     Exit Sub
  125.  
  126.     ErrHandler:
  127.     CriticalError
  128. End Sub
  129.  
  130. Private Sub cmdMsgCopy_Click()
  131.  
  132.     On Error GoTo ErrHandler
  133.  
  134.     ' Copie du message.
  135.     mpmMessages.MsgIndex = listMessages.ListIndex
  136.     mpmMessages.Copy
  137.     mpmMessages.Send True
  138.  
  139.     listMessages.SetFocus
  140.     Exit Sub
  141.  
  142.    ErrHandler:
  143.     CriticalError
  144. End Sub
  145.  
  146. Private Sub cmdMsgDelete_Click()
  147.  
  148.     On Error GoTo ErrHandler
  149.  
  150.     ' DΘtruit le message Mise α jour de la liste dΘroulante.
  151.     mpmMessages.MsgIndex = listMessages.ListIndex
  152.     mpmMessages.Delete
  153.     listMessages.RemoveItem listMessages.ListIndex
  154.  
  155.     If listMessages.ListCount > 0 Then
  156.         listMessages.ListIndex = 0
  157.     Else
  158.         lblMsgInfo = ""
  159.         txtMsgBody = ""
  160.     End If
  161.  
  162.     listMessages.SetFocus
  163.     Exit Sub
  164.  
  165.     ErrHandler:
  166.     CriticalError
  167. End Sub
  168.  
  169. Private Sub listMessages_Click()
  170.  
  171.     ' Lorsque l'utilisateur clique sur un message,
  172.     ' affichage des informations (expΘditeur, sujet et date)
  173.     ' dans un label et du texte du message dans la zone textMsgBody.
  174.  
  175.     mpmMessages.MsgIndex = listMessages.ListIndex
  176.     lblMsgInfo = "De: " + mpmMessages.MsgOrigDisplayName + Chr$(13) _
  177.         + "Sujet: " + mpmMessages.MsgSubject + Chr$(13) _
  178.         + "Date: " + mpmMessages.MsgDateReceived
  179.     txtMsgBody = mpmMessages.MsgNoteText
  180.  
  181. End Sub
  182.  
  183. Private Sub cmdAddrBook_Click()
  184.  
  185.     On Error GoTo ErrHandler
  186.  
  187.     ' Affichage du Carnet d'adresses.
  188.     mpmMessages.Show
  189.  
  190.     listMessages.SetFocus
  191.     Exit Sub
  192.  
  193.     ErrHandler:
  194.     CriticalError
  195. End Sub
  196.  
  197. Private Sub cmdExit_Click()
  198.  
  199.     Dim intExit As Integer
  200.  
  201.     ' Demande de confirmation.
  202. intExit = MsgBox("Quitter le programme ?", vbYesNo, _
  203.         "Fin du programme")
  204.     If intExit = vbYes Then
  205.         mpsSession.SignOff
  206.         End
  207.     End If
  208.  
  209.     listMessages.SetFocus
  210.  
  211. End Sub
  212.  
  213. Private Sub txtMsgBody_KeyPress(KeyAscii As Integer)
  214.  
  215.     'Protection de la zone texte du message.
  216. KeyAscii = 0
  217.  
  218. End Sub
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.