Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Brauche Webseite als .txt per Batch: wget liefert nur Teile, Chrome würde alles speichern

Frage Entwicklung Batch & Shell

Mitglied: LaMancha

LaMancha (Level 1) - Jetzt verbinden

28.09.2013 um 17:06 Uhr, 4002 Aufrufe, 8 Kommentare, 4 Danke

Hallo,

ich brauche den Inhalt einer Webseite als .txt-Datei (genau genommen will ich den Vario-Preis einer ganz bestimmten AIDA-Reise überwachen). Dazu habe ich diese .bat geschrieben:
01.
cd C:\Gm\GmCDsDownloads\wget_1_14 
02.
Rem @echo off 
03.
set webadresse="www.aida.de/kreuzfahrt/angebote-buchen/reisesuche.18736.html?screen=SearchBox&tx_aidadyncatalog_catalog%5BcruiseListPage%5D=0&tx_aidadyncatalog_catalog%5BpaxConfig%5D=0&tx_aidadyncatalog_catalog%5BsearchState%5D=&tx_aidadyncatalog_catalog%5Bregion_or_ship%5D=ship&tx_aidadyncatalog_catalog%5BsearchRegionShipCode%5D=SO&tx_aidadyncatalog_catalog%5Bharbour_or_poc%5D=harbour&tx_aidadyncatalog_catalog%5BsearchPortCode%5D=*0&tx_aidadyncatalog_catalog%5BsearchStartDate%5D=14.12.2013&tx_aidadyncatalog_catalog%5BsearchEndDate%5D=21.12.2013&tx_aidadyncatalog_catalog%5BsearchEarlyBird%5D=*0&tx_aidadyncatalog_catalog%5BsearchPriceCode%5D=*0&tx_aidadyncatalog_catalog%5BsearchDurationCode%5D=*0&tx_aidadyncatalog_catalog%5BsearchSpecials%5D=*0&tx_aidadyncatalog_catalog%5BsearchTransportation%5D=Z&SearchButton=" 
04.
Rem Dateiname + Pfad vordefinieren 
05.
set dateiname=webseite.txt 
06.
set pfad=AIDAvario 
07.
REM ------------------------------------------------------- 
08.
if not exist AIDAvario mkdir AIDAvario 
09.
wget %webadresse% -O %pfad%\%dateiname%  
10.
pause 
11.
start chrome.exe "www.aida.de/kreuzfahrt/angebote-buchen/reisesuche.18736.html?screen=SearchBox&tx_aidadyncatalog_catalog%5BcruiseListPage%5D=0&tx_aidadyncatalog_catalog%5BpaxConfig%5D=0&tx_aidadyncatalog_catalog%5BsearchState%5D=&tx_aidadyncatalog_catalog%5Bregion_or_ship%5D=ship&tx_aidadyncatalog_catalog%5BsearchRegionShipCode%5D=SO&tx_aidadyncatalog_catalog%5Bharbour_or_poc%5D=harbour&tx_aidadyncatalog_catalog%5BsearchPortCode%5D=*0&tx_aidadyncatalog_catalog%5BsearchStartDate%5D=14.12.2013&tx_aidadyncatalog_catalog%5BsearchEndDate%5D=21.12.2013&tx_aidadyncatalog_catalog%5BsearchEarlyBird%5D=*0&tx_aidadyncatalog_catalog%5BsearchPriceCode%5D=*0&tx_aidadyncatalog_catalog%5BsearchDurationCode%5D=*0&tx_aidadyncatalog_catalog%5BsearchSpecials%5D=*0&tx_aidadyncatalog_catalog%5BsearchTransportation%5D=Z&SearchButton="
wget liefert nur 6 KB und nicht die Zeichenfolgen, die ich brauche.

Wenn ich aber chrome.exe ausführe und dann per Hand "Speichern unter ..." mit "Webseite, nur HTML" aufrufe, bekomme ich 116 KB und darin auch das, was ich brauche.

Aber eigentlich soll die vollständige Seite aus dem Skript heraus gespeichert werden. Es wäre schön, hierzu eine Hilfe zu bekommen. Ich bin auch gerne bereit, das Problem anders zu lösen - wenn es denn nur funktionieren würde.

Mitglied: colinardo
28.09.2013, aktualisiert um 19:50 Uhr
Hallo LaMancha,
hierzu kannst du folgendes AutoIt-Script nehmen:
01.
#NoTrayIcon 
02.
#include <ie.au3> 
03.
SplashTextOn("","Frage Preise für Aida-Reise ab...","400","50","-1","-1",35,"","","") 
04.
$objIE = _IECreate("http://www.aida.de/kreuzfahrt/angebote-buchen/reisesuche.18736.html?screen=SearchResult&tx_aidadyncatalog_catalog[cruiseListPage]=0&tx_aidadyncatalog_catalog[paxConfig]=0&tx_aidadyncatalog_catalog[searchState]=&tx_aidadyncatalog_catalog[region_or_ship]=ship&tx_aidadyncatalog_catalog[searchRegionShipCode]=SO&tx_aidadyncatalog_catalog[harbour_or_poc]=harbour&tx_aidadyncatalog_catalog[searchPortCode]=*0&tx_aidadyncatalog_catalog[searchStartDate]=14.12.2013&tx_aidadyncatalog_catalog[searchEndDate]=21.12.2013&tx_aidadyncatalog_catalog[searchEarlyBird]=*0&tx_aidadyncatalog_catalog[searchPriceCode]=*0&tx_aidadyncatalog_catalog[searchDurationCode]=*0&tx_aidadyncatalog_catalog[searchSpecials]=*0&tx_aidadyncatalog_catalog[searchTransportation]=Z&SearchButton=",0,0,1) 
05.
$price_table = _IETableGetCollection($objIE,0) 
06.
$tableText = $price_table.innerText 
07.
_IEQuit($objIE) 
08.
$strVarioPreise = StringRegExp($tableText,'(VARIO Preis[\s\S]*?)PREMIUM Preis \*',3) 
09.
$f = FileOpen(@DesktopDir & "\Preise.txt",2) 
10.
FileWrite($f,$tableText) 
11.
FileClose($f) 
12.
SplashOff() 
13.
msgbox(64,"Vario-Preise der Aida Reise", $strVarioPreise[0])
Es extrahiert die Vario-Preise aus der Tabelle und zeigt sie dir mit einer MessageBox an. Zusätzlich speichert es die ganze Preistabelle in einer Textdatei namens "Preise.txt" auf dem Desktop.
Wenn AutoIt jetzt nicht installieren willst kannst du dir die kompilierte direkt ausführbare Datei hier herunterladen.

Ansonsten kannst du auch folgendes Powershell-Script dafür nehmen:
01.
$objIE = New-Object -ComObject "InternetExplorer.Application" 
02.
echo "Bitte warten..." 
03.
$objIE.Navigate('http://www.aida.de/kreuzfahrt/angebote-buchen/reisesuche.18736.html?screen=SearchResult&tx_aidadyncatalog_catalog[cruiseListPage]=0&tx_aidadyncatalog_catalog[paxConfig]=0&tx_aidadyncatalog_catalog[searchState]=&tx_aidadyncatalog_catalog[region_or_ship]=ship&tx_aidadyncatalog_catalog[searchRegionShipCode]=SO&tx_aidadyncatalog_catalog[harbour_or_poc]=harbour&tx_aidadyncatalog_catalog[searchPortCode]=*0&tx_aidadyncatalog_catalog[searchStartDate]=14.12.2013&tx_aidadyncatalog_catalog[searchEndDate]=21.12.2013&tx_aidadyncatalog_catalog[searchEarlyBird]=*0&tx_aidadyncatalog_catalog[searchPriceCode]=*0&tx_aidadyncatalog_catalog[searchDurationCode]=*0&tx_aidadyncatalog_catalog[searchSpecials]=*0&tx_aidadyncatalog_catalog[searchTransportation]=Z&SearchButton=') 
04.
while($objIE.Busy){ 
05.
    sleep(1) 
06.
07.
$objPriceTable = $objIE.document.getElementsByTagName("table") 
08.
$objPriceTable |select -Index 0 | %{$_.innerText}| Out-File "$((get-item env:UserProfile).Value)\Desktop\Preise.txt" 
09.
echo "Fertig" 
10.
$objIE.Quit()
Falls du Powershell noch nie genutzt hast, musst du einmal in einer Powershell mit Admin-Rechten folgenden Befehl ausführen:
Set-ExecutionPolicy RemoteSigned
Grüße Uwe
Bitte warten ..
Mitglied: Lochkartenstanzer
28.09.2013, aktualisiert um 20:12 Uhr
Moin,

Ganz einfach: Die Seite ist Javascript-verseucht. chrome interpretiert das Javascript und präsentiert Dir das ergebnis beim abspeichern.

wget läßt javascript javascript sein und speichert das ohne es zu interpretieren.

lks
Bitte warten ..
Mitglied: LaMancha
29.09.2013 um 14:34 Uhr
Hallo colinardo,

herzlichen Dank für die Lösungsansätze. Da ich bisher weder mit AutoIt noch mit Powershell zu tun hatte, habe ich erst einmal mit AutoIt angefangen.

Mit der kompilierten exe bekam ich beim ersten Aufruf die Meldung:
AutoIt Error: Line 2603 (File "C:\...\Aida-Preis+abfragen.exe): Error: Variable must be of type "Object".

Dann habe ich AutoIt installiert und das Skript nachgebaut, für meine Umgebung auch etwas erweitert und angepasst. Das sieht jetzt so aus:

01.
#cs ---------------------------------------------------------------------------- 
02.
 
03.
 AutoIt Version: 3.3.8.1 
04.
 Author:         myName 
05.
 
06.
 Script Function: 
07.
	Template AutoIt script. 
08.
 
09.
#ce ---------------------------------------------------------------------------- 
10.
 
11.
; Script Start - Add your code below here 
12.
#NoTrayIcon 
13.
#include <IE.au3> 
14.
;SplashTextOn("","Frage Preise für Aida-Reise ab...","400","50","-1","-1",35,"","","") 
15.
$objIE = _IECreate("http://www.aida.de/kreuzfahrt/angebote-buchen/reisesuche.18736.html?screen=SearchResult&tx_aidadyncatalog_catalog[cruiseListPage]=0&tx_aidadyncatalog_catalog[paxConfig]=0&tx_aidadyncatalog_catalog[searchState]=&tx_aidadyncatalog_catalog[region_or_ship]=ship&tx_aidadyncatalog_catalog[searchRegionShipCode]=SO&tx_aidadyncatalog_catalog[harbour_or_poc]=harbour&tx_aidadyncatalog_catalog[searchPortCode]=*0&tx_aidadyncatalog_catalog[searchStartDate]=14.12.2013&tx_aidadyncatalog_catalog[searchEndDate]=21.12.2013&tx_aidadyncatalog_catalog[searchEarlyBird]=*0&tx_aidadyncatalog_catalog[searchPriceCode]=*0&tx_aidadyncatalog_catalog[searchDurationCode]=*0&tx_aidadyncatalog_catalog[searchSpecials]=*0&tx_aidadyncatalog_catalog[searchTransportation]=Z&SearchButton=",0,0,1) 
16.
17.
$sText = _IEBodyReadHTML($objIE) 
18.
$sPath1 = "C:\Gm\GmOTH\oth_2013_ws\sap1\txt\Z00S00_VARIO1_" & @YEAR & @MON & @MDAY & "_" & @HOUR & @MIN & @SEC 
19.
$f = FileOpen($sPath1,10) 
20.
FileWrite($f,$sText) 
21.
FileClose($f); 
22.
23.
$sText = _IEBodyReadText($objIE) 
24.
$sPath2 = "C:\Gm\GmOTH\oth_2013_ws\sap1\txt\Z00S00_VARIO2_" & @YEAR & @MON & @MDAY & "_" & @HOUR & @MIN & @SEC 
25.
$f = FileOpen($sPath2,10) 
26.
FileWrite($f,$sText) 
27.
FileClose($f); 
28.
29.
$price_table = _IETableGetCollection($objIE,0) 
30.
$tableText = $price_table.innerText 
31.
$sPath3 = "C:\Gm\GmOTH\oth_2013_ws\sap1\txt\Z00S00_VARIO3_" & @YEAR & @MON & @MDAY & "_" & @HOUR & @MIN & @SEC 
32.
$f = FileOpen($sPath3,10) 
33.
FileWrite($f,$tableText) 
34.
FileClose($f) 
35.
36.
$strVarioPreise = StringRegExp($tableText,'(VARIO Preis[\s\S]*?)PREMIUM Preis \*',3) 
37.
$sPath4 = "C:\Gm\GmOTH\oth_2013_ws\sap1\txt\Z00S00_VARIO4_" & @YEAR & @MON & @MDAY & "_" & @HOUR & @MIN & @SEC 
38.
$f = FileOpen($sPath4,10) 
39.
FileWrite($f,$tableText) 
40.
FileClose($f) 
41.
42.
_IEQuit($objIE) 
43.
;SplashOff() 
44.
;msgbox(64,"Vario-Preise der Aida Reise", $strVarioPreise[0])
Damit habe ich jetzt 4 Formate, die ich weiterverarbeiten kann. Vielen Dank!

Und wenn ich noch eine Frage stellen darf: Wäre AutoIt auch geeignet, diese Anforderung zu realisieren?:
Wenn der Vario-Preis für die Innenkabine unter 449 Euro fällt, soll ein Email versendet werden. Das "wie" wäre dann natürlich eine andere Diskussion.

Mit freundlichen Grüßen - LaMancha
Bitte warten ..
Mitglied: LaMancha
29.09.2013 um 14:40 Uhr
Hallo Lochkartenstanzer,

komisch an der Webseite ist, dass sie manchmal auch mit wget ohne Probleme gelesen werden kann. Ich frage mich, ob es bei Typo3 (womit die Seite wohl generiert wird) eine Option gibt, dass mit oder ohne Javascript generiert wird, und ob diese Option von AIDA mal so und mal anders eingestellt wird?
Bitte warten ..
Mitglied: colinardo
29.09.2013, aktualisiert um 15:08 Uhr
Zitat von LaMancha:
Mit der kompilierten exe bekam ich beim ersten Aufruf die Meldung:
AutoIt Error: Line 2603 (File "C:\...\Aida-Preis+abfragen.exe): Error: Variable must be of type "Object".
Könnte sein das ich das Script aus versehen als 64Bit kompiliert habe, kenne jetzt dein BS nicht.
Und wenn ich noch eine Frage stellen darf: Wäre AutoIt auch geeignet, diese Anforderung zu realisieren?:
Wenn der Vario-Preis für die Innenkabine unter 449 Euro fällt, soll ein Email versendet werden.
Sicher das ist kein Problem, könnte ich dir zusammenbauen...

Grüße Uwe
Bitte warten ..
Mitglied: colinardo
29.09.2013, aktualisiert um 16:40 Uhr
So hier das Script mit Mail-Alert wenn der Preis kleiner als 449€ ausfällt.
Die Mailserver-Daten zwischen Zeile 25 und 35 musst du natürlich an deine Gegebenheiten anpassen...
(Das Script ist schon auf stum geschaltet, wenn kein Fehler auftritt, ansonsten kommt eine Fehlermeldung die sich automatisch nach 5 Sekunden schließt [Zur Fehlersuche beim Mailversand mit eingebaut]).
Zum testen der Mailfunktion kannst du ja in Zeile 24 den Preisvergleich von "< 449" auf "= 449" setzen.
Die Mail-Funktion unterstützt Authentifizierung und SSL-Verschlüsselung, was die in AutoIt integrierte Funktion nicht bietet. Weitere Infos zu dem Optionen steht in den Kommentaren zur Funktion.

Viel Spaß...
"Mast und Schotbruch" wenn's denn soweit ist

Grüße Uwe

01.
#NoTrayIcon 
02.
#include <IE.au3> 
03.
#Include <file.au3> 
04.
Global $oMyRet[2] 
05.
Global $oMyError = ObjEvent("AutoIt.Error", "MyComErrFunc") 
06.
Global $preis_vario = "" 
07.
$objIE = _IECreate("http://www.aida.de/kreuzfahrt/angebote-buchen/reisesuche.18736.html?screen=SearchResult&tx_aidadyncatalog_catalog[cruiseListPage]=0&tx_aidadyncatalog_catalog[paxConfig]=0&tx_aidadyncatalog_catalog[searchState]=&tx_aidadyncatalog_catalog[region_or_ship]=ship&tx_aidadyncatalog_catalog[searchRegionShipCode]=SO&tx_aidadyncatalog_catalog[harbour_or_poc]=harbour&tx_aidadyncatalog_catalog[searchPortCode]=*0&tx_aidadyncatalog_catalog[searchStartDate]=14.12.2013&tx_aidadyncatalog_catalog[searchEndDate]=21.12.2013&tx_aidadyncatalog_catalog[searchEarlyBird]=*0&tx_aidadyncatalog_catalog[searchPriceCode]=*0&tx_aidadyncatalog_catalog[searchDurationCode]=*0&tx_aidadyncatalog_catalog[searchSpecials]=*0&tx_aidadyncatalog_catalog[searchTransportation]=Z&SearchButton=",0,0,1) 
08.
if $objIE = 0 and @error <> 0 then ExitError("Internet-Explorer Objekt") 
09.
_IELoadWait($objIE,1000,60000) 
10.
if @error = 6 then ExitError("IE Load Timeout") 
11.
$tags = _IETagNameGetCollection($objIE,"span") 
12.
if @error <> 0 then ExitError("Konnte Tags nicht finden") 
13.
$counter = 1 
14.
for $tag in $tags 
15.
	if String($tag.className) = "amount" then 
16.
		If $counter = 2 then 
17.
			$preis_vario = Number($tag.innerText) 
18.
			ExitLoop 
19.
		Else 
20.
			$counter = $counter + 1 
21.
		Endif 
22.
	Endif 
23.
Next 
24.
if $preis_vario <> "" and $preis_vario < 449 then 
25.
	$strSmtpServer = "[SMTPSERVER]" 
26.
	$strFromName = "[ABSENDERNAME]" 
27.
	$strFromAddress = "[FROM_EMAIL_ADDRESS]" 
28.
	$strTo = "[TO_EMAIL_ADDRESS]" 
29.
	$strSubject = "Preis der Aida Reise hat sich reduziert" 
30.
	$strBody = "Der Preis der Reise hat sich verringert, er beträgt jetzt: <strong>" & $preis_vario & "</strong> Euro" 
31.
	$strImportance = "High" 
32.
	$strUsername = "[SMTP_USERNAME]" 
33.
	$strPassword = "[SMTP_PASSWORD]" 
34.
	$strPort = 25 
35.
	$strUseSSL = False 
36.
	$ret = _SmtpMailAuth($strSmtpServer,$strFromName,$strFromAddress,$strTo,$strSubject,$strBody,"","","",$strImportance,$strUsername,$strPassword,$strPort,$strUseSSL) 
37.
	If @error Then 
38.
		MsgBox(48, "Fehler beim senden der Nachricht", "Fehlercode:" & @error & "  Beschreibung:" & $ret,5) 
39.
	EndIf 
40.
Endif 
41.
_IEQuit($objIE) 
42.
exit 
43.
 
44.
; ------------------Helper Functions --------------------------------- 
45.
 
46.
func ExitError($strError) 
47.
	msgbox(48,"Error", "Es ist ein Fehler aufgetreten: " & $strError,5) 
48.
	exit 1 
49.
EndFunc 
50.
 
51.
; Parameters for Function _SmtpMailAuth 
52.
;################################## 
53.
;~ $s_SmtpServer = ""                            ; address for the smtp-server to use - REQUIRED 
54.
;~ $s_FromName = "User"                          ; name from who the email was sent 
55.
;~ $s_FromAddress = ""                           ; address from where the mail should come 
56.
;~ $s_ToAddress = ""                             ; destination address of the email - REQUIRED 
57.
;~ $as_Subject = "testsubject"                       ; subject from the email - can be anything you want it to be 
58.
;~ $as_Body = "This Is The Body"                  ; the messagebody from the mail - can be left blank but then you get a blank mail 
59.
;~ $s_AttachFiles = ""                           ; the file you want to attach- leave blank if not needed 
60.
;~ $s_CcAddress = ""                             ; address for cc - leave blank if not needed 
61.
;~ $s_BccAddress = ""                            ; address for bcc - leave blank if not needed 
62.
;~ $_sImportance = "Normal"                      ; Send message priority: "High", "Normal", "Low" 
63.
;~ $s_Username = ""                              ; username for the account used from where the mail gets sent - REQUIRED 
64.
;~ $s_Password = ""                              ; password for the account used from where the mail gets sent - REQUIRED 
65.
;~ $IPPort = 25                               ; port used for sending the mail 
66.
;~ $ssl = 0                                    ; enables/disables secure socket layer sending - put to 1 if using httpS 
67.
 
68.
 
69.
Func _SmtpMailAuth($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject = "", $as_Body = "", $s_AttachFiles = "", $s_CcAddress = "", $s_BccAddress = "", $s_Importance="Normal", $s_Username = "", $s_Password = "", $IPPort = 25, $ssl = 0) 
70.
    Local $objEmail = ObjCreate("CDO.Message") 
71.
    $objEmail.From = '"' & $s_FromName & '" <' & $s_FromAddress & '>' 
72.
    $objEmail.To = $s_ToAddress 
73.
    Local $i_Error = 0 
74.
    Local $i_Error_desciption = "" 
75.
    If $s_CcAddress <> "" Then $objEmail.Cc = $s_CcAddress 
76.
    If $s_BccAddress <> "" Then $objEmail.Bcc = $s_BccAddress 
77.
    $objEmail.Subject = $s_Subject 
78.
    If StringInStr($as_Body, "<") And StringInStr($as_Body, ">") Then 
79.
        $objEmail.HTMLBody = $as_Body 
80.
    Else 
81.
        $objEmail.Textbody = $as_Body & @CRLF 
82.
    EndIf 
83.
    If $s_AttachFiles <> "" Then 
84.
        Local $S_Files2Attach = StringSplit($s_AttachFiles, ";") 
85.
        For $x = 1 To $S_Files2Attach[0] 
86.
            $S_Files2Attach[$x] = _PathFull($S_Files2Attach[$x]) 
87.
            ConsoleWrite('@@ Debug(62) : $S_Files2Attach = ' & $S_Files2Attach & @LF & '>Error code: ' & @error & @LF) ;### Debug Console 
88.
            If FileExists($S_Files2Attach[$x]) Then 
89.
                $objEmail.AddAttachment ($S_Files2Attach[$x]) 
90.
            Else 
91.
                ConsoleWrite('!> File not found to attach: ' & $S_Files2Attach[$x] & @LF) 
92.
                SetError(1) 
93.
                Return 0 
94.
            EndIf 
95.
        Next 
96.
    EndIf 
97.
    $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 
98.
    $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = $s_SmtpServer 
99.
    If Number($IPPort) = 0 then $IPPort = 25 
100.
    $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = $IPPort 
101.
    ;Authenticated SMTP 
102.
    If $s_Username <> "" Then 
103.
        $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 
104.
        $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = $s_Username 
105.
        $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = $s_Password 
106.
    EndIf 
107.
    If $ssl Then 
108.
        $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True 
109.
    EndIf 
110.
    ;Update settings 
111.
    $objEmail.Configuration.Fields.Update 
112.
    ; Set Email Importance 
113.
    Switch $s_Importance 
114.
        Case "High" 
115.
            $objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "High" 
116.
        Case "Normal" 
117.
            $objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "Normal" 
118.
        Case "Low" 
119.
            $objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "Low" 
120.
    EndSwitch 
121.
    $objEmail.Fields.Update 
122.
    ; Sent the Message 
123.
    $objEmail.Send() 
124.
    If @error Then 
125.
        SetError(2) 
126.
		Return $oMyRet[1] 
127.
    EndIf 
128.
    $objEmail="" 
129.
EndFunc 
130.
 
131.
; Com Error Handler 
132.
Func MyComErrFunc() 
133.
    $HexNumber = Hex($oMyError.number, 8) 
134.
    $oMyRet[0] = $HexNumber 
135.
    $oMyRet[1] = StringStripWS($oMyError.description, 3) 
136.
    ConsoleWrite("### COM Error !  Number: " & $HexNumber & "   ScriptLine: " & $oMyError.scriptline & "   Description:" & $oMyRet[1] & @LF) 
137.
    SetError(1); something to check for when this function returns 
138.
    Return 
139.
EndFunc
Bitte warten ..
Mitglied: LaMancha
29.09.2013 um 17:49 Uhr
Hallo colinardo,

das Skript war ja eine Super-Überraschung! Habe es mal angepasst - und es läuft wie eine 1. Bleibt mir erstmal ein herzliches Dankeschön zu sagen. Und dann werde ich mich mal daran geben, zu verstehen, was da so passiert (vielleicht wird AutoIt ja mal ein Hobby von mir).

Viele Grüße - LaMancha
Bitte warten ..
Mitglied: colinardo
29.09.2013 um 23:41 Uhr
Achtung !! AutoIT kann süchtig machen Für Anfänger und Fortgeschrittene ist es beidermaßen gut geeignet.
AutoIT ist ein echtes Universalgenie, der große Vorteil liegt in der universellen Verwendung der kompilierten Dateien auf allen Windows-Betriebsystemen ohne irgendein Framework installieren zu müssen. Für Automatisierungsaufgaben perfekt geeignet und ein riesen Angebot an Funktionen jeglicher Art, selbst Benutzeroberflächen lassen sich damit problemlos realisieren.... Es gibt fast nichts was sich damit nicht realisieren ließe. Für das programmieren damit empfehle ich dir den Editor Scite.

Weiterhin viel Erfolg !

p.s. Bitte den Beitrag noch als gelöst markieren. Danke.

Grüße Uwe
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...