Danke, hat soweit nun funktioniert ![]()
Leider geht es nicht, dass ich das Script während dem sichern beenden kann
[autoit]HotKeySet("{ESC}", "Beenden")
Func Beenden()
EXIT
EndFunc
Danke, hat soweit nun funktioniert ![]()
Leider geht es nicht, dass ich das Script während dem sichern beenden kann
[autoit]HotKeySet("{ESC}", "Beenden")
Func Beenden()
EXIT
EndFunc
Danke, habs gesehen.
Jetzt bleibt nur noch zu klären, ob ich das ganze einfacher schreiben kann :teufel:
Würde gerne noch das Script manuell beenden können
[autoit]HotKeySet("{ESC}", "Beenden")
Func Beenden()
EXIT
EndFunc
Wenn das script jedoch schon am kopieren ist geht es nicht.
Wenn ich vorher (vor dem Kopieren) ein Sleep einbaue, klappt es dagegen.
poste jetzt mal mein ganzes Script
#include <Date.au3>
#include <Array.au3>
Dim $Quell_Pf_[4], $goOut = 0
Dim $Ziel_Pf_[4]
Dim $Quell_Pf_Gr_[4]
Dim $Quell_Pf_Gr_Ru_[4]
HotKeySet("{ESC}", "Beenden")
Func Beenden()
EXIT
EndFunc
;Datumsoptionen
$iWeekday = _DateToDayOfWeek(@YEAR, @MON, @MDAY)
$sNewDate = _DateAdd('d', 0, _NowCalcDate())
$sNewDate = StringReplace($sNewDate, "/", ".")
;Quellpfad <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< evtl. ändern >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
$Quell_LW = "E:\"
$Quell_Pf_[1] = $Quell_LW & "\Adressbuch"
$Quell_Pf_[2] = $Quell_LW & "\Favoriten"
$Quell_Pf_[3] = $Quell_LW & "\E-Mails"
;Zielpfad <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< evtl. ändern >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
$Ziel_LW = "V:\"
$Ziel_Pf = $Ziel_LW & "Sicherung Internet\" & $sNewDate
$Ziel_Pf_[1] = $Ziel_Pf & "\Adressbuch"
$Ziel_Pf_[2] = $Ziel_Pf & "\Favoriten"
$Ziel_Pf_[3] = $Ziel_Pf & "\E-Mails"
_check()
Func _check()
;Ziellaufwerk vorhanden?
If FileExists($Ziel_LW) Then
;Quellverzeichnisse vorhanden?
For $i = 1 to 3
If Not FileExists($Quell_Pf_[$i]) Then
MsgBox(0, "", $Quell_Pf_[$i] & " existiert nicht")
$goOut = 1
EndIf
Next
If $goOut = 1 Then Exit
;Größe Speicherplatz? <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< evtl. ändern >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
For $i = 1 to 3
$Quell_Pf_Gr_[$i] = DirGetSize($Quell_Pf_[$i],1)
Next
$Ziel_LW_Gr = DriveSpaceFree($Ziel_LW)
;Größe Speicherplatz gerundet? <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< evtl. ändern >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
For $i = 1 to 3
$Quell_Pf_Gr_Ru_[$i] = Round($Quell_Pf_Gr_[$i], 0 / 1024 / 1024)
Next
$Ziel_LW_Gr_Ru = Round($Ziel_LW_Gr, 0)
;Größe Speicherplatz Vergleich <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< evtl. ändern >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
$tmp = 0
For $i = 1 To 3
$tmp += $Quell_Pf_Gr_Ru_[$i]
Next
If $tmp > $Ziel_LW_Gr Then
Msgbox(0,"Zu wenig Speicherplatz vorhanden","Geben Sie mindestens " & $tmp - $Ziel_LW_Gr_Ru & " MB Speicherplatz auf " & $Ziel_LW & " frei")
Exit
Else
;Info-Fenster einblenden
SplashTextOn("Datensicherung Internet", "Sicherung läuft - Bitte warten", 250, 30, -1, -1, 0)
;zu kopierende Ordner <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< evtl. ändern >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
For $i = 1 to 3
DirCopy($Quell_Pf_[$i], $Ziel_Pf_[$i], 1)
Next
EndIf
Else
$ret = MsgBox(5 + 64, "Datensicherung Internet", "Ziellaufwerk " & $Ziel_LW & " nicht vorhanden")
If $ret = 4 Then
_check()
Else
EndIf
EndIf
EndFunc ;==>_check
;Info-Fenster ausblenden
SplashOff()
EDIT: Beitrag geändert
Leider klappt es nicht, er ignoriert die Größe der Quellordner
Stimmt der Aufruf des HotKeySet?
hm, es wäre aber gut, wenn zuerst alle MsgBox durchlaufen werden und dann das Script beendet wird ![]()
noch was:
Ich habe folgendes dnoch drin
[autoit];Größe Speicherplatz Vergleich <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< evtl. ändern >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
If ($Quell_Pf_Gr_Ru_[1]+$Quell_Pf_Gr_Ru_[2]+$Quell_Pf_Gr_Ru_[3]) > $Ziel_LW_Gr Then
Msgbox(0,"Zu wenig Speicherplatz vorhanden","Geben Sie mindestens " & $Quell_Pf_Gr_Ru_[1] + $Quell_Pf_Gr_Ru_[2] + $Quell_Pf_Gr_Ru_[3] - $Ziel_LW_Gr_Ru & " MB Speicherplatz auf " & $Ziel_LW & " frei")
Exit
Else
Kann ich es bei "$Quell_Pf_Gr_Ru_[1]" auch mit [$i] statt [1] + [2] + [3]?
ZitatOriginal von Waluev
Die 3 ist die Zeilenzahl des Arrays...was du dir wie eine Tabelle vorstellen kannst
Waluev
Also wenn ich 5 Ordner überprüfen will muß die Zahl 5 heißen?
Oder würde auch 8 z. B. gehen?
EDIT:
Hab noch was vergessen, wie kann ich es machen, dass er das Script beenden soll, wenn ein Quellpfad fehlt?
Danke, es funktioniert jetzt.
Was genau sagt diese Zeile
[autoit]Dim $Quell_Pf_0[3]
[/autoit]Was bedeutet die 3?
3 Pfade zum überprüfen?
Brauche ich diese Zeile?
[autoit]#include <Array.au3>
[/autoit]Danke :party4:
Hm,
habs mal probiert, kommt aber ne Fehlermeldung
#include <Date.au3>
#include <Array.au3>
;Datumsoptionen
$iWeekday = _DateToDayOfWeek(@YEAR, @MON, @MDAY)
$sNewDate = _DateAdd('d', 0, _NowCalcDate())
$sNewDate = StringReplace($sNewDate, "/", ".")
;Quellpfad <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< evtl. ändern >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
$Quell_LW = "E:\"
$Quell_Pf_01 = $Quell_LW & "\Adressbuch"
$Quell_Pf_02 = $Quell_LW & "\Favoriten1"
$Quell_Pf_03 = $Quell_LW & "\E-Mails"
;Zielpfad <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< evtl. ändern >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
$Ziel_LW = "V:\"
$Ziel_Pf = $Ziel_LW & "Sicherung Internet\" & $sNewDate
$Ziel_Pf_01 = $Ziel_Pf & "\Adressbuch"
$Ziel_Pf_02 = $Ziel_Pf & "\Favoriten"
$Ziel_Pf_03 = $Ziel_Pf & "\E-Mails"
_check()
Func _check()
;Ziellaufwerk vorhanden?
If FileExists($Ziel_LW) Then
;Quellverzeichnisse vorhanden?
For $i = 1 to 3
If Not FileExists($Quell_Pf_0[$i]) Then MsgBox(0, "", $Quell_Pf_0[$i] & " existiert nicht")
Next
Brauche ich das
[autoit]#include <Array.au3>
[/autoit]?
Was mache ich da falsch
Hi,
ich bin dabei ein Script zu Datensicherung zu erstellen.
Es klappt so weit ganz gut.
Nun will ich noch überprüfen, ob die Quellordner auch existieren
Hier mein Script
#include <Date.au3>
;Datumsoptionen
$iWeekday = _DateToDayOfWeek(@YEAR, @MON, @MDAY)
$sNewDate = _DateAdd('d', 0, _NowCalcDate())
$sNewDate = StringReplace($sNewDate, "/", ".")
;Quellpfad <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< evtl. ändern >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
$Quell_LW = "E:\"
$Quell_Pf_01 = $Quell_LW & "\Adressbuch"
$Quell_Pf_02 = $Quell_LW & "\Favoriten"
$Quell_Pf_03 = $Quell_LW & "\E-Mails"
;Zielpfad <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< evtl. ändern >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
$Ziel_LW = "V:\"
$Ziel_Pf = $Ziel_LW & "Sicherung Internet\" & $sNewDate
$Ziel_Pf_01 = $Ziel_Pf & "\Adressbuch"
$Ziel_Pf_02 = $Ziel_Pf & "\Favoriten"
$Ziel_Pf_03 = $Ziel_Pf & "\E-Mails"
_check()
Func _check()
;Ziellaufwerk vorhanden?
If FileExists($Ziel_LW) Then
;Quellverzeichnisse vorhanden?
If NOT FileExists($Quell_Pf_01) Then
$Q1 = Msgbox(0, "TEST", "Quellpfad " & $Quell_Pf_01 & " existiert nicht. Bitte überprüfen")
Else
EndIf
If $Q1 = 1 Then
If NOT FileExists($Quell_Pf_02) Then
$Q2 = Msgbox(0, "TEST", "Quellpfad " & $Quell_Pf_02 & " existiert nicht. Bitte überprüfen")
Else
Endif
Else
EndIf
If $Q2 = 1 Then
If NOT FileExists($Quell_Pf_03) Then
$Q3 = Msgbox(0, "TEST", "Quellpfad " & $Quell_Pf_03 & " existiert nicht. Bitte überprüfen")
Else
Endif
Else
EndIf
If $Q3 = 1 Then
EXIT
Else
Endif
;Script geht noch weiter, ist aber nicht von Bedeutung
[/autoit] [autoit][/autoit] [autoit][/autoit]
Ich will alle drei Quellordner (ab Zeile 27) überprüfen.
Wenn sie nicht da sind soll eine msgbox kommen.
Dann den nächsten Ordner überprüfen
Wie mach ich das?
Danke, wie immer perfekt :party4:
Aha, gibt es trotzdem eine Möglichkeit?
Kann ich evtl. Die Arrays addieren, wie? ![]()
Hi,
ich will die Größe von 3 Ordnern ($size1) zusammen mit dem freien Speicherplatz ($size2) vergleichen
...
$size1 = DirGetSize($title1_01,1) + DirGetSize($title1_02,1) + DirGetSize($title1_03,1)
$size2 = DriveSpaceFree($title2)
If Round($size1[0] / 1024 / 1024) > $size2 Then
...
Leider wird immer nur der erste Ordner hinter $size1 genommen.
Wie kann ich alle 3 Ordner einbeziehen
Boah, man ey du bist ja schneller als die Feuerwehr,
Danke, genau so wollte ich es haben
![]()
Hi,
ich brauche nochmal eure Hilfe,
ich will Dateien sichern.
Nun soll ein Fenster erscheinen, wenn das Zeillaufwerk nicht da ist - funktioniert soweit.
Wenn bei dem Fesnter auf Wiederholen geklickt wird, soll das Script wieder nach dem Laufwerksbuchstaben suchen.
Wei bekomme ich das hin
Danke
[autoit]#include <Date.au3>
[/autoit][autoit][/autoit][autoit];Datumsoptionen
$iWeekday = _DateToDayOfWeek (@YEAR, @MON, @MDAY)
$sNewDate = _DateAdd( 'd',0, _NowCalcDate())
$sNewDate = StringReplace($sNewDate,"/",".")
;Quellpfad
$title1 = "E:\"
;Zielpfad
$title2 = "V:\"
$title3 = $title2 & "Sicherung Internet\" & $sNewDate
;Ziellaufwerk vorhanden
If FileExists("V:\") Then
;Info-Fenster einblenden
SplashTextOn("Datensicherung Internet", "Sicherung läuft - Bitte warten", 250, 30, -1, -1, 0)
;zu kopierende Ordner
DirCopy($title1 & "\Adressbuch", $title3 & "\Adressbuch", 1)
Else
If MsgBox(5+64, "Datensicherung Internet", "Ziellaufwerk " & $title2 & " nicht vorhanden")=3 Then
;HIER MUSS ER NUN VON VORNE BEGINNEN!!!!!!!!!!!!!!!!!!!!!
EndIf
;Info-Fenster ausblenden
SplashOff()
Danke an euch beide,
hab die Version von AspirinJunkie genommen
:party3:
Hi,
ich habe ein Script erstellt, durch welches Dateien gesichert werden
#include <Date.au3>
[/autoit][autoit][/autoit][autoit]$iWeekday = _DateToDayOfWeek (@YEAR, @MON, @MDAY)
$sNewDate = _DateAdd( 'd',0, _NowCalcDate())
$sNewDate = StringReplace($sNewDate,"/",".")
DirCopy("E:\Adressbuch", "C:\Sicherung Internet\" & $sNewDate & "\Adressbuch", 1)
[/autoit]
Nun will ich eine Msgbox anzeigen lassen ,solange kopiert wird.
Diese soll nach beenden des kopieren verschwinden.
Wie geht das?
#include <Date.au3>
[/autoit]
Die Datei "Date.au3" liegt ja im AutoIt Ordner. Dies würde ja bedeuten, dass ich die Exe dieses Scripts nicht ohne ein installiertes AutoIt ausführen, oder kann man dies umgehen?
Danke
Hi,
ich habe eine Excel Tabelle, so in etwa
Peter Mustermann | aaaaaaaa@web.de | x
Peter Muster | ggggggg@web.de |
Dieter Mann | bbbbbbb@gmx.de | x
Fritz Schmidt | cccccccc@web.de | x
nun will ich die 3 E-Mail-Adressen mit dem "x" in eine Zelle schreiben lassen.
Ich habe Outlook Express und viele E-Mail-Adressen von der Schule.
Jedoch lohnt es sich nicht alle ins Adressbuch einzutragen.
Jedoch kann es sein, dass ich mehreren die gleiche E-Mail schreiben muss.
Dies könnte ich so erleichtern
Hi
,
ich habe eine Excel Tabelle mit Adressen und E-Mail-Adressen.
Nun will ich, dass alle E-Mail Adressen in eine Zelle auf einem anderem Register geschrieben werden
und zwar so:
jedoch will ich nur die Adressen, wo in einer Zelle rechts davon ein "x" drinsteht.
ist dies möglich?
weiss nicht wie ich anfangen soll, bzw. wie ich in Excel Zellen oder Register auswähle
Könnt ihr mir helfen
Danke ![]()
Man Problem war, dass er mit die falschen Bezeichnungen der Button angezeigt hat
Das Tool zeigt mir eben das an, was ich eingeben habe.
Außerdem zeigt es bei Control Under Mouse - Control ist hidden an. Hat das was zu bedeuten?
EDIT:
So habs nun hinbekommen. Aber wie?
Habe es mit dem AutoIt Macro Recorder mal aufgezeichnet und das ist dabei raugekommen und funktioniert
$title = "Logitech Software Setup"
[/autoit][autoit][/autoit][autoit]Run("Logitech Setpoint 3.3.exe")
[/autoit][autoit][/autoit][autoit]WinWait($title,"")
ControlClick($title,"","Button13")
ControlClick($title,"","Button13")
ControlClick($title,"","Button13")
ControlClick($title,"","Button6")
ControlClick($title,"","Button13")
ControlClick($title,"","Button13")
ControlClick($title,"","Button6")
ControlClick($title,"","Button34")
WinWait($title, "RadioBtn")
ControlClick($title, "RadioBtn", "Button26")
ControlClick($title,"","Button34")
Warum zeigt mir AutoIt Window Info andere, falsche Schalter an?
Liegt es vielleicht daran, dass der Installationsvorgang nicht in dem klassischen Design ist wie andere Programme?