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

Beiträge von Penner

  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 11. Juni 2019 um 01:02

    Array ist hier.
    MFG Penner

    Dateien

    Unbenannt.jpg 61,12 kB – 9 Downloads
  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 11. Juni 2019 um 00:59

    Zu deinen Anmerkungen:

    Zitat von Bitnugger

    Die Funktionen ts_start() / ts_stop() ergeben für mich keinen Sinn - du erzeugst dort eine GUI, sendest "{f9}" bzw. "{f8}" an diese, und killst sie dann aber sofort... was soll das Send bewirken?

    Das send F8 / F9 sind beim Teamspeak globale hotkeys die ich zum aufnahme starten/stoppen eingerichtet habe.

    Mit den gui's habe ich nochmal geschaut die machen tatsächlich keinen unterschied. (können somit weg.)

    Ts 3 muss damit das script funktioniert im hintergrund sein (offendes aber nicht markiertes fenster).

    Wenn ich ein gui erstelle ändert das bei mir nicht das das Ts 3 Fenster im vordergrund ist.
    Beim handle / id problem hast du vermutlich recht ist ne schlechte angewohnheit meinerseits.

    MFG Penner

  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 11. Juni 2019 um 00:45

    So ich habe das Script mal getestet und wie bei meinen vorherigen test wird Send vom Ts 3 Clienten ignoriert. Alles was das Script bei mir macht ist Teamspeak in den vordergrund rücken. Aufnahme Startet und stoppt nicht.
    MFG Penner

  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 10. Juni 2019 um 13:18

    Was hast du eingebunden/definiert damit das geht? Dein Code lässt sich bei mir nicht Compelieren.

    Und ja Ts 3 war bei dem versuch geöffnet.

    Code
    >"D:\Autoit\AutoIt3\SciTE\..\autoit3.exe" /ErrorStdOut "C:\Users\Penner\Desktop\AutoIt v3 Script (neu).au3"    
    "C:\Users\Penner\Desktop\AutoIt v3 Script (neu).au3" (5) : ==> Variable used without being declared.:
    If $aWinList[0][0] Then $hTS3 = $aWinList[$i][1]
    If $aWinList[0][0] Then $hTS3 = $aWinList[^ ERROR
    >Exit code: 1    Time: 0.04838
  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 9. Juni 2019 um 12:00

    Ich habe mir daraus ne fernbedienung gebraten um die aufnahme von einem anderen rechner starten/Beenden zu können.

    Das programm ist kurz dreckig und hat keine fehlerbehandlung.

    Der Client/Fernsteuernde Pc:

    Code
    #include <MsgBoxConstants.au3>
    
    load()
    func load()
    local $serverip="xxx.xxx.xxx.xxx",$port=300 ;server ip einfügen
    Global $socket
    TCPStartup()
    Do
    $socket=TCPConnect ($Serverip,$port)
    sleep(100)
    Until $socket<>-1 and $socket<>0
    main()
    EndFunc
    
    func main()
    local $x=1
    $F1 = GUICreate("F1", 478, 94,-1,-1)
    $B1 = GUICtrlCreateButton("Aufnahme Starten", 8, 8, 169, 73)
    GUICtrlSetFont(-1, 12, 400, 0, "MS Reference Sans Serif")
    $B2 = GUICtrlCreateButton("Aufnahme Stoppen", 184, 8, 169, 73)
    GUICtrlSetFont(-1, 12, 400, 0, "MS Reference Sans Serif")
    $B3 = GUICtrlCreateButton("Exit", 360, 8, 105, 73)
    GUICtrlSetFont(-1, 12, 400, 0, "MS Reference Sans Serif")
    GUISetState(@SW_SHOW)
    Do
    $msg = GUIGetMsg()
    if $msg=$b3 Then
    $x=0
    EndIf
    if $msg=$b2 Then
    TCPSend($socket,"stop")
    EndIf
    if $msg=$b1 Then
    TCPSend($socket,"start")
    EndIf
    until $x<>1
    TCPSend($socket,"end")
    GUIDelete($F1)
    sleep (500)
    TCPShutdown()
    Exit
    EndFunc
    Alles anzeigen

    Der Server/Aufnehmende Pc:

    Code
    load()
    Func load()
    global $IP = @IPAddress1,$port=300
    TCPStartup()
    main()
    EndFunc
    
    func main()
    local $x=1,$lsocket="",$socket="",$rec=""
    $lsocket=TCPListen($IP,$port)
    Do
    $socket=TCPAccept($lSocket)
    until $socket<>-1
    Do
    $rec=TCPRecv($socket,100)
    if $rec="start" Then
    send ("{f8}")
    $rec=""
    EndIf
    if $rec="stop" Then
    send ("{f9}")
    $rec=""
    EndIf
    if $rec="end" Then
    $x=0
    EndIf
    $rec=""
    Until $x<>1 or @error
    TCPShutdown()
    Load()
    EndFunc
    Alles anzeigen
  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 9. Juni 2019 um 11:53

    Moment... "Avidemux" ?
    Ich nehme direkt mit ts 3 auf damit es sichtbar ist und so jeder weiß das aufgenommen wird. Ich möchte das nicht über 3 software lösen.

    Das Fenster in den vordergrund haben wir auch geschafft aber ich konnte das ts fenster an sich nicht steuern.

    das war solange blokiert bis ich ts 3 geschlossen habe dann gingen die scripte. Ich habe das jetzt über globale Hotkeys Gelöst die funktionieren solange das Ts 3 fenster nicht aktiv ist.

  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 8. Juni 2019 um 21:00

    Beim ts 3 Clienten bei mir nicht. Entweder hast du eine andere Biblothek oder Ts 3 hat nen parr besonderheiten was die ansteuerung angeht.

  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 8. Juni 2019 um 12:36

    Interessant... Das funktioniert ;D

    Aber nur solange Ts 3 NICHT im vordergrund ist

    Vielen dank für eure bemühungen das kann ich nutzen.

    MFG Penner

  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 8. Juni 2019 um 12:25

    Ich habe dich schon verstanden. Habe ich versucht -> 4 post Programmcode

  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 8. Juni 2019 um 12:20

    Hotkey senden geht nicht wird von ts 3 blokiert. War auch mein erster ansatz.

  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 8. Juni 2019 um 12:17

    So ich habe das heute mal zusammengeschraubt und siehe da der Ts 3 Client BLOKIERT sämtliche simulierten befehle. Alle mouseclicks funkionieren nicht solange der Client offen ist.

    Ist ts 3 Geschlossen läuft das Programm wunderbar.

    Jetzt da nichtmal die "Holzhammermethode" greift weiß ich nicht wie man das noch realisieren könnte.

    MFG Penner

  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 7. Juni 2019 um 15:26

    ich habe da was gefunden mit dem man solche fenster steuern kann. Leider verstehe ich nicht ganz was da läuft.

    Wenn mir jemand zeigt wie ich damit tastenschläge an den ts 3 Clienten simulieren kann währe mir sehr geholfen.

    MFG Penner

    Und danke schnmal für die bisherigen mühen.

    https://www.autoitscript.com/forum/topic/15…e-chrome-ff-ie/

  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 7. Juni 2019 um 11:54

    Leider ist es nicht so einfach. Der Ts 3 client frisst die eingaben ohne etwas zu tun. Warum auch immer der Ts3 client erkennt die eingeben einfach nicht...

  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 7. Juni 2019 um 11:21

    Dankeschon :) Immerhin das aktivieren klappt jetzt ;)

  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 7. Juni 2019 um 11:17
    Code
    ts_start()
    Func ts_start()
    WinActivate ("TeamSpeak")
    sleep(5000)
    send("{SHIFTDOWN}")
    send("{CTRLDOWN}")
    Send("R")
    send("{SHIFTUP}")
    send("{CTRLUP}")
    Sleep(2000)
    send("{ENTER}")
    EndFunc
    
    
    Func ts_stop()
    WinActivate ("TeamSpeak")
    send("{SHIFTDOWN}")
    send("{CTRLDOWN}")
    Send("T")
    send("{SHIFTUP}")
    send("{CTRLUP}")
    EndFunc
    Alles anzeigen

    Habs mit winactivate und ohne probiert. Mit per hand in den vordergrund geholtem fenster gings auch nicht.

  • Ts 3 Aufnahme Starten / Stoppen

    • Penner
    • 7. Juni 2019 um 00:28

    Die idee ist folgende...
    Ich möchte auf meinem Ts 3 server mit einem extra dafür laufenden Ts 3 Client alles in einem Ts 3 Channel aufzeichnen.
    Da die Runde weiß das aufgezeichnet wird und ich das nicht verheimlichen möchte Läuft das aktuell schon über die Ts 3 Client eigene aufnahmefunktion.

    Zur frage: Wie kann ich den aufnahmestart/ das aufnahmeende automatisch auslösen?

    Ich habe es versucht indem ich die entsprechenden Tastenkombinationen gesendet habe aber das hat den Ts 3 Clienten weder im hintergrund noch im vordergrund beeindruckt.

    Jemand eine idee wie man das anstellen könnte?

    MFG Penner ;)

  • Excel (Office 365) – löscht die Zwischenablage (Clipput)

    • Penner
    • 1. Januar 2019 um 16:54

    Ich kenne deinen Code nicht und warum excel eine zwischenablege löscht aknn ich dir auch nicht sagen.

    Aber mal nen Tipp: Wenn du irgentwoher werte besorgst kann autoit die direkt in excel einfügen.
    Autoit besitzt eine excel schnittstelle. :)
    https://www.autoitscript.com/wiki/Excel_UDF
    MFG Penner

  • Autoit Automatische variablendefinition funktioniert nicht mehr

    • Penner
    • 31. Dezember 2018 um 19:36

    Habs gefunden, selber doof.
    #include <ComUDF.au3>

    erste zeile

    Opt("MustDeclareVars", 1)

    aber danke für den hinweiß wonach ich suchen muss :)

    MFG Penner

    [Closed]

  • Autoit Automatische variablendefinition funktioniert nicht mehr

    • Penner
    • 31. Dezember 2018 um 17:53

    Danke für den Tipp aber nein das ist es nicht.

    ich habe es mal mit Opt("MustDeclareVars", 0) versucht hat aber auch nicht geklappt.

    Diese selbstgeschriebene biblothek scheint das problem zu verursachen.

    C
    #include-once
    #include <CommInterface.au3>
    #include <ComUDF.au3>
    #include <relaisdll.au3> ; Eigene Lib
    
    Func find_Relais()
    local $er
    $er=Find_relais1()
    if $er="0" Then
    ;$er=find_relais2()
    ;if $er=1 Then
    ;Return 1
    ;relaistyp=2
    ;Else
    return 0
    ;EndIf
    Else
    $relaystyp=1
    return 1
    EndIf
    EndFunc
    
    Func relais_on()
    if $hall<>0 Then
    if $relaystyp=1 Then
    Return relays1_on()
    EndIf
    if $relaystyp=2 then
    Return relays2_on()
    EndIf
    Else
    return 0
    EndIf
    EndFunc
    
    func relais_off()
    if $hall<>0 Then
    if $relaystyp=1 Then
    relays1_off()
    EndIf
    if $relaystyp=2 then
    relais2_off()
    EndIf
    EndIf
    EndFunc
    
    Func relais_end()
    if $hall<>0 Then
    if $relaystyp=1 Then
    if $usbport<>"0" Then
    _CommAPI_ClosePort($usbport)
    EndIf
    EndIf
    if $relaystyp=2 then
    _ComClosePort($usbport)
    FileDelete(@ScriptDir&"\"&"CP210xRuntime.dll")
    EndIf
    EndIf
    EndFunc
    
    Func Find_Relais1()
    local $p1=0,$p2=256,$p3=0,$p4=0
    if $usbport=0 Then
    Do
    $p1=$p1+1
    $p4 = _CommAPI_OpenCOMPort($p1, 19200, 0, 8, 1)
    If @error Then
    Else
    $p3=1
    EndIf
    if $p2=$p1 Then
    $p3=-1
    EndIf
    until $p3<>0
    if $p3=-1 Then
    return 0
    debug("Error Relais nicht gefunden")
    Else
    $usbport=$p4
    return 1
    debug("Relais erkannt")
    EndIf
    EndIf
    EndFunc
    
    Func Relais1_off();Nicht reichelt
    if $hall=1 or $hall=2 Then
    _CommAPI_TransmitString($usbport, "relay on 0" & @CR)
    sleep (600)
    _CommAPI_TransmitString($usbport, "relay off 0" & @CR)
    EndIf
    EndFunc
    
    Func Relais1_on();nicht reichelt
    if $hall=1 Then
    _CommAPI_TransmitString($usbport, "relay on 0" & @CR)
    sleep (600)
    _CommAPI_TransmitString($usbport, "relay off 0" & @CR)
    return 0
    EndIf
    if $hall=2 Then
    $bpms=IniRead ($bpsini,"bpms",$mp3id,500)
    _CommAPI_TransmitString($usbport, "relay on 0" & @CR)
    Sleep (600)
    _CommAPI_TransmitString($usbport, "relay off 0" & @CR)
    $c2=0
    Do
    $c2=$c2+1
    _CommAPI_TransmitString($usbport, "relay on 1" & @CR)
    Sleep (100)
    _CommAPI_TransmitString($usbport, "relay off 1" & @CR)
    $sle=$bpms-100
    Sleep($sle)
    Until $c2=3
    return (600+($bpms*3))
    EndIf
    EndFunc
    
    Func Find_relais2()
    ;$usbport=_ComOpenPort("COM3 baud=57600 parity=n data=8 stop=1")
    ;CP210xRuntime.dll
    EndFunc
    
    Func Relais2_off()
    local $dllh=DllOpen(@ScriptDir&"\"&"CP210xRuntime.dll")
    if @error Then
    debug("Error Dll open")
    debug(@error)
    say("Error Relais")
    EndIf
    if $hall=1 or $hall=2 Then
    DllCall ($dllh,"INT","CP210xRT_WriteLatch","HANDLE",$usbport,"WORD","0x0001","WORD","0x0000")
    sleep(600)
    DllCall ($dllh,"INT","CP210xRT_WriteLatch","HANDLE",$usbport,"WORD","0x0001","WORD","0x0001")
    EndIf
    DllClose($dllh)
    EndFunc
    
    Func Relais2_on()
    local $dllh=DllOpen(@ScriptDir&"\"&"CP210xRuntime.dll")
    if @error Then
    debug("Error Dll open")
    debug(@error)
    say("Error Relais")
    EndIf
    if $hall=1 Then
    DllCall ($dllh,"INT","CP210xRT_WriteLatch","HANDLE",$usbport,"WORD","0x0001","WORD","0x0000")
    sleep (600)
    DllCall ($dllh,"INT","CP210xRT_WriteLatch","HANDLE",$usbport,"WORD","0x0001","WORD","0x0001")
    return 0
    EndIf
    if $hall=2 Then
    $bpms=IniRead ($bpsini,"bpms",$mp3id,500)
    DllCall ($dllh,"INT","CP210xRT_WriteLatch","HANDLE",$usbport,"WORD","0x0001","WORD","0x0000")
    sleep (600)
    DllCall ($dllh,"INT","CP210xRT_WriteLatch","HANDLE",$usbport,"WORD","0x0001","WORD","0x0001")
    $c2=0
    Do
    $c2=$c2+1
    DllCall ($dllh,"INT","CP210xRT_WriteLatch","HANDLE",$usbport,"WORD","0x0002","WORD","0x0000")
    Sleep (100)
    DllCall ($dllh,"INT","CP210xRT_WriteLatch","HANDLE",$usbport,"WORD","0x0002","WORD","0x0002")
    $sle=$bpms-100
    Sleep($sle)
    Until $c2=3
    return (600+($bpms*3))
    EndIf
    DllClose($dllh)
    EndFunc
    Alles anzeigen
  • Autoit Automatische variablendefinition funktioniert nicht mehr

    • Penner
    • 31. Dezember 2018 um 17:10

    Bei mir arbeitet die automatische variablendefinition nicht mehr. Ich kann mir nicht erklären wieso das nichtmehr geht.

    Code Vorher:

    Spoiler anzeigen

    $id1 = GUICreate($pri, 395, 214,@DesktopWidth-400,@DesktopHeight-240, -1, BitOR($WS_EX_TOPMOST,$WS_EX_WINDOWEDGE))

    $B1 = GUICtrlCreateButton("Pause (1)", 8, 8, 89, 97, BitOR($BS_MULTILINE,$BS_NOTIFY))

    GUICtrlSetFont(-1, 20, 400, 0, "MS Reference Sans Serif")

    $B2 = GUICtrlCreateButton("Verkleinern (2)", 104, 8, 91, 97, BitOR($BS_CENTER,$BS_MULTILINE,$BS_NOTIFY))

    GUICtrlSetFont(-1, 18, 400, 0, "MS Reference Sans Serif")

    $B3 = GUICtrlCreateButton("Wechsel (3)", 200, 8, 89, 97, BitOR($BS_MULTILINE,$BS_NOTIFY))

    GUICtrlSetFont(-1, 15, 400, 0, "MS Reference Sans Serif")

    $B4 = GUICtrlCreateButton("Nächstes Lied (4)", 296, 8, 89, 97, BitOR($BS_CENTER,$BS_MULTILINE,$BS_NOTIFY))

    GUICtrlSetFont(-1, 13, 400, 0, "MS Reference Sans Serif")

    $B5 = GUICtrlCreateButton("Stop (5)", 8, 112, 89, 97, BitOR($BS_MULTILINE,$BS_NOTIFY))

    Code jetzt:

    Spoiler anzeigen

    $id1 = GUICreate($pri, 395, 214,@DesktopWidth-400,@DesktopHeight-240, -1, BitOR($WS_EX_TOPMOST,$WS_EX_WINDOWEDGE))

    local $B1 = GUICtrlCreateButton("Pause (1)", 8, 8, 89, 97, BitOR($BS_MULTILINE,$BS_NOTIFY))

    GUICtrlSetFont(-1, 20, 400, 0, "MS Reference Sans Serif")

    local $B2 = GUICtrlCreateButton("Verkleinern (2)", 104, 8, 91, 97, BitOR($BS_CENTER,$BS_MULTILINE,$BS_NOTIFY))

    GUICtrlSetFont(-1, 18, 400, 0, "MS Reference Sans Serif")

    local $B3 = GUICtrlCreateButton("Wechsel (3)", 200, 8, 89, 97, BitOR($BS_MULTILINE,$BS_NOTIFY))

    GUICtrlSetFont(-1, 15, 400, 0, "MS Reference Sans Serif")

    local $B4 = GUICtrlCreateButton("Nächstes Lied (4)", 296, 8, 89, 97, BitOR($BS_CENTER,$BS_MULTILINE,$BS_NOTIFY))

    GUICtrlSetFont(-1, 13, 400, 0, "MS Reference Sans Serif")

    Wenn ich nicht jede variable händisch deklariere bekomme ich seit neustem einen Programmabbruch von autoit.
    Der fehler tritt nur im aktuellem Script auf.

    Bin für jede hilfe dankbar
    Penner

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™