G
Guest
Нужно для входящей почты написать агента, который бы сохранял где-нить на диске вложение и разархивировал его.
Впринципе с первой частью справляется такой код:
Теперь осталось разорхивировать.
Пыталась сделать что-то типа такого:
или вот так:
но что-то не идет... явно где-то глюк. 8(
я еще с dll в Лотусе не работала. Может че не так пишу...
и с командной строкой явно какой-то глюк в конструкции
Лотус 6.0.3.
Впринципе с первой частью справляется такой код:
Код:
Sub Initialize
Dim s As NotesSession
Dim db As NotesDataBAse
Dim coll As NotesDocumentCollection
Dim doc As NOtesDocument
Dim rtitem As Variant
Dim result As Integer
Set s=New NotesSession
If Not s Is Nothing Then
Set db=s.CurrentDataBAse
If Not db Is Nothing Then
Set coll=db.UnprocessedDocuments
If Not coll Is Nothing Then
For i=1 To coll.Count
Set doc=coll.GetNthDocument(i)
Set rtitem = doc.GetFirstItem( "Body" )
If ( rtitem.Type = 1 ) Then
If doc.HasEmbedded Then
Forall o In rtitem.EmbeddedObjects
If (o.Type = EMBED_ATTACHMENT) Then
Call o.ExtractFile( "c:\111\" & o.Source )
End If
End Forall
End If
End If
Call s.UpdateProcessedDoc(doc)
Next
End If
End If
End If
End Sub
Теперь осталось разорхивировать.
Пыталась сделать что-то типа такого:
Код:
Declare Function ExtractArchive Lib "unrar" Alias "ExtractArchive" (sArchive As String, Byval sDestPath As String, Byval sPassword As String) As Boolean
....
Call ExtractArchive("image.rar", "c:\\111\\", "")
или вот так:
Код:
stringShell$ = "rar.exe e " & "c:\\111\\" & o.Source
Msgbox stringShell$
result = Shell(stringShell$, 1)
но что-то не идет... явно где-то глюк. 8(
я еще с dll в Лотусе не работала. Может че не так пишу...
и с командной строкой явно какой-то глюк в конструкции
Лотус 6.0.3.