Huhu zusammen.
Folgende Problematik:
Ich erstelle via
[autoit]ShellExecuteWait("msinfo32", " /report C:\TEMP\TEST.txt", "") ;@SW_HIDE,6)
[/autoit]eine Textdatei mit Systeminformationen.
Diese möchte ich mit
[autoit]$eid = FileRead("C:\TEMP\TEST.txt")
[/autoit]einlesen und als Mailbody versenden...
Lasse ich mir $eid als MsgBox ausgeben, stimmt alles...
Nur der Inhalt der TEST.txt wird nicht in die Mail übernommen
Hier Mal das Skript:
Spoiler anzeigen
#region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=D:\Tools\Iconsammlung\active Ports.ico
#AutoIt3Wrapper_Outfile=SysInfo-Mailer2.exe
#AutoIt3Wrapper_UseX64=n
#AutoIt3Wrapper_Res_Comment=SysInfo-Mailer ist ein Programm zum Senden von Systeminformationen via Mail
#AutoIt3Wrapper_Res_Description=SysInfo-Mailer ist ein Programm zum Senden von Systeminformationen via Mail
#AutoIt3Wrapper_Res_Fileversion=1.0.1.0
#AutoIt3Wrapper_Res_LegalCopyright=2011 - mike280399
#AutoIt3Wrapper_Res_Language=1031
#AutoIt3Wrapper_Run_Tidy=y
#endregion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <INet.au3>
$rueckip = " "
$fehler = ""
ShellExecuteWait("msinfo32", " /report C:\TEMP\TEST.txt", "") ;@SW_HIDE,6)
MsgBox(64, "Einlesevorgang", "Das Einlesen der Daten in die Mail wird nun durchgeführt." & @CRLF & "Dieser Vorgang kann mehrere Minuten in Anspruch nehmen" & @CRLF & "Bitte warten Sie auf die Meldung, ob der Vorgang erfolgreich durchgeführt werden konnte.", 20)
$eid = FileRead("C:\TEMP\TEST.txt")
[/autoit] [autoit][/autoit] [autoit];MsgBox(0, "", $eid)
$iid = Run(@ComSpec & " /k ipconfig /all", "", @SW_HIDE, 6)
While 1
$rueckip &= StdoutRead($iid)
If @error Then ExitLoop
$fehler &= StderrRead($iid)
Sleep(10)
WEnd
;GUICtrlSetData($edit, $Rueckgabe)
Local $Response
; $Response = $rueckgabe
$s_SmtpServer = "smtp.mike280399.de"
$s_FromName = @UserName
$s_FromAddress = "syscheck@mike280399.eu"
$s_ToAddress = "info@mike280399.eu"
$s_Subject = "Systeminformationen von " & @UserName
Dim $as_Body[6]
$as_Body[0] = "Systeminformationen von:"
$as_Body[1] = @UserName
$as_Body[2] = "Workstation:"
$as_Body[3] = @ComputerName
;$as_Body[4] = $rueckgabe
$as_Body[4] = $eid
$as_Body[5] = $rueckip
$Response = _INetSmtpMail($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject, $as_Body, "EHLO " & @ComputerName, -1)
$err = @error
If $Response = 1 Then
MsgBox(0, "Informationen gesendet", "Die E-Mail wurde versandt")
Else
MsgBox(0, "Fehler!", "Das versenden der E-Mail schlug fehl. Bitte kontaktieren Sie Herrn Mountain und nennen Sie den Fehlercode: " & $err)
EndIf
Die Netzwerkeinstellungen die ich via IPCONFIG auslese stehen in der Mail drin. :wacko: