Beiträge von autoBert
-
-
Natürlich^^
Danke sehr, klappt jetzt wunderbar
schön, dann ist dein Problem ja gelöst, schön wäre es allerdings auch wenn du den Thread auf gelöst setzt. Einfach 1. Beitrag bearbeiten, Präfix (nähe Überschrift) ändern und speichern (absenden)mfg autoBert
-
Du musst bei GuiCtrlSetData natürlich auch die Control-ID des betreffenden ListviewItems angeben und nicht die des Listviews,
mfg autoBert
-
Nein, gibt es standardmässig nicht. Habe auch bis jetzt keine UDF gesehen, die einen bereit stellt, musst du dir also selber basteln:
1 Main-Gui 1 Graphics-Control und 2 Child-GUIs erzegen. Mit winmove dann
die Grösse (abhängig von der Position des Graphic-Controls anpasen,mfg autoBert
-
Um ein ListViewItem nachträglich zu ändern/ergänzen kannst du
[autoit]GuiCtrlSetData
[/autoit]verwenden:
Zitat von HilfeFür ListView, ListViewItem Controls:
Um eine bestimmte Spalte zu verändern, wird für die anderen Spalten einfach "nichts" angegeben, z.B. verändert "||update" nur die dritte Spalte.mfg autoBert
-
Welchem praktischen Zweck dient _FTP_Open eig?
Irgendwie/wo muss ja die FTP-Sitzung initialisiert werden und die Macher von AutoIt haben die dafür zuständige func _FTP_OPEN genannt. Mit dem von _FTP_OPEN zurückgebenen Handle connectest du dich danach mit _FTP_Connect.
mfg autoBert
-
Hallo SYY99,
ZitatStringReplace
--------------------------------------------------------------------------------Ersetzt ein oder mehrere Zeichen in einem String.
Quelle: Hilfe
[autoit]FileRead
[/autoit]solltest du dir ebenfalls anschauenm mit dem Operator & kannst du Strings aneinanderhängen,
mfg autoBert
-
Hallo Ophthalamia,
was verstehst du unter einem Splitcontainer.
ZitatStringSplit
Teilt einen String, abhängig von den/dem gewählten Trennzeichen (delimiters), in Stringfolgen auf und gibt diese in einem Array zurück.
Quelle: Hilfe zu StringSplit
mfg autoBert
-
Hier mal ein Skript, das den Ansatz für die Progressbar zeigt:
Spoiler anzeigen
[autoit]#include <ButtonConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <File.au3>;FileInstall("c:\pingtool\pingbox.exe", "c:\temp\pingbox.exe", 1)
[/autoit] [autoit][/autoit] [autoit]
;FileInstall("c:\Pingtool\Logviewer.exe", "c:\temp\Logviewer.exe", 1)$Form1 = GUICreate("Pingtester", 195, 231, 488, 336)
[/autoit] [autoit][/autoit] [autoit]
$Start = GUICtrlCreateButton("Start Test", 40, 24, 113, 41)
$Log = GUICtrlCreateButton("Start Logviewer", 40, 80, 113, 41)
$Exit = GUICtrlCreateButton("Exit", 40, 176, 113, 41)
DllCall('uxtheme.dll', 'none', 'SetThemeAppProperties', 'int', 0) ; Classic-Style
$idProgress = GUICtrlCreateProgress(40, 130, 113, 25)
GUICtrlSetColor(-1, 0xff0000); not working with Windows XP Style
DllCall('uxtheme.dll', 'none', 'SetThemeAppProperties', 'int', 7) ; Standard-Windows-StyleGUISetState(@SW_SHOW)
[/autoit] [autoit][/autoit] [autoit]
Global $iPingErrors = 0, $iPingAll = 0, $bStopped = True, $ip = "www.autoit.de"While 1
[/autoit] [autoit][/autoit] [autoit]
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE, $Exit
ExitLoop
Case $Start
; When you press Start
$iPingErrors = 0
$iPingAll = 0
$bStopped = Not $bStopped
If $bStopped Then
GUICtrlSetData($Start, "&weiter")
Else
GUICtrlSetData($Start, "&Stop")
EndIf
; Case $Log
; When you press Log
EndSwitch
If Not $bStopped Then
Ping($ip, 150) ; 150 ms timeout for PingIf @error = 0 Then
[/autoit]
_FileWriteLog(@ScriptDir & "\ping.log", " Works fine " & $ip & " Ping number: " & $iPingAll)
Sleep(150)
ElseIf @error = 1 Then
_FileWriteLog(@ScriptDir & "\ping.log", " System not reachable " & $ip & " Ping number: " & $iPingAll & " Fehlercount " & $iPingErrors)
Beep(1250, 150)
$iPingErrors += 1
ElseIf @error = 4 Then
_FileWriteLog(@ScriptDir & "\ping.log", " System not reachable " & $ip & " Ping number: " & $iPingAll & " Fehlercount " & $iPingErrors)
Beep(1250, 150)
$iPingErrors += 1
EndIf
$iPingAll += 1
GUICtrlSetData($idProgress, $iPingErrors / $iPingAll * 100)
ConsoleWrite($iPingAll & " Pings, davon Fehler: " & $iPingErrors & " Prozente " & $iPingErrors/$iPingAll*100 & @crlf)
EndIf
WEndeventuell hat von euch ja jemand ne schnelle Lösung so bis Montag morgen 0730

na ja wir sind kein machmal Form, die Fleissarbeit musst du schon selbst machen,
mfg autoBert
-
Hallo blub1,
Programme staten kannst du mit
[autoit]run;oder mit
[/autoit]
shellexecuteum die Zeit zu prüfen benötigst du
[autoit]if..then;
[/autoit]evtl. Makros wie
[autoit]@hour;
[/autoit]
@minoder eine Funktiob wie z.B.
[autoit]_NowCalc
[/autoit]hier einmal ein allgemeines Skript das nachprüft ob die aktuelle Zeit zwischen 2 angegebenen Werten liegt:
Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
#include <StaticConstants.au3>
#include <date.au3>
#include <DateTimeConstants.au3>
#include <EditConstants.au3>
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include<WindowsConstants.au3>Opt('GUIOnEventMode', 1)
[/autoit] [autoit][/autoit] [autoit]Global $sTitel = 'Beispiel zur Nutzung der _NowCalc - Func'
[/autoit] [autoit][/autoit] [autoit]Global $hMainGui = GUICreate($sTitel, 400, 280, 140, 150, BitOR($WS_MINIMIZEBOX, $WS_MAXIMIZEBOX, $WS_SIZEBOX))
[/autoit] [autoit][/autoit] [autoit]
;erzeugt eine GUI die zurückgebebene ID wird in der Variablen $hMainGui gespeichert
;die GUI hat BOXen für Mininmieren, Maximieren und ist in der Größe frei änderbar
GUISetOnEvent($GUI_EVENT_CLOSE, '_End')
;Verknüpft dem Event $Gui_Event_Close mit der Funktion _End;Menübar anzeigen
[/autoit] [autoit][/autoit] [autoit]
Global $menu_help = GUICtrlCreateMenu("?", -1, 1)
Global $item_help_auto = GUICtrlCreateMenuItem("Autor: (Auto)Bert", $menu_help)
Global $item_help_exit = GUICtrlCreateMenuItem("Beenden", $menu_help)
GUICtrlSetOnEvent(-1, '_End')Local $hedtFrom = GUICtrlCreateDate("01.01.2009", 20, 10, 150, 25, $DTS_UPDOWN)
[/autoit] [autoit][/autoit] [autoit]
;erzeugt ein From Steuerelement die zurückgegebene ID wird in der Variablen $hedtFrom gespeichert
Local $DTM_SETFORMAT_ = 0x1032
Local $style = "dd/MM/yyyy HH:mm"
;Local $style = "hh:mm"
GUICtrlSendMsg($hedtFrom, $DTM_SETFORMAT_, 0, $style)
GUICtrlSetData(-1, "10.10.2000 00.00")
GUICtrlSetFont(-1, 12)
GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKTOP + $GUI_DOCKHEIGHT)
;verankert das From Steuerelement Links, rechts, oben und fixiert die Höhe
;beim Resizen bleibt es dadurch auf seiner Position und ändert nur die Breite
Local $hedtTo = GUICtrlCreateDate("01.01.2009", 20, 40, 150, 25, $DTS_UPDOWN)
;erzeugt ein To Steuerelement die zurückgegebene ID wird in der Variablen $hedtTo gespeichert
GUICtrlSendMsg($hedtTo, $DTM_SETFORMAT_, 0, $style)
GUICtrlSetFont(-1, 12)
GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKTOP + $GUI_DOCKHEIGHT)
;verankert das To Steuerelement Links, rechts, oben und fixiert die Höhe
;beim Resizen bleibt es dadurch auf seiner Position und ändert nur die BreiteGUICtrlCreateButton('&prüfen', 220, 10, 150, 25)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
;verankert den Button "Prüfen" rechts und oben und fixiert die Größe
;beim Resizen bleibt es dadurch auf seiner Position am rechten Rand
GUICtrlSetOnEvent(-1, '_CheckDate')
;Beim Klicken des Buttons wird die Funktion _CheckTime aufgerufenLocal $hlblErgebnis = GUICtrlCreateLabel("hier steht danach das Ergebnis", 12, 80, 170, 100)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
;verankert das Label links und oben und fixiert die Größe
;beim Resizen bleibt es dadurch auf seiner Position am linken RandGUICtrlCreateButton('Be&enden', 220, 115, 150, 25)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
GUICtrlSetOnEvent(-1, '_END')
GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)GUICtrlCreateGraphic(0, 210, 400, 2, $SS_BLACKRECT)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetResizing(-1, $GUI_DOCKHEIGHT + $GUI_DOCKRIGHT + $GUI_DOCKLEFT + $GUI_DOCKBOTTOM)
Global $hStatus = GUICtrlCreateLabel("Statuus", 5, 215, 400, 25)GUICtrlSetResizing(-1, $GUI_DOCKHEIGHT + $GUI_DOCKRIGHT + $GUI_DOCKLEFT + $GUI_DOCKBOTTOM)
[/autoit] [autoit][/autoit] [autoit]
;verankert das Label Links, rechts und unten; fixiert die Höhe
;beim Resizen bleibt es dadurch auf seiner Position und ändert nur die Breite wird angepasst
GUISetState()While 1
[/autoit] [autoit][/autoit] [autoit]
Sleep(20000)
WEndFunc _End()
[/autoit] [autoit][/autoit] [autoit]
GUIDelete($hMainGui)
Exit
EndFunc ;==>_EndFunc _CheckDate()
[/autoit]
Local $dtNow = StringLeft(_NowCalc(), 16)
Local $sCheckFrom = GUICtrlRead($hedtFrom)
Local $sCheckTo = GUICtrlRead($hedtTo)
If $sCheckFrom > $sCheckTo Then
$sCheckFrom = $sCheckTo
$sCheckTo = GUICtrlRead($hedtFrom)
EndIf
Local $dtFrom = StringMid($sCheckFrom, 7, 4) & "/" & StringMid($sCheckFrom, 4, 2) & "/" & StringLeft($sCheckFrom, 2) & " " & StringRight($sCheckFrom, 5)
Local $dtTo = StringMid($sCheckTo, 7, 4) & "/" & StringMid($sCheckTo, 4, 2) & "/" & StringLeft($sCheckTo, 2) & " " & StringRight($sCheckTo, 5)
ConsoleWrite("Jetzt " & $dtNow & @CRLF)
ConsoleWrite("1. " & $dtFrom & @CRLF)
ConsoleWrite("2. " & $dtTo & @CRLF)
If $dtFrom <= $dtNow And $dtTo >= $dtNow() Then
$sLblText = $dtNow & @CRLF & "liegt innerhalb Zeitfenster" & @CRLF
Else
$sLblText = $dtNow & @CRLF & "liegt ausserhalb Zeitfenster" & @CRLF
EndIf
GUICtrlSetData($hlblErgebnis, $sLblText)
EndFunc ;==>_CheckDatemfg autoBert
-
Lass dir @error und @extended ausgegen, desweiteren sollte "" & überflüssig aber nicht schädlich sein.
[autoit];Fallls Netzlaufwerk verbunden, trennen
[/autoit][autoit][/autoit][autoit]
DriveMapDel("x:");Benutzerdaten abfrage
[/autoit][autoit][/autoit][autoit]
$login=InputBox ("Benutzername", "Bitte Benutzername eingeben")
$passwd=InputBox("Passwort", "Bitte Passwort eingeben", "","*");Verbindungsaufbau
[/autoit]
DriveMapAdd("x:", "\\smb.hidrive.strato.com\root",0, $login,$passwd)
ConsoleWrite(@error & " " & @extended & @CRLF)mfg autoBert
-
die gewünschte func StringInsert:
[autoit]Func StringInsert($Text,$pos,$sInsert = " ")
[/autoit]
Return StringLeft($Text,$pos) & $sInsert & StringMid($Text,$pos+1)
EndFuncmfg autoBert
-
Du hast die beiden Variablen ja nicht deklariert, dagegen hilft:
[autoit]Global $aIllWebsite[1], $VirWebsite[1]
[/autoit]
Ausserdem hast du-
wieder die Reihenfolge der Parameter von [autoit]StringInStr[/autoit]verwechelt. - beim Pfad der JPG-Dateien für SplashImageOn jeweils ein Backslash vergessen
- Bei SplashImageOn Integer-Parameter in Hochkommas h´gesetzt (sollte aber nicht schädlich sein)
- die beiden Dateien die du mit Inetget herunterladen willst gibt es nicht,
aus dem letzten Grund wird dein Skript wohl nie funktionieren, gegen die anderen Fehler empfehle ich öfter in die Hilfe zu schauen,mfg autoBert
-
-
Liegt das daran, das mein String kein Leerzeichen hat?
genau, ohne eine Leerstelle oder Tabulatorzeichen kein Zeilenumbruch möglich,mfg autoBert
-
Dass Skript ist Müll: du prüfst mit StringInStr ob in einer URL der Inhalt einer Variablen vorkommt die ein Dateihandle enthält. Vielleich hilft ja einlesen (FileRead) stattdessen und das Tauschen der Parameter bei StringInStr, alos so:
Spoiler anzeigen
[autoit]#include <IE.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <file.au3>
Global $lastVisited = ""$oIE = _IECreate("http://proxcoding.tk/update-01.php")
[/autoit] [autoit][/autoit] [autoit]
;Illegale Webseiten
$IllWebsite = FileRead(@ScriptDir & "\ill.txt");Viren Webseiten
[/autoit] [autoit][/autoit] [autoit]
$VirWebsite = ("domain.de")While Sleep(10)
[/autoit] [autoit][/autoit] [autoit]
$sVal = _IEPropertyGet($oIE, "locationurl")
If @error Then ExitLoop
ConsoleWrite($sVal & @CRLF)
If StringInStr($IllWebsite,$sVal) And $sVal <> $lastVisited Then
$lastVisited = $sValSplashTextOn("", "Diese Webseite enthält möglicher Weise illegalen Content!", "800", "50", "-1", "-1", 33, "Arial Black", "12", "12")
[/autoit] [autoit][/autoit] [autoit]
Sleep(3000)
SplashOff()
EndIfIf StringInStr($VirWebsite,$sVal) > 0 And $sVal <> $lastVisited Then
[/autoit]
$lastVisited = $sVal
SplashTextOn("", "Auf dieser Webseite sind möglicher Weise Viren!", "800", "50", "-1", "-1", 33, "Arial Black", "12", "12")
Sleep(3000)
SplashOff()
EndIf
WEndwarum die Seite beim 2. Versuch nicht mehr bösartig sei soll, frage ich mich ernsthaft.
mfg autoBert
-
Hallo blub1,
herzlich willkommen im Forum und viel Spass mit AutoIt.
Hier kannst du dir die Hilfe herunterladen.
Hier gibt es ein AutoIt-Tutorial: http://wiki.autoit.de/wiki/index.php/TutorialSehr hilfreich ist auch das Buch von peethebeeund jetzt zu deinem Probelm: da du nicht
[autoit]GuiCtrlRead
[/autoit]verwendest um den Inhalt des Controls (dessen ID in $input1 gespeichert ist) zu ermitteln, wird dir logischerweise die ControlID zurückgegeben. Die func müsste also so aussehen:
[autoit]func _login()
[/autoit]
_IENavigate($oIE,"http://www." & GUICtrlRead($input1) & ".de")
_IeLoadWait($oIE,0)
endfuncmfg autoBert
-
Hallo Hime,
herzlich willkommen im Forum und viel Spass mit AutoIt.
Hier kannst du dir die Hilfe herunterladen.
Hier gibt es ein AutoIt-Tutorial: http://wiki.autoit.de/wiki/index.php/TutorialSehr hilfreich ist auch das Buch von peethebeeda es keien Sinn macht Skype versteckt zu starten, gebe ich dir auch nur den Tipp die Hilfe bis mindetens zur GUI-Referenz duurch zu arbeiten, dann hast du für die nächsten Tage eine sinnvole Beschäftigung und danach die nötigen Grundlagen für ein sinnvolles Projekt,
mfg autoBert
-
ich habe das ass als "1" definiert, es ist von der wertigkeit her aber z.T die höchste karte.
Dann mustt du deine Wertigkeit anpassen,mfg autoBert
-
Hallo zombie46,
so ?
Spoiler anzeigen
[autoit]#include <array.au3>
[/autoit] [autoit][/autoit] [autoit]Global $aSpieler[3] =["Hans","Kurt","Ingo"]
[/autoit] [autoit][/autoit] [autoit]func _sd_get_hand($playerNr) ;zu testzwecken
[/autoit] [autoit][/autoit] [autoit]
Switch($playerNr)
case 0
Local $aTmp[3]
$aTmp[0] = 3
$aTmp[1] = 7
$aTmp[2] = 1
return $aTmp
case 1
Local $aTmp[4]
$aTmp[0] = 2
$aTmp[1] = 7
$aTmp[2] = 1
$aTmp[3] = 5
return $aTmp
case 2
Local $aTmp[5]
$aTmp[0] = 5
$aTmp[1] = 3
$aTmp[2] = 1
$aTmp[3] = 13
$aTmp[4] = 5
return $aTmp
EndSwitch
EndFuncfunc _compare ()
[/autoit] [autoit][/autoit] [autoit]
Local $iPlayerAnz=3,$aCheck[$iPlayerAnz][2]
for $i = 0 to $iPlayerAnz -1
$aTmp = _sd_get_hand($i) ;returnwert ist ein eindimensionaler array mit den kartenwerten (siehe oben)
$aCheck[$i][0] = $i
for $j = 1 to UBound($aTmp) -1
$aCheck[$i][1] &= $aTmp[$j]& "," ;aCheck[n][m] -> n = spielerID,[m] = hand
Next
Next
_ArraySort($aCheck,1,0,0,1)
_ArrayDisplay($aCheck,"Gesammelte Hände")
ConsoleWrite($aSpieler[$aCheck[0][0]] & " hat gewonnen")
#cs
local $iCheck = $aCheck[0][0] ; =3 im test
local $iWinner
local $aHand[6]
for $k = 0 to $iPlayerAnz - 1 ;für jeden spieler wird
if $aCheck[$k][0] > $iCheck Then ;der erste wert ausgelesen und wenn > $iCheck
$iCheck = $aCheck[$k][0] ;dann wird $iCheck aktualisiert,
$iWinner = $k ;die Hand wird zum (temporären) sieger erklärt
for $l = 0 to UBound($aCheck) -1 ;und
$aHand[$l] = $aCheck[$k][1] ;die Hand in $aHand kopiert
Next
EndIf
Next
_ArrayDisplay($aHand, "Siegerhand")
#ce
EndFunc_compare()
[/autoit] -
Hallo vel2000,
mach es so und es klappt:
Spoiler anzeigen
[autoit]#include <ButtonConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Inet.au3>
#region ### START Koda GUI section ### Form=C:\Users\vel\Desktop\vlc-start-stop.kxf
$Form1 = GUICreate("Form1", 625, 444, 192, 124)
$Button1 = GUICtrlCreateButton("Start VLC", 16, 8, 585, 137, $WS_GROUP)
$Button2 = GUICtrlCreateButton("VLC stoppen", 112, 224, 409, 97, $WS_GROUP)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###Local $dtTime = TimerInit(), $newIP=_GetIP(), $ip = $newIP
[/autoit] [autoit][/autoit] [autoit]
$startCommand = "C:\STICK Kolping\OpenOffice.org Portable Plus\PortableApps\VLCPortable\VLCPortable.exe";
;Pfad anpassen
Run($startCommand)While (1)
[/autoit]
$dtTime = TimerDiff($dtTime)
If $dtTime > 1000 Then
$newIP = _GetIP()
If $ip <> $newIP Then
$PID = ProcessExists("vlc.exe")
If $PID > 0 Then
ProcessClose($PID)
ProcessWaitClose($PID)
EndIf
Run($startCommand)
$ip = $newIP
EndIf
EndIf
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
Run("$StartCommand")
$ip = _GetIP()
Case $Button2
$PID = ProcessExists("vlc.exe")
If $PID > 0 Then
ProcessClose($PID)
ProcessWaitClose($PID)
EndIf
EndSwitch
WEndmfg autoBert