@Kanashius
Wie macht man das mit:
$TimeDay = GUICtrlCreateDate("", 205, 75, 200, 20)
[/autoit]?
@BugFix
Ich nutze das Longformat und möchte diesen auch so beibehalten, zusätzlich noch als ENG (für alle Nicht-Deutschsprechenden).
@Kanashius
Wie macht man das mit:
$TimeDay = GUICtrlCreateDate("", 205, 75, 200, 20)
[/autoit]?
@BugFix
Ich nutze das Longformat und möchte diesen auch so beibehalten, zusätzlich noch als ENG (für alle Nicht-Deutschsprechenden).
Hallo,
ist es möglich das Datum aus der GUICtrlCreateDate auf Deutsch und gleichzeitig auf Englisch in eine Datei zu schreiben?
Nein keine VM, alles Hardware da ich VGA Ausgänge brauche.
PixelDetection läuft auf unserem ManagmentServer, der per Alarm dann ein Script ausführen soll, darum die PSExec und das Remotestarten.
Bei uns wird noch mehr mit PixelDetection und myGui gemacht, als nur Monitorwand Überwachung.
Mit PixelDetection wird der Monitor überwacht auf spezielle Inhalte im Browser.
Findet er diese nicht, wird ein RemoteScript per PSExec ausgeführt.
Dieses Script ist das, was ich hier benötige.
Das Script soll erst einmal prüfen, ob der IE oder FF gestartet ist und ob der Titel des URL Fensters der richtige ist.
Ist er vorhanden, soll das Fenster in den Fullscreen gebracht werden.
Wird ein IE oder FF gefunden, aber nicht mit dem Titel, soll die Instanz gekillt werden und mit den Parametern aufgerufen werden.
Aus Datenschutzrechtlichen Gründen kann ich dir diese Infos nicht sagen.
Tut mir Leid.
Kann man dies in die INI mit einbringen?
INI-Datei
Es soll ein Selbstheilendes Anzeigesystem werden, da muss alles automatisiert werden was nur geht.
Es sind nur 4 Monitore, aber 7 PCs. Das würde 28 Monitore ergeben. Aber nicht alle VGA Ausgänge sind belegt.
Achja, wenn es nach Pixeln geht um die Fenster dazustellen sollte ich noch erwähnen, dass 1920x1080 die Auflösungen sind.
Programmauswahl wäre aber Pflicht, da einiger Webseiten nur mir FF und andere nur mit IE funktionieren.
Ja 4 Monitore max pro PC sind machbar, wir haben 7PCs.
Werde mir die IE.au3 und FF.au3 heute mal anschauen.
Ja ist was seriöses. Es geht um eine Lösung für eine Monitoring Lösung mit 15 Bildschirmen und einer Alarm Lösung Namens PixelDetection.
Aktuell habe ich so viele Aufgaben, das ich kaum zum schlafen komme Darum mein Gesuch um eine fertige Lösung.
Welche Eigenschaft hat das Fenster?
Meinst du damit die Browserfenster? Die haben alle einen unterschiedlichen Titel.
Am liebsten wäre mir die INI wie folgt:
[Programm]
C:\programme\mozilla\firefox.exe
[url]
Http://www.google.de http://www.web.de http://www.nagios.de
[user]
Übername
[password]
Password
Aus der INI soll er sich dann die Infos ziehen.
Danke im voraus.
Benutzer und Passwortübergabe wie bei WGET um Anmeldefenster zu befüttern.
Keine Oberflächte, am besten eine INI für die Konfig, die man am besten wie folgt aufruft:
C:\Tools\monitorstart.exe C:\Tools\Config1.ini
Hallo,
ich benötige ein AutoIT Script, welches folgende Features hat:
1. Starten eines Firefox oder IE mit einer oder mehreren URLs inkl. Benutzer und Passwort auf einem bestimmten Monitor (kann bis zu 4 Monitore an einem PC angeschlossen sein)
2. Sollte vor dem Starten geprüft werden, ob auf dem Monitor der Firefox schon gestartet ist (der Titel ist ausschlaggebend) und ggfs. nur in den FullScreen bringen.
Falls jemand ansätze hat, würde ich mich auch darüber freuen.
Danke
Gruß
ZoeLeah
Kleine Änderung noch:
Die MSG Ausgabe bei Fehler soll nur einmalig kommen, das Fehler aufgetaucht sind und das man ins Log schauen muss.
Dabei muss aber sämtliche Auftretende Fehler ins Log geschrieben werden und dann aber das Script beendet werden und nicht die Aufbereitet.csv erstellt werden.
Kannst du mir da nochmal weiter Helfen SEuBo
#include <Date.au3>
$sKundendaten = FileRead(@ScriptDir & "\kunden.txt")
$sWaWi = FileRead(@ScriptDir & "\datev.txt")
$aKNum2 = StringRegExp($sWaWi, "(?<=;)0{3}[789]\d+", 3)
If @error Then
MsgBox(0, "", "Keine passenden Nummern gefunden. Fehlercode " & @error)
Exit
EndIf
For $i = 0 To UBound($aKNum2) - 1
$aKNum1 = StringRegExp($sKundendaten, "(\d+)(?=;" & $aKNum2[$i] & ")", 3)
If Not @error Then
$sWaWi = StringRegExpReplace($sWaWi, "(?<=;)" & $aKNum2[$i] & "(?=;)", $aKNum1[0])
Else
$iErrTime = _Now()
_ErrorLog("(" & $iErrTime & ")" & @CRLF & $aKNum2[$i] & " wurde nicht in der kunden.txt gefunden.")
EndIf
Next
If FileExists(@ScriptDir & "\Aufbereitet.csv") Then
If MsgBox(4, "Datei ersetzen", "Vorhandene Aufbereitet.csv überschreiben?") = 6 Then
FileDelete(@ScriptDir & "\Aufbereitet.csv")
Else
Exit
EndIf
EndIf
FileWrite(@ScriptDir & "\Aufbereitet.csv", $sWaWi)
Func _ErrorLog($sText, $iTime = -1)
If $iTime = -1 Then $iTime = _NowDate()
FileWrite(@ScriptDir & "\Error-" & $iTime & ".log", "=====> " & $sText & @CRLF)
EndFunc ;==>_ErrorLog
Super Arbeit SEuBo,
vielen Dank.
So in der Art soll es aussehen:
[autoit]$sKundendaten = FileRead(@ScriptDir & "\Kundendaten.txt")
$sWaWi = FileRead(@ScriptDir & "\datev.txt")
$aKNum2 = StringRegExp($sWaWi, "(?<=;)0{3}[789]\d+", 3)
[/autoit][autoit][/autoit][autoit]; Wenn $aKNum2 nicht vorhanden in $sKundendaten an Stelle 2 dann ERROR
[/autoit][autoit][/autoit][autoit]For $i = 0 To UBound($aKNum2) - 1
$aKNum1 = StringRegExp($sKundendaten, "(\d+)(?=;" & $aKNum2[$i] & ")", 3)
$sWaWi1 = StringRegExpReplace($sWaWi, "(?<=;)" & $aKNum2[$i] & "(?=;)", $aKNum1[0])
Next
If FileExists(@ScriptDir & "\Aufbereitet.txt") Then
If MsgBox(4, "Datei ersetzen", "Vorhandene Aufbereitet.txt überschreiben?") = 6 Then
FileDelete(@ScriptDir & "\Aufbereitet.txt")
Else
_ErrorLog("Datei nicht überschrieben.")
Exit
EndIf
EndIf
FileWrite(@ScriptDir & "\Aufbereitet.txt", $sWaWi1)
MsgBox(262144, "Erfolgreich", "Konvertierung erfolgreich abgeschlossen")
Func _ErrorLog($sText)
FileWrite(@ScriptDir & "\error_" & @YEAR & "-" & @MON & "-" & @MDAY &".log", "=====> " & $sText & @CRLF)
EndFunc ;==>_ErrorLog
Nur klappt das mit:
[autoit]For $i = 0 To UBound($aKNum2) - 1
$aKNum1 = StringRegExp($sKundendaten, "(\d+)(?=;" & $aKNum2[$i] & ")", 3)
$sWaWi1 = StringRegExpReplace($sWaWi, "(?<=;)" & $aKNum2[$i] & "(?=;)", $aKNum1[0])
Next
nicht so recht und mit dem Abfangen der Kundennr.2 aus Datev.txt (ehemals WaWi.csv) wenn sie nicht in Kundendaten.txt vorhanden ist an Stelle 2 hab ich auch Probleme.
Danke im voraus für eure Hilfe
Hallo SEuBo,
danke für dein Script.
Was es nicht macht:
Die Kundennr. in der WaWi.csv ist gleich Kundennr. 2 in der Kundendaten.csv, wenn diese nicht vorhanden ist, muss das Error Log erstellt werden.
Fall die Kundennr. 2 in WaWi.csv und Kundendaten.csv vorhanden ist, soll es automatisch durch die Kundennr. 1 ersetzt werden.
Nur eine Fehlermeldung und Error-Log, falls die Kundennr. in der Wawi.csv nicht als Kundennr. 2 in der Kundendaten.csv vorhanden ist.
Hab mich wohl "falsch" ausgedrückt.
Der Sachverhalt hat sich ein wenig verändert.
Kundendaten.csv enthält 2 Spalten:
WaWi.csv folgende Spalten:
Jetzt darf nur der Bereich 000725050 abgeändert werden, ABER !!!! nur Daten die mit 0007 oder 0008 oder 0009 beginnen.
000725050 = Kundennr. 2 und muss durch Kundennr. 1 ersetzt werden.
WaWi.csv enthält mehrere Zeilen.
Falls Kundennr. 2 nicht in Kundendaten.csv enthalten ist, muss ein Error-%Datum%.log erstellt werden und eine Errormeldung erscheinen. Das weitere Verarbeiten darf nicht fortgeführt werden.
Die neue Datei soll Aufbereitet.csv heißen.
Vorhandene Aufbereitet.csv Dateien sollen erst nach Bestätigungen überschrieben werden.
Ich bin leider vollkommen unfähig in der Programmierung, wäre fein eine Fertige Lösung von euch zu bekommen.
Danke im voraus.
Danke an Schnitzel und SEuBo,
hat alles wunderbar geklappt.
Gruß
ZoeLeah
Ich habe eine Source Datei die kunden.txt heißt.
Dort gibt es pro Kundennr. eine weitere Kundennr., mit einem Semikolon getrennt also:
In einer zweiten TXT (import.txt) sind Warenwirtschaftsdaten
Jetzt soll jeder Wert in der import.txt sämtliche Kundennr.1 in Kundennr.2 ersetzt werden, also 11 in 1212.
Die Kundennr. sind vorlaufende Zahlen von 1 beginnend, also gibt es Kunde 1, 11, 111, 1111 usw.
Das hab ich schon:
[autoit]
$Content1=FileRead("kunden.txt")
$Content2=FileRead("import.txt")
$nummern=StringSplit($Content1,";")
$ersteNummer=$nummern[1]
$zweiteNummer=$nummern[2]
$Content2=StringReplace($Content2,$ersteNummer,$zweiteNummer)
FileWrite("aufbereitet.txt",$Content2)
Das alles soll dann als neue Datei gespeichert werden. Jemand eine Idee um das mit AutoIT zu machen?
Danke im vorraus.
Habs hinbekommen.
Thread kann geschlossen werden.
Danke
Gruß
Ronnie
Sorry aber ich bin ein Noob und bekomme das nicht zum laufen.
Wie soll ich die MsgBox ersetzen, das das hinterlegte Programm aufgerufen wird?
Gruß
Ronnie