Toon posts:

[vbs] bestanden zoeken en dan mailen

Pagina: 1
Acties:
  • 46 views sinds 30-01-2008

Verwijderd

Topicstarter
ik ben dus bezig met een scriptje om bestanden te mailen.

het script zoekt bestanden met een bepaalde extensie en mailt ze dan . het probleem is alleen dat hij met een loopje werkt en als ik 3 bestanden heb dan mailt hij eerst alleen het 1ste bestand. de mail daarna mailt hij de 1ste en de 2de en daarna de 1ste,2de en 3de.

het is dus de bedoeling dat hij eerst alleen de 1ste mailt , dan alleen de 2de en dan alleen de 3de.

hieronder de code
----------------------------------------------------------------------
Const FILE_EXTENSION = ".TXT"

'// Set the visual basic constants as they do not exist within VBScript.
' Do not set your smtp server information here.
Const cdoSendUsingMethod = "http://schemas.microsoft.com/cdo/configuration/sendusing", _
cdoSendUsingPort = 2, _
cdoSMTPServer = "http://schemas.microsoft.com/cdo/configuration/smtpserver"

'// Create the CDO connections.
Dim iMsg, iConf, Flds
Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")
Set Flds = iConf.Fields

'// SMTP server configuration.
With Flds
.Item(cdoSendUsingMethod) = cdoSendUsingPort
'// Set the SMTP server address here.
.Item(cdoSMTPServer) = "smtp.server.com"
.Update
End With

Dim startFolder
Dim fso
Dim rootFolder

startFolder = "C:\Documents and Settings\Administrator\My Documents\My Pictures"

Set fso = CreateObject("Scripting.FileSystemObject")
Set rootFolder = fso.GetFolder(startFolder)

RecurseFolders(rootFolder)

Sub RecurseFolders(rootFolder)
Dim file
Dim folder

For Each file In rootFolder.Files

If UCase(Right(file.Name, 4)) = FILE_EXTENSION Then

meuk = (rootFolder & "\" & file.Name)


'// Set the message properties.
With iMsg
Set .Configuration = iConf
.To = "email@email.com"
.From = "email@email.com"
.Subject = "test
.TextBody = "test2"
End With

'// An attachment can be included.
iMsg.AddAttachment (meuk)


'// Send the message.
iMsg.Send ' send the message.


End If
Next
For Each folder in rootFolder.SubFolders
RecurseFolders(folder)
Next
End Sub

  • Skinny
  • Registratie: Januari 2000
  • Laatst online: 22-03 20:57

Skinny

DIRECT!

Haal de
code:
1
iMsg.Send
eens buiten je loops.. dat zal een hoop schelen

SIZE does matter.
"You're go at throttle up!"


  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Skinny schreef op 09 mei 2004 @ 15:17:
Haal de
code:
1
iMsg.Send
eens buiten je loops.. dat zal een hoop schelen
Nee het probleem zit hem erin dat je het mailobject hergebruikt. En alleen bij een recursie zal er weer een nieuw object worden aangemaakt. Je zult dus of je attachments weer van je mailtje af moeten halen (ik ken het mailobject niet, maar ik ga ervan uit dat dat wel kan), of je moet een nieuw mailobject aanmaken binnen je For Each...Next loop.

  • Skinny
  • Registratie: Januari 2000
  • Laatst online: 22-03 20:57

Skinny

DIRECT!

Sorry, niet goed gelezen.. ik dacht dat je 1 mail met alle attachments wilde. Inderdaad moet je in dit geval dus je mailobject gewoon opnieuw aanmaken of de attachments er eerst weer af halen

SIZE does matter.
"You're go at throttle up!"


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 17:50

gorgi_19

Kruimeltjes zijn weer op :9

Zie
P&W FAQ - De "quickstart"
P&W FAQ - Leer **** debuggen!!

Zie vooral het gedeelte over de code-tags. Verder is debuggen iets dat je zelf mag doen. Je 'dumpt' nu je code met de opmerking 'het werkt niet' en wij mogen het oplossen. Debuggen is iets wat je zelf mag doen.

Deze gaat dicht. Als je een concreet probleem hebt met relevante informatie en code, dan kan je een nieuw topic openen volgens de Quickstart.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Dit topic is gesloten.