Ok batalule, kao sto vidis nov sam ovde tako da se nisam snasao odmah sa tvojim predlozima. Nadam se da to nije problem. Evo uspeo sam da od tvog prvog i ovog drugog predloga napravim neki kod koji okida event _ItemSend, ali i dalje imam problem. Naime, kada unutar te metode pokusam da ispitam (sa property-jem Sent) da li je mail poslat, on sve vreme pokazuje da je False. Evo koda koji se poziva (sada sam sve premestio u klasu):
Code:
Public WithEvents objOutlook As Outlook.Application
Private Sub Class_Initialize()
Set objOutlook = New Outlook.Application
End Sub
Public Function SMail(ByVal strFile As String, _
strStatus As String, _
Optional ByVal strComputerName As String, _
Optional ByVal strOpId As String, _
Optional strAddress As String = "
[email protected]") As Boolean
On Error GoTo MsgError
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Dim objMail As Outlook.MailItem
Dim objRecipient As Outlook.Recipient
Set objMail = objOutlook.CreateItem(olMailItem)
Set objRecipient = objMail.Recipients.Add(strAddress)
objRecipient.Type = olTo
objMail.Subject = "Proba"
objMail.Attachments.Add (App.Path & "\doc\" & strFile)
objMail.Send
fso.DeleteFile App.Path & "\doc\" & strFile
SMail = True
Clear:
Set fso = Nothing
Set objRecipient = Nothing
Set objMail = Nothing
Exit Function
MsgError:
MsgBox Err.Description
SMail = False
GoTo Clear
End Function
Private Sub objOutlook_ItemSend(ByVal objMail As Object, Cancel As Boolean)
While Not objMail.Sent
Wend
Set objMail = Nothing
Set objRecipient = Nothing
End Sub
Private Sub Class_Terminate()
Set objOutlook = Nothing
End Sub
Gde gresim? Meni se cini da je problem i u nekom podesavanju Outlook-a. Meni stoji oznacena opcija 'Send messages immediatly when connected' u Outlook-u. Kada to ne stoji oznaceno, program radi ok, a pisma ostanu u Outbox-u.