hallo ahk gemeinde,
leider schaffe ich es nicht, die von nnnik vorgeschlagene array änderung umzusetzen. es fehlt mir einfach am grundwissen. ich lese viel im forum und in der hilfe, aber ich kapiere es einfach nicht.
vielleicht kann mir jemand einen etwas festeren anstosser geben
dann habe ich das script compiliert, was jedoch beim aufruf eine fehlermeldung erzeugt.
als ahk läuft es einwandfrei, als exe bekomme ich folgende meldung:
Code: Select all
0x80040211 -
Source: (null)
Description: Die Nachricht konnte nicht an den SMTP-Server gesendet werden. Der Transportfehlercode lautet 0x800ccc6d. Die Serverantwort lautet 552 5.7.0 message content and attachment content guidelines. j3sm1952008wra.19 - gsmtp
HelpFile: (null)
HelpContext: 0
ich habe das script etwas aufgeräumt und mit kommentaren versehen, so ist es hoffentlich für den leser etwas übersichtlicher:
Code: Select all
/* ich weiss nicht ob hiervon etwas in das script rein gehört
#NoEnv
SendMode Input
SetBatchLines, -1
*/
SetWorkingDir %A_ScriptDir%
FormatTime, DateTime, A_NowUTC, dddd d.MMMM.yyyy HH:mm:ss tt ; Samstag 24.März.2018 05:20:37
logfile1 := A_ScriptDir . "\log\SendGmail.log" ; Log Datei
logfile2 := A_ScriptDir . "\log\SendGmail_error.log" ; Error Log Datei
IfNotExist % logfile1
{
FileCreateDir % A_ScriptDir . "\log"
FileAppend % "", % logfile1 ; Leere files erzeugen, sonst kommt beim ersten start eine fehlermeldung
}
IfNotExist % logfile2
{
FileCreateDir % A_ScriptDir . "\log"
FileAppend % "", % logfile2
}
fileread AScriptName , % A_ScriptFullPath
fileread log1, % logfile1
fileread log2, % logfile2
sfrom := """Alert A1"" <[email protected]>" ; Absender Ziel:(pmsg.From := sendfrom)
recv := """Hansi Peter Lustig"" <[email protected]>" ; Empfänger Ziel:(pmsg.To := receiver)
susername := "[email protected]" ; Konto Mail Ziel:(fields.sendusername := sendname)
spassword := "DeinGmailSenderPasswort1234567" ; Konto Passwort Ziel:(fields.sendpassword := sendpass)
subj := A_ScriptName . A_Tab . DateTime ; Betreff
body := AScriptName . "`r`n" . log1 . "`r`n" . log2 ; Mailtext
atch1 := A_ScriptFullPath ; Dateianhang 1
atch2 := logfile1 ; Dateianhang 2
atch3 := logfile2 ; Dateianhang 3
res := SendGmail(subj,body,recv,atch1,atch2,atch3,susername,spassword,sfrom)
ErrorLevel := res
if errorlevel = 0
{
log := DateTime . " - " . recv . " - " . "OK" . "`n"
FileAppend, % log, % logfile1
ToolTip % log
}else{
errorlevel := StrReplace(errorlevel, "`n", "`r`n", All)
msgbox,0,Error,%errorlevel%,1
log := DateTime . " - " . recv . " - " . "Error" . "`n"
ToolTip % log
errorfile := "`r`n###############" . "`r`n" . log . "`r`n" . errorlevel . "`r`n###############`r`n`r`n"
FileAppend, % errorfile, % logfile2
FileAppend, % log, % logfile1
}
sleep, 2000
return
SendGmail(subject,body,receiver,att1,att2,att3,sendname,sendpass,sendfrom){
Try
{
pmsg := ComObjCreate("CDO.Message")
pmsg.From := sendfrom
pmsg.To := receiver
pmsg.Cc := ""
pmsg.Bcc := ""
pmsg.Subject := subject
pmsg.TextBody := body
pmsg.AddAttachment(att1)
pmsg.AddAttachment(att2)
pmsg.AddAttachment(att3)
fields := Object()
fields.smtpserver := "smtp.gmail.com"
fields.smtpserverport := 465
fields.smtpusessl := True
fields.sendusing := 2
fields.smtpauthenticate := 1
fields.sendusername := sendname
fields.sendpassword := sendpass
fields.smtpconnectiontimeout := 60
schema := "http://schemas.microsoft.com/cdo/configuration/"
pfld := pmsg.Configuration.Fields
For field,value in fields
pfld.Item(schema . field) := value
pfld.Update()
pmsg.Send()
Return 0
}
catch e
{
Return % xxx := e.Message
}
}
wenn ich den fileversand auklammere funktioniert die compilierte datei