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. qon

Beiträge von qon

  • Zahlen lesen

    • qon
    • 1. Mai 2010 um 15:07

    Schau dir am besten auch nochmal die Syntax zu If-Abfragen an ;)

    Ich hab dirs einfach mal so geschrieben, wies funktionieren sollte, auch wenn dann der Lerneffekt wahrscheinlich wegbleibt ;)

    [autoit]

    While 1

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

    $IBus = ControlGetText("I-Bus Analyser", "", "[CLASS:RichTextWndClass; INSTANCE:4]")
    $result = StringInStr($IBus, "68 09 3B 23 62 30 54 45 53 54 3D")

    If $result <> 0 Then
    MsgBox(0,"","Gefunden!")
    Else
    MsgBox(0,"","Nicht gefunden :( :(")
    EndIf

    sleep(1000)

    WEnd

    [/autoit]

    Habs einfach mal in ne While gepackt, dass du testen kannst.

  • 3. Fremdsprache: Französisch relavant für Programmieren?

    • qon
    • 1. Mai 2010 um 14:58

    Ich hatte damals in der 7ten klasse franz gewählt, bin dann jedoch zur 2ten hälfte der 8ten klasse runter die realschule,
    und jetzt ärger ich mich, dass ich nich franz auf der realschule weiter gemacht hab, denn dort hab ich mit 0 aufwand wirklich gute leistungen erzielt..
    Und nun bin ich aufm bg und muss von der 11 bis zur 13 franz wieder machen, da ichs eben nicht bis zur 10. hatte ...
    4 stunden mehr in der woche kotzen an :( 38 stunden schule in der woche^^
    Wobei ich in franz momentan auf ca 11 pkt stehe, da ichs eben schonma hatte ;)

  • Zahlen lesen

    • qon
    • 1. Mai 2010 um 13:20
    Zitat von Detroit49

    ja stimmt sry schei...................
    0 ist ok 1 ist fehler
    omg meine schuld danke


    WIe kommst du auf den Gedanken???
    Lies dir einfach nochmal in aller Ruhe die Hilfe zu StringInStr durch!
    Und danach das Topic.[/quote]

  • Zahlen lesen

    • qon
    • 1. Mai 2010 um 13:20

    edit: sry doppelpost wollte editieren

  • Zahlen lesen

    • qon
    • 1. Mai 2010 um 13:15
    Zitat von Detroit49

    dann kommt nur eine zahl den gesammten codes
    leider
    und wenn ich sie ohne leer zeichen machen kommt immer 0

    Die Zahl, die du da siehst, ist die Position des Unterstrings in dem String, wüsstest du aber wenn du meinen Rat oben gefolgt hättest ;)
    Wenn das Ergebnis <> 0 ist, existiert der String.
    Einfache IF Abfrage

    Edit:
    Das ganze mit einer While Schleife und einem kleinen Sleep (gegen zu hohe Auslastung) kombinieren und das programm sollte machen, was du vorher wolltest ;)

  • Zahlen lesen

    • qon
    • 1. Mai 2010 um 13:12
    [autoit]

    $IBus = ControlGetText("I-Bus Analyser", "", "[CLASS:RichTextWndClass; INSTANCE:4]")

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

    $result = StringInStr($IBus, "68 09 3B 23 62 30 54 45 53 54 3D")
    MsgBox(0, "Suchergebnis:", $result)

    [/autoit]

    Veruchs mal so

  • Zahlen lesen

    • qon
    • 1. Mai 2010 um 13:06

    Ließ dir doch bitte einfach die Hilfe dazu durch, dann sollte man es verstehen :)
    Die deutsche Hilfe versteht sich..

  • Gleichgewicht halten (Spiel)

    • qon
    • 29. April 2010 um 20:34

    Du hast 246 Sekunden durchgehalten!

    Nene..
    ich schaffe so 60-70^^

  • Digitaluhr

    • qon
    • 29. April 2010 um 20:29
    Zitat von Oscar

    Danke, für das Lob. :)
    Und ja, bei mir ist die Uhr natürlich auch im Autostart. Die meisten meiner Programme schreibe ich ja in erster Linie für mich selbst. ;)
    Aber dadurch, dass Du diesen Thread mal wieder hervorgeholt hast, habe ich gleich mal gecheckt, ob das Script noch mit der neuesten AutoIt-Version funktioniert.
    Ja, es funktioniert noch. Muss ich also nichts anpassen. :)

    Hi,

    die .exe funktioniert bei mir natürlich auch noch einwandfrei, allerdings kann ich das script nicht selbst kompilen, es erscheinen mir folgende Errors:

    Spoiler anzeigen
    Code
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(563,24) : ERROR: _SoundStop() called with Const or expression on ByRef-param(s).
    				_SoundStop('Wecker')
    				~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(246,31) : REF: definition of _SoundStop().
    Func _SoundStop(ByRef $aSndID)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(566,52) : ERROR: _SoundOpen() called with wrong number of args.
    			$AlarmSound = _SoundOpen($AlarmSignal1, 'Wecker')
    			~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(56,24) : REF: definition of _SoundOpen().
    Func _SoundOpen($sFile)
    ~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(568,33) : ERROR: _SoundSeek() called with Const or expression on ByRef-param(s).
    				_SoundSeek('Wecker', 0, 0, 0)
    				~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(384,53) : REF: definition of _SoundSeek().
    Func _SoundSeek(ByRef $aSndID, $iHour, $iMin, $iSec)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(578,24) : ERROR: _SoundStop() called with Const or expression on ByRef-param(s).
    				_SoundStop('Wecker')
    				~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(246,31) : REF: definition of _SoundStop().
    Func _SoundStop(ByRef $aSndID)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(581,52) : ERROR: _SoundOpen() called with wrong number of args.
    			$AlarmSound = _SoundOpen($AlarmSignal2, 'Wecker')
    			~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(56,24) : REF: definition of _SoundOpen().
    Func _SoundOpen($sFile)
    ~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(583,33) : ERROR: _SoundSeek() called with Const or expression on ByRef-param(s).
    				_SoundSeek('Wecker', 0, 0, 0)
    				~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(384,53) : REF: definition of _SoundSeek().
    Func _SoundSeek(ByRef $aSndID, $iHour, $iMin, $iSec)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(591,22) : ERROR: _SoundStop() called with Const or expression on ByRef-param(s).
    		_SoundStop('Wecker')
    		~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(246,31) : REF: definition of _SoundStop().
    Func _SoundStop(ByRef $aSndID)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(786,24) : ERROR: _SoundStop() called with Const or expression on ByRef-param(s).
    				_SoundStop('Wecker')
    				~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(246,31) : REF: definition of _SoundStop().
    Func _SoundStop(ByRef $aSndID)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(795,25) : ERROR: _SoundStop() called with Const or expression on ByRef-param(s).
    					_SoundStop('Wecker')
    					~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(246,31) : REF: definition of _SoundStop().
    Func _SoundStop(ByRef $aSndID)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(798,53) : ERROR: _SoundOpen() called with wrong number of args.
    				$AlarmSound = _SoundOpen($AlarmSignal1, 'Wecker')
    				~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(56,24) : REF: definition of _SoundOpen().
    Func _SoundOpen($sFile)
    ~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(800,34) : ERROR: _SoundSeek() called with Const or expression on ByRef-param(s).
    					_SoundSeek('Wecker', 0, 0, 0)
    					~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(384,53) : REF: definition of _SoundSeek().
    Func _SoundSeek(ByRef $aSndID, $iHour, $iMin, $iSec)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(811,24) : ERROR: _SoundStop() called with Const or expression on ByRef-param(s).
    				_SoundStop('Wecker')
    				~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(246,31) : REF: definition of _SoundStop().
    Func _SoundStop(ByRef $aSndID)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(819,25) : ERROR: _SoundStop() called with Const or expression on ByRef-param(s).
    					_SoundStop('Wecker')
    					~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(246,31) : REF: definition of _SoundStop().
    Func _SoundStop(ByRef $aSndID)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(822,53) : ERROR: _SoundOpen() called with wrong number of args.
    				$AlarmSound = _SoundOpen($AlarmSignal2, 'Wecker')
    				~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(56,24) : REF: definition of _SoundOpen().
    Func _SoundOpen($sFile)
    ~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(824,34) : ERROR: _SoundSeek() called with Const or expression on ByRef-param(s).
    					_SoundSeek('Wecker', 0, 0, 0)
    					~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(384,53) : REF: definition of _SoundSeek().
    Func _SoundSeek(ByRef $aSndID, $iHour, $iMin, $iSec)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(837,22) : ERROR: _SoundStop() called with Const or expression on ByRef-param(s).
    		_SoundStop('Wecker')
    		~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(246,31) : REF: definition of _SoundStop().
    Func _SoundStop(ByRef $aSndID)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(894,22) : ERROR: _SoundStop() called with Const or expression on ByRef-param(s).
    		_SoundStop('Wecker')
    		~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(246,31) : REF: definition of _SoundStop().
    Func _SoundStop(ByRef $aSndID)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3(1086,22) : ERROR: _SoundStop() called with Const or expression on ByRef-param(s).
    		_SoundStop('Wecker')
    		~~~~~~~~~~~~~~~~~~~^
    D:\Programme\Autoit\Include\Sound.au3(246,31) : REF: definition of _SoundStop().
    Func _SoundStop(ByRef $aSndID)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\Max\Desktop\Digitaluhr\Digitaluhr.au3 - 18 error(s), 0 warning(s)
    Alles anzeigen

    Weisst du vielleicht, woran das liegt? ?(

  • Wie Video mit webcam aufnehmen???? [endgültig gelöst]

    • qon
    • 29. April 2010 um 20:14
    Zitat von shayn

    natürlich gibt es da eine Funktion:

    Fonktionsaufruf:

    Spoiler anzeigen
    [autoit]

    Func SnapShot()
    MsgBox(0,"Snapshot","press ok")
    _WebcamSnap($WebcamID, $snapfile1)


    EndFunc

    [/autoit]

    Und die Func:

    Spoiler anzeigen
    [autoit]

    Func _WebcamSnap($sId, $sFile)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_GRAB_FRAME_NOSTOP, "int", 0, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_FILE_SAVEDIBA, "int", 0, "str", $sFile)
    if @error Then
    return 0
    Else
    return 1
    EndIf
    EndFunc

    [/autoit]


    HA und HA

    Ist alles im Script drin, wer lesen kann ist klar im Vorteil.

    Wers nicht glaubt hier das Script:

    Spoiler anzeigen
    [autoit]

    $cam_xlength=100 ;Breite
    $cam_ylength=100 ;Höhe
    $Gridstep=50 ;Abstand zwischen den Pixeln zum Abtasten

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

    $sensitivity = 15 ;Empfindlichkeit

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

    $gui_x=130
    $gui_y=100

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

    HotKeySet("{END}", "Quit");
    HotKeySet("{INSERT}", "SnapShot")

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

    $snapfile1 = @ScriptDir & "\scrshot1.bmp"

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

    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.2.11.7 (beta)
    thnx to rysiora with his great example!
    Author: Ludocus

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

    Script Function:
    Webcam Udf

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

    #ce ----------------------------------------------------------------------------
    #include-once
    $WM_CAP_START = 0x400
    $WM_CAP_UNICODE_START = $WM_CAP_START +100
    $WM_CAP_PAL_SAVEA = $WM_CAP_START + 81
    $WM_CAP_PAL_SAVEW = $WM_CAP_UNICODE_START + 81
    $WM_CAP_UNICODE_END = $WM_CAP_PAL_SAVEW
    $WM_CAP_ABORT = $WM_CAP_START + 69
    $WM_CAP_DLG_VIDEOCOMPRESSION = $WM_CAP_START + 46
    $WM_CAP_DLG_VIDEODISPLAY = $WM_CAP_START + 43
    $WM_CAP_DLG_VIDEOFORMAT = $WM_CAP_START + 41
    $WM_CAP_DLG_VIDEOSOURCE = $WM_CAP_START + 42
    $WM_CAP_DRIVER_CONNECT = $WM_CAP_START + 10
    $WM_CAP_DRIVER_DISCONNECT = $WM_CAP_START + 11
    $WM_CAP_DRIVER_GET_CAPS = $WM_CAP_START + 14
    $WM_CAP_DRIVER_GET_NAMEA = $WM_CAP_START + 12
    $WM_CAP_DRIVER_GET_NAMEW = $WM_CAP_UNICODE_START + 12
    $WM_CAP_DRIVER_GET_VERSIONA = $WM_CAP_START + 13
    $WM_CAP_DRIVER_GET_VERSIONW = $WM_CAP_UNICODE_START + 13
    $WM_CAP_EDIT_COPY = $WM_CAP_START + 30
    $WM_CAP_END = $WM_CAP_UNICODE_END
    $WM_CAP_FILE_ALLOCATE = $WM_CAP_START + 22
    $WM_CAP_FILE_GET_CAPTURE_FILEA = $WM_CAP_START + 21
    $WM_CAP_FILE_GET_CAPTURE_FILEW = $WM_CAP_UNICODE_START + 21
    $WM_CAP_FILE_SAVEASA = $WM_CAP_START + 23
    $WM_CAP_FILE_SAVEASW = $WM_CAP_UNICODE_START + 23
    $WM_CAP_FILE_SAVEDIBA = $WM_CAP_START + 25
    $WM_CAP_FILE_SAVEDIBW = $WM_CAP_UNICODE_START + 25
    $WM_CAP_FILE_SET_CAPTURE_FILEA = $WM_CAP_START + 20
    $WM_CAP_FILE_SET_CAPTURE_FILEW = $WM_CAP_UNICODE_START + 20
    $WM_CAP_FILE_SET_INFOCHUNK = $WM_CAP_START + 24
    $WM_CAP_GET_AUDIOFORMAT = $WM_CAP_START + 36
    $WM_CAP_GET_CAPSTREAMPTR = $WM_CAP_START + 1
    $WM_CAP_GET_MCI_DEVICEA = $WM_CAP_START + 67
    $WM_CAP_GET_MCI_DEVICEW = $WM_CAP_UNICODE_START + 67
    $WM_CAP_GET_SEQUENCE_SETUP = $WM_CAP_START + 65
    $WM_CAP_GET_STATUS = $WM_CAP_START + 54
    $WM_CAP_GET_USER_DATA = $WM_CAP_START + 8
    $WM_CAP_GET_VIDEOFORMAT = $WM_CAP_START + 44
    $WM_CAP_GRAB_FRAME = $WM_CAP_START + 60
    $WM_CAP_GRAB_FRAME_NOSTOP = $WM_CAP_START + 61
    $WM_CAP_PAL_AUTOCREATE = $WM_CAP_START + 83
    $WM_CAP_PAL_MANUALCREATE = $WM_CAP_START + 84
    $WM_CAP_PAL_OPENA = $WM_CAP_START + 80
    $WM_CAP_PAL_OPENW = $WM_CAP_UNICODE_START + 80
    $WM_CAP_PAL_PASTE = $WM_CAP_START + 82
    $WM_CAP_SEQUENCE = $WM_CAP_START + 62
    $WM_CAP_SEQUENCE_NOFILE = $WM_CAP_START + 63
    $WM_CAP_SET_AUDIOFORMAT = $WM_CAP_START + 35
    $WM_CAP_SET_CALLBACK_CAPCONTROL = $WM_CAP_START + 85
    $WM_CAP_SET_CALLBACK_ERRORA = $WM_CAP_START + 2
    $WM_CAP_SET_CALLBACK_ERRORW = $WM_CAP_UNICODE_START + 2
    $WM_CAP_SET_CALLBACK_FRAME = $WM_CAP_START + 5
    $WM_CAP_SET_CALLBACK_STATUSA = $WM_CAP_START + 3
    $WM_CAP_SET_CALLBACK_STATUSW = $WM_CAP_UNICODE_START + 3
    $WM_CAP_SET_CALLBACK_VIDEOSTREAM = $WM_CAP_START + 6
    $WM_CAP_SET_CALLBACK_WAVESTREAM = $WM_CAP_START + 7
    $WM_CAP_SET_CALLBACK_YIELD = $WM_CAP_START + 4
    $WM_CAP_SET_MCI_DEVICEA = $WM_CAP_START + 66
    $WM_CAP_SET_MCI_DEVICEW = $WM_CAP_UNICODE_START + 66
    $WM_CAP_SET_OVERLAY = $WM_CAP_START + 51
    $WM_CAP_SET_PREVIEW = $WM_CAP_START + 50
    $WM_CAP_SET_PREVIEWRATE = $WM_CAP_START + 52
    $WM_CAP_SET_SCALE = $WM_CAP_START + 53
    $WM_CAP_SET_SCROLL = $WM_CAP_START + 55
    $WM_CAP_SET_SEQUENCE_SETUP = $WM_CAP_START + 64
    $WM_CAP_SET_USER_DATA = $WM_CAP_START + 9
    $WM_CAP_SET_VIDEOFORMAT = $WM_CAP_START + 45
    $WM_CAP_SINGLE_FRAME = $WM_CAP_START + 72
    $WM_CAP_SINGLE_FRAME_CLOSE = $WM_CAP_START + 71
    $WM_CAP_SINGLE_FRAME_OPEN = $WM_CAP_START + 70
    $WM_CAP_STOP = $WM_CAP_START + 68

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

    #include <GUIConstants.au3>
    #include <WindowsConstants.au3>

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

    $avi = DllOpen("avicap32.dll")
    $user = DllOpen("user32.dll")

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

    $gui_name="Minicam win32"

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

    $gui = GUICreate($gui_name,$gui_x,$gui_y)

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

    $pic = GUICtrlCreatePic (@ScriptDir & "\grün.jpg", 100, 0, 30, 100)
    GUICtrlSetState(-1, $GUI_DISABLE)

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

    Dim $red[$cam_xlength/$Gridstep*$cam_ylength/$Gridstep+1]
    Dim $green[$cam_xlength/$Gridstep*$cam_ylength/$Gridstep+1]
    Dim $blue[$cam_xlength/$Gridstep*$cam_ylength/$Gridstep+1]

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

    $WebcamID = _WebcamOpen($gui, 0, 0, $cam_xlength, $cam_ylength)

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

    GUISetState(@SW_SHOW)

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

    $changeold=0

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

    While 1

    $pos=WinGetPos ( $gui_name ) ;Farbwerte der Cam werden direkt vom Screen ausgelesen
    $xpos=$pos[0] ;dazu wird das direkt angezeigte Bild
    $ypos=$pos[1] ;abgefragt
    $count=0

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

    $change=0
    $tempchange=0
    $changemax=0

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

    For $x_scan = 1 to $cam_xlength Step $Gridstep
    For $y_scan = 1 to $cam_ylength Step $Gridstep

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

    $count=$count+1 ;Counter für abgetastete Pixel

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

    $farbe=PixelGetColor(2+$x_scan+$xpos,21+$y_scan+$ypos)
    $redc=BitAND($farbe, 0xFF0000) / 16^4
    $greenc=BitAND($farbe, 0x00FF00) / 16^2
    $bluec=BitAND($farbe, 0x0000FF)

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

    $change_red=$red[$count]-$redc
    $change_green=$green[$count]-$greenc
    $change_blue=$blue[$count]-$bluec

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

    $tempchange=Abs($change_red)+Abs($change_green)+Abs($change_blue)

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

    $change+=$tempchange
    If $changemax<$tempchange Then $changemax=$tempchange

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

    $red[$count]=$redc
    $green[$count]=$greenc
    $blue[$count]=$bluec

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

    $msg = GUIGetMsg()
    If $msg = $GUI_EVENT_CLOSE Then
    _WebcamClose($WebcamID)
    Exit
    EndIf
    Next
    Next

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

    $change=$change/$count

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

    $diff=abs($change-$changeold)

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

    ;Hier können Anweisungen kommen wie "if $diff>50 then snapshot" folgen
    ;
    ;z.B.:

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

    Select
    Case $diff <$sensitivity
    GUICtrlSetImage($pic, @scriptdir&"\grün.jpg")
    Case $diff > $sensitivity AND $diff<=$sensitivity*2
    GUICtrlSetImage($pic, @scriptdir&"\gelb.jpg")
    SoundPlay(@scriptdir&"\gelb.wav")
    Case $diff > 2*$sensitivity AND $diff<=$sensitivity*4
    GUICtrlSetImage($pic, @scriptdir&"\rotgelb.jpg")
    SoundPlay(@scriptdir&"\rotgelb.wav")
    Case $diff > 4*$sensitivity
    GUICtrlSetImage($pic, @scriptdir&"\rot.jpg")
    SoundPlay(@scriptdir&"\rot.wav")
    EndSelect

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

    $changeold=$change
    Sleep(100)
    WEnd

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

    Func SnapShot()
    MsgBox(0,"Snapshot","press ok")
    _WebcamSnap($WebcamID, $snapfile1)


    EndFunc

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

    Func Quit()
    _WebcamClose($WebcamID)
    Exit
    EndFunc

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

    ;===============================================================================
    ;
    ; Description: Open's a webcam preview screen in your gui
    ; Syntax: _WebcamOpen($sHwnd, $sLeft, $sTop, $sWidth, $sHeight)
    ; Parameter(s): $sHwnd - The handle of the gui
    ; $sLeft - Left coord. of the preview screen
    ; $sTop - Top coord. of the preview screen
    ; $sWidth - Width of the preview screen
    ; $sHeight - Height of the preview screen
    ; Requirement(s): A webcam
    ; Return Value(s): On Success - Returns id needed for other controls
    ; On Failure - Returns -1
    ; Author(s): Ludocus
    ; Note(s): None
    ;
    ;===============================================================================
    func _WebcamOpen($sHwnd, $sLeft, $sTop, $sWidth, $sHeight)
    $cap = DllCall($avi, "int", "capCreateCaptureWindow", "str", "cap", "int", BitOR($WS_CHILD,$WS_VISIBLE), "int", $sLeft, "int", $sTop, "int", $sWidth, "int", $sHeight, "hwnd", $sHwnd, "int", 1)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_DRIVER_CONNECT, "int", 0, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_SCALE, "int", 1, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_OVERLAY, "int", 1, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_PREVIEW, "int", 1, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_PREVIEWRATE, "int", 1, "int", 0)
    if @error then return -1
    return $cap[0]
    EndFunc

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

    ;===============================================================================
    ;
    ; Description: Creates a Snapshot from a webcam
    ; Syntax: _WebcamSnap($sId, $sFile)
    ; Parameter(s): $sId - Id (returned from _WebcamOpen)
    ; $sFile - File to save the snapshot to (*.bmp)
    ; Requirement(s): A webcam
    ; Return Value(s): On Success - Returns 1
    ; On Failure - Returns 0
    ; Author(s): Ludocus
    ; Note(s): None
    ;
    ;===============================================================================
    Func _WebcamSnap($sId, $sFile)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_GRAB_FRAME_NOSTOP, "int", 0, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_FILE_SAVEDIBA, "int", 0, "str", $sFile)
    if @error Then
    return 0
    Else
    return 1
    EndIf
    EndFunc

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

    ;===============================================================================
    ;
    ; Description: Closes the preview screen created with _WebcamOpen
    ; Syntax: _WebcamClose($sId)
    ; Parameter(s): $sId - Id (returned from _WebcamOpen)
    ; Requirement(s): A webcam
    ; Return Value(s): On Success - Returns 1
    ; On Failure - Returns 0
    ; Author(s): Ludocus
    ; Note(s): None
    ;
    ;===============================================================================
    Func _WebcamClose($sId)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_END, "int", 0, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_DRIVER_DISCONNECT, "int", 0, "int", 0)
    DllClose($user)
    if @error Then
    return 0
    Else
    return 1
    EndIf
    EndFunc

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

    ;===============================================================================
    ;
    ; Description: Starts recording the webcam to a file
    ; Syntax: _WebcamRecordStart($sFile, $sId)
    ; Parameter(s): $sId - Id (returned from _WebcamOpen)
    ; $sFile - File to save the movie to (*.avi)
    ; Requirement(s): A webcam
    ; Return Value(s): On Success - Returns 1
    ; On Failure - Returns 0
    ; Author(s): Ludocus
    ; Note(s): Stop recording by: _WebcamRecordStop($Id)
    ;
    ;===============================================================================
    Func _WebcamRecordStart($sFile, $sId)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_FILE_SET_CAPTURE_FILEA, "int", 0, "str", $sFile)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_SEQUENCE, "int", 0, "int", 0)
    if @error Then
    return 0
    Else
    return 1
    EndIf

    EndFunc

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

    ;===============================================================================
    ;
    ; Description: Stops recording.
    ; Syntax: _WebcamRecordStop($sId)
    ; Parameter(s): $sId - Id (returned from _WebcamOpen)
    ; Requirement(s): A webcam
    ; Return Value(s): On Success - Returns 1
    ; On Failure - Returns 0
    ; Author(s): Ludocus
    ; Note(s): None
    ;
    ;===============================================================================
    Func _WebcamRecordStop($sId)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_STOP, "int", 0, "int", 0)
    if @error Then
    return 0
    Else
    return 1
    EndIf
    EndFunc ;==> _WebcamRecordStop

    [/autoit]
    Alles anzeigen

    Und warum machst du es dann nicht gleich so?
    Mit dem "Er" in meinem Satz warst du gemeint........

    Edit: um es für dich aufzuklären, wie es gemeint war:
    Du weisst nichtmal, was in deinem eigenen Programm drinsteht, sonst hättest du garnicht erst diesen Thread aufgemacht, und es direkt so gemacht, wie du es oben beschrieben hast.

    Ich kann echt nicht mehr, du bist so unbeschreiblich ****.. denk dir was aus, wies dir gefällt.

    Zitat von shayn

    Ich bin ein wenig klüger als du. Du willst immer noch bilder zu einem Film zusammenfügen, aba was ist mit der Func _WebcamRecordStart($sFile, $sId) ??

    Ist auch ein sehr starker post.
    Naja genug dazu, ich halt mich ab jetzt raus ;)

  • Wie Video mit webcam aufnehmen???? [endgültig gelöst]

    • qon
    • 29. April 2010 um 17:39
    Zitat von Magnus

    In der von dir Verwendeten UDF gibt es eine Funktion dafür.

    Er kennt sein eigenes Programm ja beachtlich gut..

  • String beginnt mit

    • qon
    • 28. April 2010 um 20:42

    in nuts erstem post is das script ;)
    un das funktioniert nicht, wie gewünscht..
    das zweite war von mir, mit einer kleinen aber entscheidenden änderung, nämlich statt StringTrimLeft einfach StringLeft, und -1
    ist nun aber auch egal

  • String beginnt mit

    • qon
    • 28. April 2010 um 20:17
    Zitat von nuts

    Hö? meins stimmt so würd ich sagen. ?(

    True
    C0047D33

    das kommt bei deinem raus, merkste nix? :)
    wennde zB hinter das C noch 5 andere buchstaben setzt, wirds vll klarer

  • String beginnt mit

    • qon
    • 28. April 2010 um 19:01
    Zitat von nuts

    Ist richtig - Thema verfehlt :D
    Habs oben geändert.

    Deins ist immernoch falsch O_o ;)
    Ist doch auch logisch.
    Wenn du mit StringTrim arbeiten willst, musste ja wenn schon (Gesamtlänge-längerichtiges) von rechts aus abschneiden, einfacher ists aber einfach das richtige von links aus zu nehmen.

  • String beginnt mit

    • qon
    • 28. April 2010 um 18:52
    Zitat von nuts

    So dann oder?

    Spoiler anzeigen
    [autoit]


    $s1="C0047D333.test.com"

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

    ConsoleWrite(_unkreativ($s1, "C") & @CRLF)
    ConsoleWrite(_unkreativ2($s1, ".") & @CRLF)

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

    Func _unkreativ($sstring, $ssearch)
    If StringLeft($sstring, 1) = $ssearch then
    return true
    else
    Return false
    endif
    endfunc

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

    func _unkreativ2($sstring, $ssearch)
    return StringTrimLeft($sstring, StringInStr($sstring, $ssearch))
    endfunc

    [/autoit]
    Alles anzeigen

    Wenn schon so, deins liefert ja irgendwie das falsche :D

    [autoit]

    $s1="Chh0047D333.test.com"

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

    ConsoleWrite(_unkreativ($s1, "C") & @CRLF)
    ConsoleWrite(_unkreativ2($s1, ".") & @CRLF)

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

    Func _unkreativ($sstring, $ssearch)
    If StringLeft($sstring, 1) = $ssearch then
    return true
    else
    Return false
    endif
    endfunc

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

    func _unkreativ2($sstring, $ssearch)
    return StringLeft($sstring, StringInStr($sstring, $ssearch)-1)
    endfunc

    [/autoit]
  • String beginnt mit

    • qon
    • 28. April 2010 um 17:53
    Zitat von subzero007

    Stringleft das war das stichwort. Danke

    Aber alles nach dem ersten Punkt löschen geht leider nicht da die zeichen unterschiedlich sind und stringbetween ist ja auch alles dynamisch und unterschiedlich?

    Hat jemand einen regexp für mich Wie ich alles nach dem ersten Punkt löschen kann?

    WIe ich schon sagte, nochmal mit StringSplit nach . splitten, dann ist im entstehenden array das erste element ([1]) das gefragte

  • String beginnt mit

    • qon
    • 28. April 2010 um 17:47

    Mit StringRegExp gehts sicher auch irgendwie,
    aber so würd ichs jetzt spontan machne:
    aber erst mit StringSplit nach @CRLF splitten (um alle Zeilen in ein Array zu kriegen).
    Dann mit einer For-Schleife die Zeilen durchlaufen,
    und mit StringLeft() arbeiten.
    Wenn die besagte Zeile mit C anfängt, könnte man nochma Splitten nach einem Punkt, oder mit _StringBetween arbeiten

  • 3. Fremdsprache: Französisch relavant für Programmieren?

    • qon
    • 28. April 2010 um 17:39

    Wenn du keine Fremdsprache dazuwählen musst, würd ich das auch auf keinen Fall tun.. ;)

  • Datum überprüfen/abfragen

    • qon
    • 28. April 2010 um 17:08
    Zitat von Rubberducky

    Ich würd für das Script aber das Datum übers Internet abfragen gehen.

    Sonst einfach Systemuhr zurückstellen :)

    Dazu hatte ich mal aus Spass ne Funktion geschrieben, welche sich die Zeit von Autoit.de holt:


    Spoiler anzeigen
    [autoit]


    #include <inet.au3>
    #include <array.au3>

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

    ;===============================================================================
    ;
    ; Function Name: _inetgetau3time()
    ; Langue: German
    ; Description: Returns an array, [0] = Time; [1] = Day in Month. Month, Year; [2] = Day in week ( for example Samstag )
    ; Requirement(s): <inet.au3>
    ; Return Value(s): On Success - Returns the random sign(s)
    ; On Failure - Returns 0 and sets @error
    ; 1 = Homepage offline
    ; 2 = Other Date/Time format on homepage
    ; Author(s): qon
    ;
    ;===============================================================================

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

    func _inetgetau3time()
    $sSource = _inetgetsource("http://www.autoit.de/index.php?page=News")
    IF @error Then
    Seterror(1)
    Return 0
    EndIf
    $sSplit = Stringsplit($sSource,'<img src="wcf/icon/dateS.png" alt="" /> <span>',1)
    IF @error Then
    Seterror(2)
    Return 0
    EndIf
    $sCut = Stringleft($sSplit[2],70)
    $sSplit2 = Stringsplit($sCut,",",1)
    $sTime = Stringstripws($sSplit2[3],1)
    $sSplit3 = Stringsplit($sTime,"UTC",1)

    Local $aArray[3]
    $aArray[0] = Stringstripws($sSplit3[1],3)
    $aArray[2] = Stringstripws($sSplit2[1],3)
    $aArray[1] = Stringstripws($sSplit2[2],3)

    Return $aArray
    EndFunc

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

    $bla = _inetgetau3time()

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

    _ArrayDisplay($bla)

    [/autoit]
  • Datum überprüfen/abfragen

    • qon
    • 28. April 2010 um 16:02

    wie wärs mit _DateDiff ? :)

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™