hi,
schau mal hier ob da was bei ist.
YouTube
Taucher
hi,
schau mal hier ob da was bei ist.
YouTube
Taucher
hi,
was bekommst du für eine Fehlermeldung. Benötigst du unbedingt die Mausclicks. Kannst du eventuell mit Controllclicks arbeiten. Schaue dochmal ob du die Controllid mit Au3Info herausbekommst.
Taucher
hi,
aus der Hilfe
If ProcessExists("notepad.exe") Then
MsgBox(0, "Example", "Notepad is running.")
EndIf
Taucher
hi,
handelt es sich hier um ein Wort dann mit Iniread sind es mehrere dann mit IniReadSection
aus der Hilfe
$var = IniReadSection("C:\Temp\myfile.ini", "001")
If @error Then
MsgBox(4096, "", "Error occured, probably no INI file.")
Else
For $i = 1 To $var[0][0]
MsgBox(4096, "", "Key: " & $var[$i][0] & @CRLF & "Value: " & $var[$i][1])
Next
EndIf
Ini sieht dann eventuell so aus
[001]
1=bla
2=blu
3=blas
[002]
usw.
Key währe indiesem Fall alles was hinter 1= steht usw.
default währe ein Fehler.
Taucher
hi,
vielleicht so Send("#{Pause},0")
TAucher
hi,
versuche
Global $Paused
HotKeySet("{PAUSE}", "TogglePause")
HotKeySet("{ESC}", "Terminate")
HotKeySet("+!d", "ShowMessage") ;Shift-Alt-d
;;;; Body of program would go here ;;;;
While 1
Sleep(100)
WEnd
;;;;;;;;
Func TogglePause()
$Paused = NOT $Paused
While $Paused
sleep(100)
ToolTip('Script is "Paused"',0,0)
WEnd
ToolTip("")
EndFunc
Func Terminate()
Exit 0
EndFunc
Func ShowMessage()
MsgBox(4096,"","This is a message.")
EndFunc
taucher
hi,
sorry hatte eine Browser Absturz. Wollte eigentlich nicht den ersten Beitrag löschen. Wie ist es denn nun richtig, damit wenn der Dienst läuft auch Netzlaufwerke benutzt werden können? Im Script war es ja schon so das das Laufwerk verbunden Sein muss. Habe es auch mal so versucht wie msp-holzwurm beschriebn hat. Leider möchte er sich dann aber nicht verbinden. Woran liegt es?
$file = "C:\Datensicherung\nav.zup"
$user = _StringEncrypt(0, IniRead($file, "001", "3", "Nichts gefunden"), "pass", 1)
$pw = _StringEncrypt(0, IniRead($file, "001", "4", "Nichts gefunden"), "pass", 1)
While 1
DriveMapAdd(StringLeft(IniRead($file, "006", "8", "error"), 2), IniRead($file, "002", "3", "error"), 8, $user, $pw)
IniWrite($file, "007", "1", "gestartet")
Sleep(60000)
DriveMapDel(StringLeft(IniRead($file, "006", "8", "error"), 2))
IniWrite($file, "007", "1", "")
Sleep(100)
WEnd
Wenn der Dienst einem anderen(admin) zugewiesen wird verbindet er zwar das LAufwerk aber die anderen Func gehen nicht. Wenn der Dienst als System läuft ist es umgekehrt.
Taucher
hi,
Hacken war drin. Musste aber damit es läuft den Dienst expeziet dem Admin zuweisen dann gehts.
Taucher
hi,
mein erstelltes Backup Programm läuft als Dienst. Nun habe ich ein Netzlaufwerk einbinden wollen, auf dem ein Ordner angelegt werden soll. Das Netzlaufwerk wird per LoginScript verbunden. Leider wird bei der Ausführung des Scripts das Netzlaufwerk nicht erkannt. Somit auch nicht der Ordner angelegt. Die Infos werden aus einer Ini geholt.
DirCreate(StringLeft(IniRead($file, "006", "8", "error"), 18) & $sNewDate)
[/autoit]
habe es auch versucht falls es nicht verbunden ist zuverbinden
If Not FileExists(StringLeft(IniRead($file, "006", "8", "error"), 3)) Then
DriveMapAdd("T:", "\\Server\Backup")
MsgBox(64, "Laufwerk", "Es wurde " & StringLeft(IniRead($file, "006", "8", "error"), 3) & " verbunden", 10)
EndIf
Auch dann geschieht nicht. Wenn das Script nicht als Dienst läuft dann wird der Ordner erstellt. Woran kanns liegen?
Taucher[
hi,
also es gibt keine Fehlermeldung.
aus der Hilfe
If ProcessExists(3940) Then
MsgBox(0, "Example", "Outlook is running.")
EndIf
Wenn du kein Script zeigst kann der Fehler auch nicht gefunden werden.
Taucher
hi,
erklären kann man es Dir sicher. Aber ohne mehr Input dürfte es schwer werden. Poste deinen Code.
Taucher
hi,
das hatte ich völlig übersehen. Danke es läuft.
TAucher
hi,
Bei meiner Func soll dia angehängte ini in der Section 001 abgearbeitet werden. Leider wird die Schleife nur einmal durchlaufen. was ist an meinem Script falsch?
#include 'string.au3'
#include 'File.au3'
#include 'array.au3'
#include 'date.au3'
Opt("TrayIconDebug", 1)
[/autoit] [autoit][/autoit] [autoit]$vas = "C:\Datensicherung\CDR.ini"
$var = IniReadSection("C:\Datensicherung\CDR.ini", "001")
_zusammen()
;
Func _zusammen()
For $i = 1 To $var[0][0]
MsgBox(4096, "", $var[$i][1])
If FileExists(IniRead($vas, "002", $i, "NotFound") & _JahrMonatstring() & "\" & "*.cdr") Then
If FileCopy(IniRead($vas, "002", $i, "NotFound") & _JahrMonatstring() & "\" & "*.cdr", IniRead($vas, "003", "1", "NotFound"), 1) = 1 Then
Sleep(1500)
Local $filelist = _FileListToArray(IniRead($vas, "003", "1", "NotFound"), "*.CDR"); Ordner in dem die ganzen .txt Dateien enthalten sind
If IsArray($filelist) Then
Local $sammlung = IniRead($vas, "003", "2", "NotFound") & $var[$i][1] & " " & _Monatsstring() & ".CDR"
$destfile = FileOpen($sammlung, 10); Datei in der die anderen verbunden werden
If $destfile <> -1 Then
For $i = 1 To $filelist[0]
MsgBox(0,"",IniRead($vas, "003", "2", "NotFound") & $filelist[$i],1)
$temp = FileOpen(IniRead($vas, "003", "2", "NotFound") & $filelist[$i], 0)
If $temp <> -1 Then
if FileWrite($destfile, FileRead($temp) & @CRLF)= 1 Then FileClose($temp)
EndIf
Next
FileClose($destfile)
EndIf
Sleep(15000)
FileDelete(IniRead($vas, "003", "1", "NotFound"))
EndIf
EndIf
EndIf
Next
EndFunc ;==>_zusammen
;
Func _JahrMonatstring()
If @MON = 1 Then
$monat = 12
$jahr = @YEAR - 1
Return $jahr & "\" & $monat & " " & $jahr
EndIf
Return StringFormat("%02d", @MON - 1) & " / " & @YEAR
EndFunc ;==>_JahrMonatstring
;
Func _Monatsstring()
If @MON = 1 Then
$monat = 12
$jahr = @YEAR - 1
Return $monat & " " & $jahr
EndIf
Return StringFormat("%02d", @MON - 1) & " " & @YEAR
EndFunc ;==>_Monatsstring
mfg Taucher
hi,
danke Oscar es geht
schönes WE
hi,
du kannst aber eveentuel auch ConsoleWrite verwenden. Musst mal hier nach suchen.
Taucher
hi Oscar
irgendwie stehe ich auf dem Schlauch. Habe eine MSGBOX eingebaut um zu sehen wo ich stehe. Leider wird nix zusammengeschrieben. Lediglich die Datei wird erstellt mit 0 kb.
Taucher
hi,
nimm das Opt("TrayIconDebug", 1) einzusetzen unter den #include Dann wird im Tray die Zeilennummer angezeigt.
Taucher
hi,
ja auch bei deinem Script bekomme ich
C:\Programme\AutoIt3\Include\zum testen.au3 (75) : ==> Array variable has incorrect number of subscripts or subscript dimension range exceeded.:
FileWrite($sammlung, FileRead($FileList[$i] & ".cdr") & @CRLF)
FileWrite($sammlung, FileRead(^ ERROR
Wie müsste es aussehen wenn man das Array in zwei Teile zerlegt und nach einander einliest. Auch habe ich versuch wie von Mega beschrieben die Dateien zu schliessen. Auch das möchte nicht gehen. Was kann ich noch tun. Möchte ungerne auf den Dos Copy Befehl zurückgreifen.
Taucher
hi,
soweit gut ohne Fehlermeldung. Nun ist die Datei aber leer.
Taucher
hi,
danke erstmal aber ich bekomme auch weiterhin die Fehlermeldung
Taucher
Func _zusammen()
Global $FileList = _FileListToArray("C:\test\", "*.txt", 1) ; Dateiende wählen
; X:\xtraconnect Account 2\reports\cdr\Voice\2007\12 2007
_ArrayDisplay($FileList, "")
;
Global $sammlung = FileOpen("C:\Test" & "\" & _Now() & ".txt", 1);Datei zum schreiben
;
For $i = 1 To UBound($FileList) - 1
FileWrite($sammlung, FileRead(FileOpen("C:\Test" & "\" & $FileList[$i], 0)))
Sleep(2500)
FileClose($FileList[$i])
Next
EndFunc