1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. palmers7

Beiträge von palmers7

  • Exel Daten (.xls / .xlsx) in .txt Daten umwandeln

    • palmers7
    • 9. Januar 2013 um 13:09

    Würde ich mit FileFindFirstFile() lösen!

    http://translation.autoit.de/onlinehilfe/fu…ndFirstFile.htm

    [autoit]


    $In = FileFindFirstFile("Aufzeichnung*.txt")
    $In = FileFindNextFile($In)
    $fileIn = FileOpen($In, 0)
    If $fileIn = -1 Then
    MsgBox(0, "Error", "Unable to open file.")
    Exit
    Else
    //mach etwas
    EndIf

    [/autoit]
  • DLL - Was Jetzt?

    • palmers7
    • 8. Januar 2013 um 16:12

    Nein, leider. Sind nur die beiden vom MB da.

  • DLL - Was Jetzt?

    • palmers7
    • 8. Januar 2013 um 14:18

    Da waren 3 DLLs dabei. Die USB.dll hat sich am besten angehört..

    Habe gehofft da geht vlt was.

    Naja, vlt. doch... Die Wetterstation erscheint mir gegenüber als HID-Gerät. Lässt sich daraus etwas sinnvolles spinnen?

  • DLL - Was Jetzt?

    • palmers7
    • 8. Januar 2013 um 14:02

    Hallo Leute,

    Bei meiner Wetterstation kam diese tolle "usb.dll" mit. Jetzt frag ich mich, ob ich mithilfe dieser DLL auch die Wetterstation ansprechen / auslesen kann.

    Wie finde ich raus, was diese DLL eigentlich kann?

    Wetterstation: DV928 von Conrad
    Software: WeatherCapture

    Danke!

    Dateien

    USB_dll.zip 16,75 kB – 308 Downloads
  • Sound selbst erzeugen / Medellbauservo ansteuern

    • palmers7
    • 4. Januar 2013 um 10:07

    Hallo Leute,

    Ich möchte meinen Sound selbst mit Autoit erzeugen und direkt von Autoit rausspielen.

    zB.:
    Button1 -> BRUMMMM ;)
    Button2 -> DRRING
    Button3 -> PIIIEEP

    Ich will nicht drei unterschiedliche MP3s abspielen, sondern prinzipiel den Ton selbst erzeugen.

    Mein eigentlicher Gedanke:
    Man kann Modellbauservos relativ einfach via Soundkarte ansteuern!
    Wikipedia:

    Spoiler anzeigen


    Modellbauservos werden über eine Pulsweitenmodulation (PWM) angesteuert. Über die Breite der Pulse wird der Winkel, auf den der Servoarm gestellt werden soll, gesteuert. Gängig ist ein 50-Hz-Signal (20 ms Periodenlänge), welches zwischen 1 ms (linker Anschlag) und 2 ms (rechter Anschlag) auf High-Pegel und den Rest der Periodenlänge auf Low-Pegel ist. Viele Servos haben in diesem Wertebereich jedoch nicht ihre volle Bewegungsfreiheit ausgenutzt. Die Werte, bei denen der Servo ganz links bzw. rechts ist, können auch unterhalb 1 ms bzw. oberhalb 2 ms liegen. Die Periodendauer von 20 ms ist kein kritischer Wert und muss bei der Ansteuerung nicht genau eingehalten werden.

    Freue mich über jede Hilfestellung und Idee!

  • Dateien vergleichen

    • palmers7
    • 21. Dezember 2012 um 14:26

    Ich würde beide Datein jeweils in ein Array Laden und die nten Zeile von Array1 mit _ArraySearch im Array2 suchen

  • Nach drücken eines Buttons steht das Programm

    • palmers7
    • 21. Dezember 2012 um 11:42

    Also, nach bisl nachforschen:

    die Funktion:

    Spoiler anzeigen
    [autoit]

    Func _addToDatabase()
    $hAddWnd = GUICreate("Hinzufügen", 400, 170)
    GUISetState()
    GUICtrlCreateLabel("Artikelnummer:",10,10)
    $AddArtikelnummer = GUICtrlCreateInput("",100,8,100,20)
    GUICtrlCreateLabel("Beschreibung:",10,40)
    $AddBeschreibung = GUICtrlCreateInput("",100,38,290,20)
    GUICtrlCreateLabel("Lagermenge:",10,70)
    $AddMenge = GUICtrlCreateInput("",100,68,80,20)
    GUICtrlCreateLabel("Preis[€]:",10,100)
    $AddPreis = GUICtrlCreateInput("",100,98,80,20)
    $AddPlus = GUICtrlCreateButton("Hinzufügen", 10, 140, 80, 20)
    $AddClose = GUICtrlCreateButton("Abbrechen", 310, 140, 80, 20)
    While 1
    $msg1 = GUIGetMsg()
    Select
    Case $msg1 = $GUI_EVENT_CLOSE OR $msg1 = $AddClose
    GUIDelete()
    _refreshListView($table)
    ExitLoop
    Case $msg1 = $AddPlus
    $AddArtikelnummer = GUICtrlRead($AddArtikelnummer)
    $AddBeschreibung = GUICtrlRead($AddBeschreibung)
    $AddMenge = Number(GUICtrlRead($AddMenge))
    $AddPreis = Number(GUICtrlRead($AddPreis))
    ;Zu Datenbank hinzufügen
    If $AddArtikelnummer <> "" And $AddBeschreibung <> "" Then
    _connectSQL()
    _Query($sql, "USE lagerliste;")
    $query = "INSERT INTO produkte (Artikelnummer, Beschreibung, Lagerstand, Preis) VALUES ('"&$AddArtikelnummer&"','"&$AddBeschreibung&"',"&$AddMenge&","&$AddPreis&");"
    _Query($sql, $query)
    MsgBox(0,"Status","Artikel wurde angelegt!")
    GUIDelete()
    _disconnectSQL()
    _refreshListView($table)
    Else
    MsgBox(0,"Fehler","Artikelnummer, Beschreibung oder Preis fehlt!")
    GUIDelete()
    _addToDatabase()
    EndIf
    EndSelect
    WEnd
    EndFunc

    [/autoit]

    und hier der aufruf:

    Spoiler anzeigen
    [autoit]

    While 1;Sleep(20)
    $msg = GUIGetMsg()
    ; Sleep(2000)
    ; MsgBox(0,"Debug",GUICtrlRead($table))
    ;Produktinformationen schreiben:
    Global $artikel = StringSplit(GUICtrlRead(GUICtrlRead($table)),"|")
    If GUICtrlRead($table) > 20 Then
    _GDIPlus_GraphicsClear($hBuffer2, 0xFFEEEEEE)
    $image=_GDIPlus_ImageLoadFromFile(@WorkingDir&"\Produktbilder\" & $artikel[1] &".jpg") ;Produktbild laden
    _GDIPlus_GraphicsDrawImageRect($hBuffer2,$image,0,0,350,600) ;Produktbild zeichnen
    _GDIPlus_GraphicsDrawString($hBuffer2,"Artikelnummer: " & $artikel[1],370,10,"Arial",22) ;Artikelnummer
    _GDIPlus_GraphicsDrawString($hBuffer2,"Beschreibung:" & @CRLF & " " &$artikel[2],370,50,"Arial",22) ;Beschreibung
    _GDIPlus_GraphicsDrawString($hBuffer2,"Lagerstand: " & $artikel[3] & " Stück",370,120,"Arial",22) ;Lagerstand
    _GDIPlus_GraphicsDrawString($hBuffer2,"Preis: " & $artikel[4] & " €",370,160,"Arial",22) ;Preis
    EndIf
    Select
    Case $msg = $GUI_EVENT_CLOSE Or $msg = $cancelbutton
    ;_disconnectSQL() ;nicht mehr benötigt, da nach jedem SQL-Befehl die Verbindung abgebaut wird
    ;If _disconnectSQL() == 0 Then
    ; MsgBox(0,"Status","Verbindung konnte nicht getrennt werden")
    ;EndIf
    ExitLoop
    Case $msg = $additem
    _addToDatabase()
    MsgBox(0,"Debug","kommt es noch hier her?")

    [/autoit] [autoit][/autoit] [autoit]

    EndSelect
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hBitmap2, 415,10,575,280)
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hBitmap, 0, 0, $iGUIWidth, $iGUIHeight)
    WEnd

    [/autoit]

    also die Funktion wird aufgerufen (erfolgreich), aber das Exitloop zur ersten While zurück geht nicht!

    EDIT: Ich Schlaukopf denk mir noch, das Exitloop geht nicht, daweil fehlts mir bei allen Buttens wo der Fehler auftaucht!

  • Nach drücken eines Buttons steht das Programm

    • palmers7
    • 21. Dezember 2012 um 10:26

    Hallo Leute, hab mal wieder ein kleines eigenartiges Problem:
    Ich kann das Programm mal toll ausführen, kann zb im Menü auf Hinzufügen klicken, das neue GUI öffnet sich, gebe alles ein, füge es hinzu und "bam" - das wars... nachher werden keine eingaben mehr entgegengenommen. Close-Button geht auch nicht mehr (aber das X).

    Das Programm soll als Lagerprogramm dienen und greift auf eine MySQL-Datenbank zu.

    Ablauf:
    Zeile 105 ;Hinzufügefenster wird aufgerufen
    Zeile 208 ;In der while-Schleife wird andauernd ein Buttondruck abgefragt
    Zeile 229 ; wird noch richtig ausgeführt!
    Zeile 90-132 ;Hier reagiert nichts mehr!?!???!?

    Ich hoffe, ihr habt noch einen Überblick und könnt mir helfen!

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <GDIPlus.au3>
    #include <GuiListView.au3>
    #include <GuiMenu.au3>
    #include <mysql.au3>
    #include <Array.au3>
    Global $sConnected=0
    Global $sql
    _Main()
    Func _Main()
    Local $filemenu, $fileitem, $separator1
    Local $exititem, $helpmenu, $aboutitem, $okbutton, $cancelbutton
    Local $msg, $file
    #forceref $separator1
    $iGUIWidth = 1000
    $iGUIHeight = 600
    $hWnd = GUICreate("Lagerliste", $iGUIWidth, $iGUIHeight)
    #region Datei
    $filemenu = GUICtrlCreateMenu("Datei")
    $connectitem = GUICtrlCreateMenuItem("Verbinden", $filemenu)
    $separator1 = GUICtrlCreateMenuItem("", $filemenu)
    $fileitem = GUICtrlCreateMenuItem("Öffnen...", $filemenu)
    $separator2 = GUICtrlCreateMenuItem("", $filemenu)
    $exititem = GUICtrlCreateMenuItem("Schließen", $filemenu)
    #endregion Datei
    #region Bearbeiten
    $editmenu = GUICtrlCreateMenu("Bearbeiten")
    $additem = GUICtrlCreateMenuItem("Hinzufügen", $editmenu)
    $delitem = GUICtrlCreateMenuItem("Löschen", $editmenu)
    #endregion Bearbeiten
    #region Hilfe
    $helpmenu = GUICtrlCreateMenu("?")
    $aboutitem = GUICtrlCreateMenuItem("Über", $helpmenu)
    #endregion Hilfe
    $refreshbutton = GUICtrlCreateButton("Aktualisieren", 10, 550, 70, 20)
    $cancelbutton = GUICtrlCreateButton("Cancel", 920, 550, 70, 20)
    GUISetState()
    _GDIPlus_Startup()
    $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hWnd)
    $hBitmap = _GDIPlus_BitmapCreateFromGraphics($iGUIWidth, $iGUIHeight, $hGraphic)
    $hBuffer = _GDIPlus_ImageGetGraphicsContext($hBitmap)
    $hBitmap2 = _GDIPlus_BitmapCreateFromGraphics($iGUIWidth, $iGUIHeight, $hGraphic)
    $hBuffer2 = _GDIPlus_ImageGetGraphicsContext($hBitmap2)
    _GDIPlus_GraphicsSetSmoothingMode($hBuffer, 2)
    _GDIPlus_GraphicsSetSmoothingMode($hBuffer2, 2)
    Global $table = GUICtrlCreateListView("Artikel# |Beschreibung |Lagerstand |Preis",10,10,400,500)
    _GDIPlus_GraphicsDrawLine($hBuffer,410,300,1000,300)
    $outArtikel = GUICtrlCreateInput("1",430,320,30,20)
    $outbutton = GUICtrlCreateButton("- Abbuchen", 470, 320, 80, 20)
    $inArtikel =GUICtrlCreateInput("1",430,350,30,20)
    $inbutton = GUICtrlCreateButton("+ Aufbuchen", 470, 350, 80, 20)
    _refreshListView($table)
    While 1;Sleep(20)
    $msg = GUIGetMsg()
    ; Sleep(2000)
    ; MsgBox(0,"Debug",GUICtrlRead($table))
    ;Produktinformationen schreiben:
    Global $artikel = StringSplit(GUICtrlRead(GUICtrlRead($table)),"|")
    If GUICtrlRead($table) > 20 Then
    _GDIPlus_GraphicsClear($hBuffer2, 0xFFEEEEEE)
    $image=_GDIPlus_ImageLoadFromFile(@WorkingDir&"\Produktbilder\" & $artikel[1] &".jpg") ;Produktbild laden
    _GDIPlus_GraphicsDrawImageRect($hBuffer2,$image,0,0,350,600) ;Produktbild zeichnen
    _GDIPlus_GraphicsDrawString($hBuffer2,"Artikelnummer: " & $artikel[1],370,10,"Arial",22) ;Artikelnummer
    _GDIPlus_GraphicsDrawString($hBuffer2,"Beschreibung:" & @CRLF & " " &$artikel[2],370,50,"Arial",22) ;Beschreibung
    _GDIPlus_GraphicsDrawString($hBuffer2,"Lagerstand: " & $artikel[3] & " Stück",370,120,"Arial",22) ;Lagerstand
    _GDIPlus_GraphicsDrawString($hBuffer2,"Preis: " & $artikel[4] & " €",370,160,"Arial",22) ;Preis
    EndIf
    Select
    Case $msg = $GUI_EVENT_CLOSE Or $msg = $cancelbutton
    ;_disconnectSQL() ;nicht mehr benötigt, da nach jedem SQL-Befehl die Verbindung abgebaut wird
    ;If _disconnectSQL() == 0 Then
    ; MsgBox(0,"Status","Verbindung konnte nicht getrennt werden")
    ;EndIf
    ExitLoop
    Case $msg = $connectitem
    _connectSQL()
    If _connectSQL() == 0 Then
    if @error = 1 Then
    MsgBox(0,"Status","Error opening connection")
    ElseIf @error = 2 Then
    MsgBox(0,"Status","MySQL ODBC Driver not installed.")
    EndIf
    Else
    MsgBox(0,"Status","Verbindung wurde erfolgreich hergestellt!")
    EndIf
    Case $msg = $fileitem
    $file = FileOpenDialog("Datei auswählen...", @TempDir, "All (*.*)")
    Case $msg = $additem
    _addToDatabase()
    Case $msg = $delitem
    _delFromDatabase()
    Case $msg = $inbutton ;Artikel plus Eins
    _bucheArtikel(+1,$inArtikel)

    [/autoit] [autoit][/autoit] [autoit]

    Case $msg = $outbutton ;Artikel minus Eins
    _connectSQL()
    $outArtikel = Number(GUICtrlRead($outArtikel))
    $query = "UPDATE produkte SET Lagerstand='"&$artikel[3]-$outArtikel&"' WHERE Artikelnummer='"&$artikel[1]&"';"
    If GUICtrlRead($table) > 20 Then
    _Query($sql, $query)
    MsgBox(0,"Debug","Wurde abgebucht")
    EndIf
    _refreshListView($table)
    Case $msg = $exititem
    ExitLoop
    Case $msg = $refreshbutton
    _refreshListView($table)
    Case $msg = $aboutitem
    MsgBox(0, "Über", "written by Palmers Julian 2012")
    EndSelect
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hBitmap2, 415,10,575,280)
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hBitmap, 0, 0, $iGUIWidth, $iGUIHeight)
    WEnd
    GUIDelete()
    Exit
    EndFunc ;==>_Main
    Func _connectSQL()
    $sUsername = "bn"
    $sPassword = "******"
    $sDatabase = "lagerliste"
    $sServer = "localhost"
    $sql = _MySQLConnect($sUsername, $sPassword, $sDatabase, $sServer)
    If $sql <> 0 Then $sConnected = 1
    Return($sql)
    EndFunc
    Func _disconnectSQL()
    local $dis = _MySQLEnd($sql)
    If $dis <> 0 Then $sConnected = 0
    Return($dis)
    EndFunc
    Func _bucheArtikel($bucheRichtung,$bucheFeld)
    _connectSQL()
    $bucheFeld = Number(GUICtrlRead($bucheFeld))
    If GUICtrlRead($table) > 20 AND ($artikel[1]<>0 Or $artikel[2]<>0 Or $artikel[3]<>0 Or $artikel[4]<>0) Then
    $query = "UPDATE produkte SET Lagerstand='"&$artikel[3]+($bucheFeld*$bucheRichtung)&"' WHERE Artikelnummer='"&$artikel[1]&"';"
    _Query($sql, $query)
    _refreshListView($table)
    MsgBox(0,"Debug","Wurde gebucht")
    EndIf
    _disconnectSQL()
    EndFunc
    Func _refreshListView($listView)
    _GUICtrlListView_DeleteAllItems($listView)
    _connectSQL()
    $rCount = _CountRecords($sql, "produkte", "Artikelnummer", "")
    Global $rList[$rCount][4]
    $rArtikelnummer = _GetColVals($sql, "produkte", "Artikelnummer")
    $rBeschreibung = _GetColVals($sql, "produkte", "Beschreibung")
    $rLagerstand = _GetColVals($sql, "produkte", "Lagerstand")
    $rPreis = _GetColVals($sql, "produkte", "Preis")
    For $i=1 To $rCount Step +1
    $rList[$i-1][0] = $rArtikelnummer[$i]
    $rList[$i-1][1] = $rBeschreibung[$i]
    $rList[$i-1][2] = $rLagerstand[$i]
    $rList[$i-1][3] = $rPreis[$i]
    GUICtrlCreateListViewItem($rList[$i-1][0]&"|"&$rList[$i-1][1]&"|"&$rList[$i-1][2]&"|"&$rList[$i-1][3],$listView)
    Next
    _ArrayDisplay($rList) ;Debug
    _disconnectSQL()
    EndFunc
    Func _addToDatabase()
    $hAddWnd = GUICreate("Hinzufügen", 400, 170)
    GUISetState()
    GUICtrlCreateLabel("Artikelnummer:",10,10)
    $AddArtikelnummer = GUICtrlCreateInput("",100,8,100,20)
    GUICtrlCreateLabel("Beschreibung:",10,40)
    $AddBeschreibung = GUICtrlCreateInput("",100,38,290,20)
    GUICtrlCreateLabel("Lagermenge:",10,70)
    $AddMenge = GUICtrlCreateInput("",100,68,80,20)
    GUICtrlCreateLabel("Preis[€]:",10,100)
    $AddPreis = GUICtrlCreateInput("",100,98,80,20)
    $AddPlus = GUICtrlCreateButton("Hinzufügen", 10, 140, 80, 20)
    $AddClose = GUICtrlCreateButton("Abbrechen", 310, 140, 80, 20)
    While 1
    $msg1 = GUIGetMsg()
    Select
    Case $msg1 = $GUI_EVENT_CLOSE OR $msg1 = $AddClose
    GUIDelete()
    _refreshListView($table)
    ExitLoop
    Case $msg1 = $AddPlus
    $AddArtikelnummer = GUICtrlRead($AddArtikelnummer)
    $AddBeschreibung = GUICtrlRead($AddBeschreibung)
    $AddMenge = Number(GUICtrlRead($AddMenge))
    $AddPreis = Number(GUICtrlRead($AddPreis))
    ;Zu Datenbank hinzufügen
    If $AddArtikelnummer <> "" And $AddBeschreibung <> "" Then
    _connectSQL()
    _Query($sql, "USE lagerliste;")
    $query = "INSERT INTO produkte (Artikelnummer, Beschreibung, Lagerstand, Preis) VALUES ('"&$AddArtikelnummer&"','"&$AddBeschreibung&"',"&$AddMenge&","&$AddPreis&");"
    _Query($sql, $query)
    MsgBox(0,"Status","Artikel wurde angelegt!")
    GUIDelete()
    _disconnectSQL()
    _refreshListView($table)
    Else
    MsgBox(0,"Fehler","Artikelnummer, Beschreibung oder Preis fehlt!")
    GUIDelete()
    _addToDatabase()
    EndIf
    EndSelect
    WEnd
    EndFunc
    Func _delFromDatabase()
    $hDelWnd = GUICreate("Löschen", 400, 170)
    GUISetState()
    GUICtrlCreateLabel("Artikelnummer:",10,10)
    $AddArtikelnummer = GUICtrlCreateInput("",100,8,100,20)
    $DelMinus = GUICtrlCreateButton("Löschen", 10, 140, 80, 20)
    $DelClose = GUICtrlCreateButton("Abbrechen", 310, 140, 80, 20)
    While 1
    $msg2 = GUIGetMsg()
    Select
    Case $msg2 = $GUI_EVENT_CLOSE OR $msg2 = $DelClose
    GUIDelete()
    _refreshListView($table)
    ExitLoop
    Case $msg2 = $DelMinus
    $AddArtikelnummer = GUICtrlRead($AddArtikelnummer)
    ;Von Datenbank löschen
    If $AddArtikelnummer <> "" Then
    _connectSQL()
    _Query($sql, "USE lagerliste;")
    $query = "DELETE FROM produkte WHERE Artikelnummer='"&$AddArtikelnummer&"';"
    _Query($sql, $query)
    MsgBox(0,"Status","Artikel wurde gelöscht!")
    Else
    MsgBox(0,"Fehler","Zu löschende Artikelnummer eingeben!")
    EndIf
    EndSelect
    WEnd
    EndFunc

    [/autoit]
  • Fehlermeldung bei Zugriff auf zweites Element von StringSplit

    • palmers7
    • 18. Dezember 2012 um 15:59
    Zitat von Krabat

    die Abfrage die du machst (Zeile 71) ist auch korrekt ;)

    aber in Zeile 73 solltest du lieber
    If $artikel[0] > 1 Then
    machen, weil wenn StringSplit fehlschlägt, weil kein ListView Item makiert ist, ist $artikel[0] = 1

    mfg


    Krabat, mein heutiger Held! auch ein großes Dankeschön an alle anderen Helfer!

  • Fehlermeldung bei Zugriff auf zweites Element von StringSplit

    • palmers7
    • 18. Dezember 2012 um 15:48

    ahm...

    Daraus wurde ich jetzt nicht schlauer!

    Bitte bedenkt, das ist mein 2. Thema und ich bin erst seit 2 Wochen am AutoIten.

    Dachte GUICtrlRead() funktioniert so:
    GUICtrlRead() => Index der Markierung
    GUICtrlRead(GUICtrlRead()) => Text der markierten Zeile (zb.: ID|Beschreibung|Lagerstand|Preis)

    diese Rückgabe will ich dann bei jedem "|" splitten um den einzelnen Eintrag, nicht die ganze Zeile zu bekommen.

    !?. ?(

    Edit:
    Und bevor ich mich hier in etwas verlaufe, das so und so nicht geht:
    Ich will die Elemente von der Zeile der ListView bekommen, die markiert wurde!

  • Fehlermeldung bei Zugriff auf zweites Element von StringSplit

    • palmers7
    • 18. Dezember 2012 um 14:30

    Bei Zeile 97 soll der Fehler liegen!

    Fehlermeldung:
    *\mainWindow.au3 (98) : ==> Array variable has incorrect number of subscripts or subscript dimension range exceeded.:
    _GDIPlus_GraphicsDrawString($hBuffer2,"Beschreibung:" & @CRLF & $artikel[2],370,40,"Arial",22)
    _GDIPlus_GraphicsDrawString($hBuffer2,"Beschreibung:" & @CRLF & ^ ERROR

    Kann mir da jemand den Fehler Zeigen? Danke!

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <GDIPlus.au3>
    #include <GuiListView.au3>
    #include <GuiMenu.au3>
    #include <Array.au3>
    _Main()
    Func _Main()
    Local $filemenu, $fileitem, $recentfilesmenu, $separator1
    Local $exititem, $helpmenu, $aboutitem, $okbutton, $cancelbutton
    Local $msg, $file
    #forceref $separator1
    $iGUIWidth = 1000
    $iGUIHeight = 600
    $hWnd = GUICreate("Lagerliste", $iGUIWidth, $iGUIHeight)
    #region Datei
    $filemenu = GUICtrlCreateMenu("Datei")
    $connectitem = GUICtrlCreateMenuItem("Verbinden", $filemenu)
    $separator1 = GUICtrlCreateMenuItem("", $filemenu)
    $fileitem = GUICtrlCreateMenuItem("Öffnen...", $filemenu)
    $recentfilesmenu = GUICtrlCreateMenu("zuletzt geöffnet", $filemenu)
    $separator2 = GUICtrlCreateMenuItem("", $filemenu)
    $exititem = GUICtrlCreateMenuItem("Schließen", $filemenu)
    #endregion Datei
    #region Bearbeiten
    $editmenu = GUICtrlCreateMenu("Bearbeiten")
    $additem = GUICtrlCreateMenuItem("Hinzufügen", $editmenu)
    $delitem = GUICtrlCreateMenuItem("Löschen", $editmenu)
    #endregion Bearbeiten
    #region Hilfe
    $helpmenu = GUICtrlCreateMenu("?")
    $aboutitem = GUICtrlCreateMenuItem("About", $helpmenu)
    #endregion Hilfe
    $refreshbutton = GUICtrlCreateButton("Aktualisieren", 10, 550, 70, 20)
    $cancelbutton = GUICtrlCreateButton("Cancel", 920, 550, 70, 20)
    GUISetState()
    _GDIPlus_Startup()
    $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hWnd)
    $hBitmap = _GDIPlus_BitmapCreateFromGraphics($iGUIWidth, $iGUIHeight, $hGraphic)
    $hBuffer = _GDIPlus_ImageGetGraphicsContext($hBitmap)
    $hBitmap2 = _GDIPlus_BitmapCreateFromGraphics($iGUIWidth, $iGUIHeight, $hGraphic)
    $hBuffer2 = _GDIPlus_ImageGetGraphicsContext($hBitmap2)
    _GDIPlus_GraphicsSetSmoothingMode($hBuffer, 2)
    _GDIPlus_GraphicsSetSmoothingMode($hBuffer2, 2)
    $table = GUICtrlCreateListView("Artikel# |Beschreibung |Lagerstand |Preis",10,10,400,500)
    _GDIPlus_GraphicsDrawLine($hBuffer,410,300,1000,300)
    _refreshListView($table)
    While Sleep(20)
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE Or $msg = $cancelbutton
    _disconnectSQL()
    ExitLoop
    Case $msg = $connectitem
    _connectSQL()
    if @error Then
    MsgBox(0,"Status","Verbindung wurde hergestellt")
    Else
    MsgBox(0,"Status","Fehler beim Verbinden")
    EndIf
    Case $msg = $fileitem
    $file = FileOpenDialog("Datei auswählen...", @TempDir, "All (*.*)")
    If @error <> 1 Then GUICtrlCreateMenuItem($file, $recentfilesmenu)
    Case $msg = $exititem
    ExitLoop
    Case $msg = $refreshbutton
    _refreshListView($table)
    Case $msg = $aboutitem
    MsgBox(0, "Über", "written by Palmers Julian 2012")
    EndSelect
    ;Produktinformationen schreiben:
    $artikel = StringSplit(GUICtrlRead(GUICtrlRead($table)),"|")
    _ArrayDisplay($artikel)
    If $artikel[1] > -1 Then
    _GDIPlus_GraphicsClear($hBuffer2, 0xFFEEEE22)
    $image=_GDIPlus_ImageLoadFromFile(@WorkingDir&"\jpg.jpg") ;Produktbild laden
    _GDIPlus_GraphicsDrawImageRect($hBuffer2,$image,0,0,350,600) ;Produktbild zeichnen
    _GDIPlus_GraphicsDrawString($hBuffer2,"Artikelnummer: " & $artikel[1],370,10,"Arial",22) ;Artikelnummer
    _GDIPlus_GraphicsDrawString($hBuffer2,"Beschreibung:" & @CRLF & $artikel[2],370,40,"Arial",22) ;Beschreibung
    EndIf
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hBitmap2, 415,10,575,280)
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hBitmap, 0, 0, $iGUIWidth, $iGUIHeight)
    WEnd
    GUIDelete()
    Exit
    EndFunc ;==>_Main
    Func _connectSQL()
    ;$error: 1=OK 0=Fehler
    SetError(0)
    EndFunc
    Func _disconnectSQL()
    EndFunc
    Func _refreshListView($listView)
    _GUICtrlListView_DeleteAllItems($listView)
    For $i=0 To 100 Step +1
    GUICtrlCreateListViewItem($i&"|test |"&$i+5&"|100€",$listView) ;creates a sample Lagerstand
    Next
    EndFunc

    [/autoit]
  • InetGet Ausgabe in einer Wurst

    • palmers7
    • 14. Dezember 2012 um 11:03

    Ja, das "muh.txt" hat mich drauf gebracht dass ich ne doofe Kuh bin und natürlich die AnzeigeFunktion nicht auf runtergeladenen Daten zugegriffen hat sondern Daten aus nem Schwarzen loch fischen wollte. Notepad zeigt es immer noch in einer Schlange an, doch das Script funktioniert jetzt.

    :wacko:

    Danke für die Mühe und großen Dank an SgtIgram!

  • InetGet Ausgabe in einer Wurst

    • palmers7
    • 14. Dezember 2012 um 10:33

    Erstellscript:

    Spoiler anzeigen
    [autoit]

    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Res_Fileversion=1.2.0.0
    #AutoIt3Wrapper_Res_LegalCopyright=Palmers Julian
    #AutoIt3Wrapper_Res_Language=3079
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #cs ----------------------------------------------------------------------------
    AutoIt Version: 3.3.8.1
    Author: Palmers Julian
    Script Function:
    Aufbereitung der Rohdaten in lesefreundliches Format:
    Aufnahmedatum
    Aufnahmezeit
    Druck
    Temperatur innen
    Feuchtigkeit innen
    Temperatur außen
    Feuchtigkeit außen
    Windgeschwindigkeit
    Windrichtung nummerisch
    Windrichtung in Worten
    Windchill
    Windböen
    Regenmenge
    #ce ----------------------------------------------------------------------------
    #include <File.au3>
    While Sleep(1000)
    $In = FileFindFirstFile("Aufzeichnung*.txt")
    $In = FileFindNextFile($In)
    $Out = "Out.txt"
    $bool1 = 0
    $bool2 = 0
    #region In
    $fileIn = FileOpen($In, 0)
    If $fileIn = -1 Then
    ;MsgBox(0, "Error", "Unable to open "&$In)
    ;Exit
    Else
    ;Datum
    $line = FileReadLine($fileIn, 1)
    $line = StringTrimLeft($line, 22)
    $date = StringTrimRight($line, 6)
    ;MsgBox(0, "Line read:", $date)
    ;Uhrzeit
    $line = FileReadLine($fileIn, 1)
    $time = StringTrimLeft($line, 33)
    ;MsgBox(0, "Line read:", $time)
    ;Druck
    $line = FileReadLine($fileIn, 3)
    $plesure = StringTrimLeft($line, 7)
    ;MsgBox(0, "Line read:", $plesure)
    ;Temperatur innen
    $line = FileReadLine($fileIn, 8)
    $line = StringSplit($line, " ")
    $tempIn = $line[4]
    ;MsgBox(0, "Line read:", $tempIn)
    ;Feuchte innen
    $line = FileReadLine($fileIn, 8)
    $line = StringSplit($line, " ")
    $feuchteIn = $line[7]
    ;MsgBox(0, "Line read:", $feuchteIn)
    ;Temperatur außen
    $line = FileReadLine($fileIn, 9)
    $line = StringSplit($line, " ")
    $tempOut = $line[4]
    ;MsgBox(0, "Line read:", $tempOut)
    ;Feuchte außen
    $line = FileReadLine($fileIn, 9)
    $line = StringSplit($line, " ")
    $feuchteOut = $line[7]
    ;MsgBox(0, "Line read:", $feuchteOut)
    ;Niederschlag
    $line = FileReadLine($fileIn, 14)
    $rain = StringTrimLeft($line, 15)
    If $rain = "" Then
    $rain = 0
    EndIf
    ;MsgBox(0, "Line read:", $rain)
    ;Windgeschwindigkeit
    $line = FileReadLine($fileIn, 15)
    $line = StringSplit($line, " ")
    $windSpeed = $line[3]
    ;MsgBox(0, "Line read:", $windSpeed)
    ;Windrichtung
    $line = FileReadLine($fileIn, 15)
    $line = StringSplit($line, " ")
    Local $directions[16] = ["N", "NNO", "NO", "ONO", "O", "OSO", "SO", "SSO", "S", "SSW", "SW", "WSW", "W", "WNW", "NW", "NNW"]
    $windDirW = $directions[$line[5]]
    $windDirN = $line[5]
    ;MsgBox(0, "Line read:", $windDirW)
    ;MsgBox(0, "Line read:", $windDirN)
    ;Wind-Chill
    $line = FileReadLine($fileIn, 16)
    $line = StringSplit($line, " ")
    $windChill = $line[4]
    ;MsgBox(0, "Line read:", $windChill)
    ;Windböen
    $line = FileReadLine($fileIn, 16)
    $line = StringSplit($line, " ")
    $windGust = $line[8]
    ;MsgBox(0, "Line read:", $windGust)
    FileClose($fileIn)
    FileMove($In, @WorkingDir & "\log", 1)
    $bool1 = 1
    EndIf
    #endregion In
    #region Out
    If $bool1 Then
    $fileOut = FileOpen($Out, 2)
    If $fileOut = -1 Then
    MsgBox(0, "Error", "Unable to open "&$Out)
    $bool2=0
    ;Exit
    Else
    FileWriteLine($fileOut, $date&@CRLF)
    FileWriteLine($fileOut, $time&@CRLF)
    FileWriteLine($fileOut, $plesure&@CRLF)
    FileWriteLine($fileOut, $tempIn&@CRLF)
    FileWriteLine($fileOut, $feuchteIn&@CRLF)
    FileWriteLine($fileOut, $tempOut&@CRLF)
    FileWriteLine($fileOut, $feuchteOut&@CRLF)
    FileWriteLine($fileOut, $windSpeed&@CRLF)
    FileWriteLine($fileOut, $windDirN&@CRLF)
    FileWriteLine($fileOut, $windDirW&@CRLF)
    FileWriteLine($fileOut, $windChill&@CRLF)
    FileWriteLine($fileOut, $windGust&@CRLF)
    FileWriteLine($fileOut, $rain&@CRLF)
    FileClose($fileOut)
    FileSetTime($Out, FileGetTime($In))
    $bool2 = 1
    EndIf
    EndIf
    #endregion Out
    #region Array
    If $bool1 Then
    $Uhrzeit = StringSplit($time, ":") ;$Uhrzeit[1]=Stunde $Uhrzeit[2]=Minute)
    $hour = $Uhrzeit[1]
    $min = $Uhrzeit[2]
    $Zeit = $hour + ($min / 60) ;Uhrzeit im Dezimalformat
    $count = _FileCountLines("data.array")
    $fileData = FileOpen("data.array", 0)
    If $fileData = -1 Then
    $fileData = FileOpen("data.array", 1)
    FileClose($fileData)
    $fileData = FileOpen("data.array", 0)
    Else
    $temp1 = FileReadLine($fileData, $count - 1)
    $temp2 = StringSplit($temp1, ";")
    FileClose($fileData)
    If $temp2[1] > $Zeit Then
    FileDelete("data.array")
    EndIf
    $fileData = FileOpen("data.array", 1)
    If $fileData = -1 Then
    MsgBox(0, "Error", "Unable to open data.array.")
    ;Exit
    EndIf
    FileWriteLine($fileData, $Zeit & ";" & $windSpeed & ";" & $tempOut & ";" & $rain)
    FileClose($fileData)
    EndIf
    EndIf
    #endregion Array
    WEnd

    [/autoit]

    Downloadscript&Visio:

    Spoiler anzeigen
    [autoit]

    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Res_Fileversion=1.0
    #AutoIt3Wrapper_Res_LegalCopyright=Palmers Julian
    #AutoIt3Wrapper_Res_Language=3079
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #cs ----------------------------------------------------------------------------
    AutoIt Version: 3.3.8.1
    Author: Palmers Julian
    Script Function:
    Dartsellung der Wetterdaten mit 5 Menütiger Aktualisierungsrate.
    Dabei muss das Wert-File folgende Struktur haben:
    Aufnahmedatum
    Aufnahmezeit
    Druck
    Temperatur innen
    Feuchtigkeit innen
    Temperatur außen
    Feuchtigkeit außen
    Windgeschwindigkeit
    Windrichtung nummerisch
    Windrichtung in Worten
    Windchill
    Windböen
    Regenmenge
    #ce ----------------------------------------------------------------------------
    #include <GDIP.au3>
    #include <GUIConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <Misc.au3>
    #include <GDIPlus.au3>
    #include <ProgressConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <array.au3>
    #include <File.au3>
    $localfile1 = @TempDir&"\Out.text"
    $localfile2 = @TempDir&"\data.array"

    [/autoit] [autoit][/autoit] [autoit]

    Opt("GUIOnEventMode", 1)
    _HTTP()
    #Region Definitionen
    $sleeptime = 250 ;in ms
    $aktualisierungszeit = 0.25 ;in Minuten
    $iGUIColorBG = 0xFFEEEEEE
    $iGUIWidth = 520
    $iGUIHeight = 330
    $scaleUhr = 0.3
    $posxUhr = $iGUIWidth -75
    $posyUhr = 65
    $scaleTemp1 = 1.5
    $posxTemp1 = 60
    $posyTemp1 = 60*$scaleTemp1
    $scaleTemp2 = 1.5
    $posxTemp2 = 150
    $posyTemp2 = 60*$scaleTemp2
    $scaleTemp3 = 1.5
    $posxTemp3 = 240
    $posyTemp3 = 60*$scaleTemp3
    $posxWindR = 50
    $posyWindR = 230
    $scaleWindVy = 1.5
    $posxWindV = 150
    $posyWindV = 280
    $posxRain = 270
    $posyRain = 10
    #EndRegion Definitionen
    $hWnd = GUICreate("Wetter-Daten", $iGUIWidth, $iGUIHeight)
    GUISetState()
    _GDIPlus_Startup()
    $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hWnd)
    $hBitmap = _GDIPlus_BitmapCreateFromGraphics($iGUIWidth, $iGUIHeight, $hGraphic)
    $hBuffer = _GDIPlus_ImageGetGraphicsContext($hBitmap)
    _GDIPlus_GraphicsSetSmoothingMode($hBuffer, 2)
    $hGraphic2 = _GDIPlus_GraphicsCreateFromHWND($hWnd)
    $hBitmap2 = _GDIPlus_BitmapCreateFromGraphics($iGUIWidth, $iGUIHeight, $hGraphic2)
    $hBuffer2 = _GDIPlus_ImageGetGraphicsContext($hBitmap2)
    _GDIPlus_GraphicsSetSmoothingMode($hBuffer2, 2)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit")
    $f = $aktualisierungszeit*60*(1000/$sleeptime)+1
    Local $Windverlauf[300][4]
    While Sleep($sleeptime)
    #Region Wertabfrage
    $temperatur3 = 0.0
    #EndRegion Wertabfrage
    $hPenHour = _GDIPlus_PenCreate(0xFF000000, 8*$scaleUhr)
    $hPenMin = _GDIPlus_PenCreate(0xFF000000, 4*$scaleUhr)
    $hPenSec = _GDIPlus_PenCreate(0xFFFF0000, 2*$scaleUhr)
    $hTemperatur = _GDIPlus_PenCreate(0xFF0000FF, 8)
    $hWindrichtung = _GDIPlus_PenCreate(0xFFFF0000, 6)
    $hEndCap = _GDIPlus_ArrowCapCreate(3,3)
    _GDIPlus_PenSetCustomEndCap ($hWindrichtung, $hEndCap)
    $hWindVBG = _GDIPlus_BrushCreateSolid(0xFFFFFFFF)
    $hTempV = _GDIPlus_BrushCreateSolid(0xFFFF0000)
    $hTempVN = _GDIPlus_PenCreate(0xFFFF0000, 1)
    $hTempVNN = _GDIPlus_PenCreate(0xFFFF9999, 1)
    $hRainV = _GDIPlus_BrushCreateSolid(0xFF0000FF)
    $hRainVN = _GDIPlus_PenCreate(0xFF0000FF)
    $hWindV = _GDIPlus_BrushCreateSolid(0xFF00FF00)
    $hWindVN = _GDIPlus_PenCreate(0xFF00FF00)
    If $f > ($aktualisierungszeit*60*(1000/$sleeptime))Then
    _HTTP()
    $file = FileOpen("Out.text",0)
    $Datum = StringSplit(FileReadLine($file, 1),".") ;$Datum[1]=Jahr $Datum[2]=Monat $Datum[3]=Tag
    $Uhrzeit = StringSplit(FileReadLine($file, 2),":") ;$Uhrzeit[1]=Stunde $Uhrzeit[2]=Minute
    $temperatur1 = FileReadLine($file, 4)
    $temperatur2 = FileReadLine($file, 6)
    $windgeschwindigkeit = FileReadLine($file, 8)
    $windrichtung = FileReadLine($file, 9)
    $windrichtungW = FileReadLine($file, 10)
    $windgust = FileReadLine($file, 12)
    $rain = FileReadLine($file, 13)
    FileClose("Out.text")
    $count = _FileCountLines("data.array")
    $fileWind = FileOpen("data.array",0)
    For $i = 1 To $count Step +1
    $temp1 = StringSplit(FileReadLine($fileWind, $i),";")
    ;MsgBox(0,"Info", $temp1[1]&" "&$temp1[2])
    $Windverlauf[$i][0] = $temp1[1]
    $Windverlauf[$i][1] = $temp1[2]
    $Windverlauf[$i][2] = $temp1[3]
    $Windverlauf[$i][3] = $temp1[4]
    ;MsgBox(0,"Info", $Windverlauf[$i][0]&" "&$Windverlauf[$i][1])
    _GDIPlus_GraphicsFillEllipse($hBuffer2, $posxWindV+$Windverlauf[$i][0]*10.2, $posyWindV-2-$Windverlauf[$i][1]*$scaleWindVy, 2, 2,$hWindV) ;Windverlauf Graph
    _GDIPlus_GraphicsFillEllipse($hBuffer2, $posxWindV+$Windverlauf[$i][0]*10.2, $posyWindV-62-$Windverlauf[$i][2]*$scaleWindVy*2, 2, 2,$hTempV) ;Außentemperaturverlauf Graph
    _GDIPlus_GraphicsFillEllipse($hBuffer2, $posxWindV+$Windverlauf[$i][0]*10.2, $posyWindV-2-$Windverlauf[$i][3]*$scaleWindVy, 2, 2,$hRainV) ;Regenverlauf Graph
    Next
    FileClose("data.array")
    $f = 0
    EndIf
    $f = $f+1
    _GDIPlus_GraphicsClear($hBuffer, $iGUIColorBG)
    #Region Uhr
    _GDIPlus_GraphicsDrawString($hBuffer,@HOUR&":"&@MIN&":"&@SEC&" "&@MDAY&"."&@MON&"."&@YEAR,$iGUIWidth-140, 130)
    _GDIPlus_GraphicsDrawString($hBuffer,"Aufnahmezeitp.: "&$Uhrzeit[1]&":"&$Uhrzeit[2]&":00 "&$Datum[3]&"."&$Datum[2]&"."&$Datum[1],$iGUIWidth-240, 155)
    _GDIPlus_GraphicsDrawLineWithAngle($hBuffer, $posxUhr, $posyUhr, 0, 0, 0, -170*$scaleUhr, @SEC * 6, $hPenSec)
    _GDIPlus_GraphicsDrawLineWithAngle($hBuffer, $posxUhr, $posyUhr, 0, 0, 0, -190*$scaleUhr, @MIN * 6, $hPenMin)
    _GDIPlus_GraphicsDrawLineWithAngle($hBuffer, $posxUhr, $posyUhr, 0, 0, 0, -140*$scaleUhr, @HOUR * 30 + @MIN * 0.5, $hPenHour)
    _GDIPlus_GraphicsFillEllipse($hBuffer, $posxUhr - (10*$scaleUhr), $posyUhr - (10*$scaleUhr), 20*$scaleUhr, 20*$scaleUhr)
    For $i=360 To 0 Step -30
    _GDIPlus_GraphicsDrawLineWithAngle($hBuffer, $posxUhr, $posyUhr, 0, 180*$scaleUhr, 0, 165*$scaleUhr, $i)
    Next
    #EndRegion Uhr
    #Region Temp1
    For $i=-30 To 30 Step +10
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxTemp1-10,$posyTemp1+$i*$scaleTemp1,$posxTemp1+10,$posyTemp1+$i*$scaleTemp1) ;Scala
    Next
    For $i=35 To -25 Step -10
    _GDIPlus_GraphicsDrawString($hBuffer,$i-5&"°", $posxTemp1-40, $posyTemp1-$i*$scaleTemp1)
    Next
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxTemp1-15,$posyTemp1+0*$scaleTemp1,$posxTemp1+15,$posyTemp1+0*$scaleTemp1) ;Scala 0°C
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxTemp1,$posyTemp1,$posxTemp1,$posyTemp1-$temperatur1*$scaleTemp1,$hTemperatur)
    _GDIPlus_GraphicsDrawString($hBuffer,"In: "&$temperatur1&" °C", $posxTemp1-50, 10)
    #EndRegion Temp1
    #Region Temp2
    For $i=-30 To 30 Step +10
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxTemp2-10,$posyTemp2+$i*$scaleTemp2,$posxTemp2+10,$posyTemp2+$i*$scaleTemp2) ;Scala
    Next
    For $i=35 To -25 Step -10
    _GDIPlus_GraphicsDrawString($hBuffer,$i-5&"°", $posxTemp2-40, $posyTemp2-$i*$scaleTemp2)
    Next
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxTemp2-15,$posyTemp2+0*$scaleTemp2,$posxTemp2+15,$posyTemp2+0*$scaleTemp2) ;Scala 0°C
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxTemp2,$posyTemp2,$posxTemp2,$posyTemp2-$temperatur2*$scaleTemp2,$hTemperatur)
    _GDIPlus_GraphicsDrawString($hBuffer,"Out: "&$temperatur2&" °C", $posxTemp2-50, 10)
    #EndRegion Temp2
    #Region Temp3
    For $i=-30 To 30 Step +10
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxTemp3-10,$posyTemp3+$i*$scaleTemp3,$posxTemp3+10,$posyTemp3+$i*$scaleTemp3) ;Scala
    Next
    For $i=35 To -25 Step -10
    _GDIPlus_GraphicsDrawString($hBuffer,$i-5&"°", $posxTemp3-40, $posyTemp3-$i*$scaleTemp3)
    Next
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxTemp3-15,$posyTemp3+0*$scaleTemp3,$posxTemp3+15,$posyTemp3+0*$scaleTemp3) ;Scala 0°C
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxTemp3,$posyTemp3,$posxTemp3,$posyTemp3-$temperatur3*$scaleTemp3,$hTemperatur)
    _GDIPlus_GraphicsDrawString($hBuffer,"Temp3: "&$temperatur3, $posxTemp3-50, 10)
    #EndRegion Temp3
    #Region Regen
    _GDIPlus_GraphicsDrawString($hBuffer,"Regen: "&$rain&" mm", $posxRain, $posyRain)
    #EndRegion Regen
    #Region Windrichtung
    _GDIPlus_GraphicsDrawLineWithAngle($hBuffer, $posxWindR, $posyWindR, 0, -28, 0, 28, 360/16*$windrichtung, $hWindrichtung)
    For $i=360 To 0 Step -22.5
    _GDIPlus_GraphicsDrawLineWithAngle($hBuffer, $posxWindR, $posyWindR, 0, 30, 0, 28, $i)
    Next
    _GDIPlus_GraphicsDrawString($hBuffer,"N", $posxWindR-5, $posyWindR-45)
    _GDIPlus_GraphicsDrawString($hBuffer,"O", $posxWindR+30, $posyWindR-10)
    _GDIPlus_GraphicsDrawString($hBuffer,"S", $posxWindR-5, $posyWindR+30)
    _GDIPlus_GraphicsDrawString($hBuffer,"W", $posxWindR-45, $posyWindR-10)
    _GDIPlus_GraphicsDrawString($hBuffer,"Windrichtung: ", $posxWindR-40, 160)
    _GDIPlus_GraphicsDrawString($hBuffer,$windrichtungW, $posxWindR-15, $posyWindR-8)
    #EndRegion Windrichtung
    #Region Windgeschwindigkeit
    _GDIPlus_GraphicsDrawString($hBuffer,"Ø"&$windgeschwindigkeit&" km/h", $posxWindR-30, $posyWindR+50)
    _GDIPlus_GraphicsDrawString($hBuffer,"^ "&$windgust&" km/h", $posxWindR-30, $posyWindR+65)
    #EndRegion Windgeschwindigkeit
    #Region Windverlauf
    _GDIPlus_GraphicsFillRect($hBuffer, $posxWindV,175,$posxWindV+120,105,$hWindVBG) ;Hintergrund
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxWindV,$posyWindV+5,$posxWindV,$posyWindV-110,$hWindVN) ;Windachse
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxWindV+270,$posyWindV+5,$posxWindV+270,$posyWindV-110,$hTempVN) ;Temperaturachse
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxWindV+10,$posyWindV-40*$scaleWindVy,$posxWindV+270,$posyWindV-40*$scaleWindVy,$hTempVNN) ;Temperatur 0°C
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxWindV+320,$posyWindV+5,$posxWindV+320,$posyWindV-110,$hRainVN) ;Regenachse
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxWindV-5,$posyWindV,$posxWindV+275,$posyWindV) ;Zeitachse
    For $i=0 To 70 Step +10
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxWindV-5,$posyWindV-$i*$scaleWindVy,$posxWindV+2,$posyWindV-$i*$scaleWindVy,$hWindVN) ;Scala Wind
    _GDIPlus_GraphicsDrawString($hBuffer,$i, $posxWindV-25, $posyWindV-($i+5)*$scaleWindVy)
    Next
    _GDIPlus_GraphicsDrawString($hBuffer,"km/h", $posxWindV-25, $posyWindV-($i+5)*$scaleWindVy)
    For $i=$posxWindV To $posxWindV+270 Step +($posxWindV+270)/20.1
    _GDIPlus_GraphicsDrawLine($hBuffer,$i,$posyWindV-2,$i,$posyWindV+5) ;Scala Zeit
    Next
    ;-------------
    For $i=-20 To 10 Step +10
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxWindV+268,$posyWindV-($i+20)*$scaleWindVy*2,$posxWindV+275,$posyWindV-($i+20)*$scaleWindVy*2,$hTempVN) ;Scala Temperatur
    _GDIPlus_GraphicsDrawString($hBuffer,$i, $posxWindV+275, $posyWindV+5-($i+25)*$scaleWindVy*2)
    Next
    _GDIPlus_GraphicsDrawString($hBuffer,"°C", $posxWindV+290, $posyWindV-70*$scaleWindVy)
    ;-------------
    For $i=0 To 70 Step +10
    _GDIPlus_GraphicsDrawLine($hBuffer,$posxWindV+318,$posyWindV-($i)*$scaleWindVy,$posxWindV+325,$posyWindV-($i)*$scaleWindVy,$hRainVN) ;Scala Regen
    _GDIPlus_GraphicsDrawString($hBuffer,$i, $posxWindV+325, $posyWindV-($i+5)*$scaleWindVy)
    Next
    _GDIPlus_GraphicsDrawString($hBuffer,"mm", $posxWindV+340, $posyWindV-70*$scaleWindVy)
    ;-------------
    For $i=0 To 24 Step 2
    _GDIPlus_GraphicsDrawString($hBuffer,$i, ($posxWindV+$i*10.2)-5, $posyWindV+10)
    Next
    _GDIPlus_GraphicsDrawString($hBuffer,"Uhr", $posxWindV+260, $posyWindV+10)
    #EndRegion Windverlauf
    _GDIPlus_GraphicsDrawLine($hBuffer,0,150,$iGUIWidth,150)
    _GDIPlus_GraphicsDrawLine($hBuffer,$iGUIWidth-150,0,$iGUIWidth-150,150)
    _GDIPlus_GraphicsDrawString($hBuffer,"© Palmers Julian 2012", $iGUIWidth - 140, $iGUIHeight - 20)
    ;hier weitere Sachen einfügen
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hBitmap, 0, 0, $iGUIWidth, $iGUIHeight)
    _GDIPlus_GraphicsDrawImageRect($hGraphic2, $hBitmap2, 0, 0, $iGUIWidth, $iGUIHeight)
    WEnd
    Func _Exit()
    _GDIPlus_GraphicsDispose($hGraphic)
    _GDIPlus_GraphicsDispose($hBuffer)
    _GDIPlus_BitmapDispose($hBitmap)
    _GDIPlus_GraphicsDispose($hGraphic2)
    _GDIPlus_GraphicsDispose($hBuffer2)
    _GDIPlus_BitmapDispose($hBitmap2)
    _GDIPlus_PenDispose($hPenHour)
    _GDIPlus_PenDispose($hPenSec)
    _GDIPlus_PenDispose($hPenMin)
    _GDIPlus_Shutdown()
    Exit
    EndFunc ;==>_Exit
    Func _GDIPlus_GraphicsDrawLineWithAngle($hGraphics, $iX_Rotate, $iY_Rotate, $iX_Point1, $iY_Point1, $iX_Point2, $iY_Point2, $iAngle, $hPen = 0)
    _GDIPlus_GraphicsTranslateTransform($hGraphics, $iX_Rotate, $iY_Rotate)
    _GDIPlus_GraphicsRotateTransform($hGraphics, $iAngle)
    _GDIPlus_GraphicsDrawLine($hGraphics, $iX_Point1, $iY_Point1, $iX_Point2, $iY_Point2, $hPen)
    _GDIPlus_GraphicsResetTransform($hGraphics)
    EndFunc ;==>_GDIPlus_GraphicsDrawLineWithAngle
    Func _HTTP()
    $hDownload1 = InetGet("http://www.kitestuff.at/weather_station/Out.txt",$localfile1,1,0)
    InetClose($hDownload1)
    $hDownload2 = InetGet("http://www.kitestuff.at/weather_station/data.array",$localfile2,1,0)
    InetClose($hDownload2)
    EndFunc

    [/autoit]
  • InetGet Ausgabe in einer Wurst

    • palmers7
    • 14. Dezember 2012 um 09:36

    Diese Datei am Server wir zuerst mit Autoit erstellt:

    Spoiler anzeigen
    [autoit]

    FileWriteLine($fileOut, $date)
    FileWriteLine($fileOut, $time)
    FileWriteLine($fileOut, $plesure)
    FileWriteLine($fileOut, $tempIn)
    FileWriteLine($fileOut, $feuchteIn)
    FileWriteLine($fileOut, $tempOut)
    FileWriteLine($fileOut, $feuchteOut)
    FileWriteLine($fileOut, $windSpeed)
    FileWriteLine($fileOut, $windDirN)
    FileWriteLine($fileOut, $windDirW)
    FileWriteLine($fileOut, $windChill)
    FileWriteLine($fileOut, $windGust)
    FileWriteLine($fileOut, $rain)

    [/autoit]

    Muss ich hierbei vlt noch @CRLF anhängen?


    Edit: Nun das Erstellscript mit &@CRLF erweitert, doch selbes Ergebnis nach download!

  • InetGet Ausgabe in einer Wurst

    • palmers7
    • 14. Dezember 2012 um 09:25

    @SgtIgram habe ich soeben versucht, doch habe das slebe Problem (mit notepad.exe)

    Öffne ich diese heruntergeladenen Dateien mit Wordpad sind sie wunderbar lesbar.

    Meine Funktion

    Spoiler anzeigen
    [autoit]

    $file = FileOpen("Out.text",0)
    $Datum = StringSplit(FileReadLine($file, 1),".") ;$Datum[1]=Jahr $Datum[2]=Monat $Datum[3]=Tag
    $Uhrzeit = StringSplit(FileReadLine($file, 2),":") ;$Uhrzeit[1]=Stunde $Uhrzeit[2]=Minute
    $temperatur1 = FileReadLine($file, 4)
    $temperatur2 = FileReadLine($file, 6)
    $windgeschwindigkeit = FileReadLine($file,
    $windrichtung = FileReadLine($file, 9)
    $windrichtungW = FileReadLine($file, 10)
    $windgust = FileReadLine($file, 12)
    $rain = FileReadLine($file, 13)
    FileClose("Out.text")

    [/autoit]

    kann es trotzdem nicht richtig lesen

  • InetGet Ausgabe in einer Wurst

    • palmers7
    • 14. Dezember 2012 um 08:59

    Soll/Original:

    Spoiler anzeigen

    2012.12.14
    07:54
    1037.8
    22.8
    35.0
    -11.6
    99.0
    0.0
    3
    ONO
    20.0
    0.0
    0

    Ist/Download:

    Spoiler anzeigen

    2012.12.1407:541037.822.835.0-11.699.00.03ONO20.00.00

  • InetGet Ausgabe in einer Wurst

    • palmers7
    • 14. Dezember 2012 um 08:23

    Guten Tag,

    mein erster Post hier..

    Mein Problem beim InetGet Befehl ist, dass er der Inhalt der Zieldatei in einer Wurst geschrieben wird und die original Datei mit Enter in mehgrere Zeilen getrennt ist.

    [autoit]

    $hDownload1 = InetGet("http://www.kitestuff.at/weather_station/Out.txt",$localfile1,1,0)

    [/autoit]

    Ich danke euch jetzt schon und bitte um entschuldigung wenn ich blindes Huhn den Fehler nicht selber finde! 8|

    EDIT: eigenartigerweise funktioniert der zweite Befehl:

    [autoit]

    $hDownload2 = InetGet("http://www.kitestuff.at/weather_station/data.array",$localfile2,1,0)

    [/autoit]

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™