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

Beiträge von tobi_girst

  • Send ("{scrolllock toggle}") ungenau?

    • tobi_girst
    • 2. Mai 2012 um 15:07

    Tschuldigung.
    Also, es geht mir darum, einen Optokoppler irgendwie anzusteuern. Send Scrolllock fällt weg, weil die klicks aus irgendeinem Grund auf meinem Rechner ungenau sind.
    grüße tobias

  • Multitasking ist gefragt

    • tobi_girst
    • 1. Mai 2012 um 18:37

    die idee ist gut! und einfach umzusetzen:

    [autoit]


    If $CmdLine[0]>0 AND $CmdLine[1] = "load" Then
    lade_etwas ()
    else
    Run (@ScriptFullPath &" load")
    GUICreate("titel", -1, -1, 100, 100)
    $b_start = GUICtrlCreateButton("Starten", 10, 10, 80, 30)
    EndIf
    #####################################################
    If $CmdLine[0] > 0 Then
    Switch $CmdLine[1]
    Case "two"
    Run (@ScriptFullPath & " three")
    MsgBox (0, "Multithreading4AutoIt", "2nd Thread")
    Case "three"
    MsgBox (0, "Multithreading4AutoIt", "3rd Thread")
    EndSwitch
    Else
    Run (@ScriptFullPath & " two")
    MsgBox (0, "Multithreading4Autoit", "1st Thread")
    EndIf

    [/autoit]


    muss übrigens compiliert sein, um zu funktionieren

  • Send ("{scrolllock toggle}") ungenau?

    • tobi_girst
    • 1. Mai 2012 um 15:29

    Grüß euch!
    Ich habe folgendes Problem: weil ich nicht mit Mikrokontrollern arbeiten kann habe ich die Tastatur-LED "Scroll" durch einen Optokoppler erstetzt um den Kanal+ schalter auf meinem Receiver zu betätigen. Auf meinem alten XP-Rechner hat das gut (genug) funktioniert, aber seit ich einen Win7-Rechner von HP verwende, sind die Klicks sehr unregelmäßig, manche werden gar nicht ausgeführt, was darin endet, dass die berechnete Kanalnummer nicht mehr mit der eigentlichen zusammenpasst.
    Ich verwende folgenden Code:

    [autoit]

    $num = Random (1, 30) ;Anzahl der hochzuschaltenden Kanäle kann zw. 1 & 30 liegen
    For $i = 1 to $num
    Send ("{ScrollLock on}")
    Sleep (100)
    Send ("{ScrollLock off}")
    Sleep (100)
    Next

    [/autoit]


    Gibt es eine andere möglichkeit, diese Aufgabe zu lösen?
    Ich hätte gedacht, vielleicht kann man die LED via DLL ansteuern oder einen Anschluss am PC manipulieren oder den Arduino1 zu verwenden, den mir ein Kollege geschenkt hat (was GROßARTIG wäre!)
    LG und danke im Vorraus
    Also, ich habe leider nur Lautsprecher-Anschluss, Ethernet, und natürlich USB2.0 Natürlich wäre ich auch nicht abgeneigt, kleinere Summen für PCIE-Karten oder USB2Serial auszugeben.
    So, werd jez weiterrecherchieren


    Geht es, dass man Strom auf den Lautsprecheranschluss über AutoIt+DLL gibt und ihn wieder wegnimmt?

  • Dividieren mit Rest

    • tobi_girst
    • 24. März 2012 um 15:59

    [Blockierte Grafik: http://media.tumblr.com/tumblr_lxwd5xKaF81qc3dbl.jpg]
    von der Funktion hab ich noch nie gehört...egal, 10min zeit tot...

  • Dividieren mit Rest

    • tobi_girst
    • 24. März 2012 um 15:41

    Nur mein kleiner Restrechner. Hilft zB, wenn man die Aufgaben eines Volksschülers kontrollieren will.
    Er funktioniert nach folgendem Prinzip: Zuerst wird die Rechnung mit Komma gelöst, danach die volle Zahl abgezogen und mit dem Nenner multipliziert.
    zB:

    Code
    4567/89 = 51,314606741573033707865168539326          ^^       Ergebnis0,314606741573033707865168539326*89 = 28                                      ^^                                     Rest
  • Dateiliste in Context-Menü

    • tobi_girst
    • 23. März 2012 um 18:32

    Hallo!
    Ich beziehe mich auf folgenden Artikel: [ offen ] Context Menu
    Ich möchte die Element-Liste aber nicht vordefinieren sondern per _FileListToArray () einspielen.
    Leider wird dann die funktion WM_COMMAND nicht mehr ausgeführt. iCH habe die Abfrage-Schleife dann in die While-Schleife gepackt;sie gibt aber immer 1 zurück anstatt der ID des Elements
    Hier mein Skript

    Spoiler anzeigen
    [autoit]

    #include <array.au3>
    #include <file.au3>
    #include <GuiMenu.au3>
    #include <WinAPI.au3>
    #include <WindowsConstants.au3>
    Global Const $tagSHFILEINFO = "hwnd hIcon;int iIcon;dword Attr;wchar DisplayName[260];char TypeName[80]"

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

    Global Const $SHGFI_ICON = 256
    Global Const $SHGFI_DISPLAYNAME = 512
    Global Const $SHGFI_TYPENAME = 1024
    Global Const $SHGFI_ATTRIBUTES = 2048
    Global Const $SHGFI_ICONLOCATION = 4096
    Global Const $SHGFI_EXETYPE = 8192
    Global Const $SHGFI_SYSICONINDEX = 16384
    Global Const $SHGFI_LINKOVERLAY = 32768
    Global Const $SHGFI_SELECTED = 65536
    Global Const $SHGFI_ATTR_SPECIFIED = 131072
    Global Const $SHGFI_LARGEICON = 0
    Global Const $SHGFI_SMALLICON = 1
    Global Const $SHGFI_OPENICON = 2
    Global Const $SHGFI_SHELLICONSIZE = 4
    Global Const $SHGFI_PIDL = 8
    Global Const $SHGFI_USEFILEATTRIBUTES = 16

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

    #include <Constants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GDIPlus.au3>
    $dir = 'c:\applinks'
    $dir = 'c:\users\girstmair\startfolder\apps'
    $filfol = _FileListToArray ($dir)

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

    $Handle = GUICreate("")

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

    Dim $entry[$filfol[0]+1]

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

    $hMenu = _GUICtrlMenu_CreatePopup ()

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

    For $i = 1 To $filfol[0]
    If StringRight ($filfol[$i], 4) = ".lnk" Then
    $name = StringTrimRight ($filfol[$i], 4)
    Else
    $name = $filfol[$i]
    EndIf
    _GUICtrlMenu_InsertMenuItem ($hMenu, $i-1, $name, $entry[$i])
    If StringRight ($filfol[$i], 4) = ".lnk" Then
    $ico = FileGetShortcut ($dir&"\"&$filfol[$i])
    ConsoleWrite ($ico&@crlf)
    ;~ $hBmp = _WinAPI_LoadImage (0, $ico[4], $IMAGE_ICON, 16, 16, BitOR($LR_LOADTRANSPARENT, $LR_LOADFROMFILE))
    $hbmp = _WinAPI_CreateSolidBitmap (0, 0x880055, 16, 16)
    _GUICtrlMenu_SetItemBitmaps ($hMenu, $i-1, $hBmp, $hBmp)
    Else
    $hbmp = _WinAPI_CreateSolidBitmap (0, 0x550088, 16, 16)
    _GUICtrlMenu_SetItemBitmaps ($hMenu, $i-1, $hBmp, $hBmp)
    EndIf

    Next
    menue()

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

    Func OnAutoItExit()
    _GUICtrlMenu_DestroyMenu ($hMenu)
    EndFunc

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

    ;~ ; Register message handlers
    ;~ GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")
    ;~ ;;http://www.autoit.de/index.php?page…8530#post148530

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

    While 1
    ;~ Sleep(10)
    For $id = 1 To $filfol[0]
    Switch GUIGetMsg ()
    Case $entry[$id]
    ConsoleWrite ($id)
    Exit
    EndSwitch
    Next
    Wend

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

    ;~ ; Handle WM_COMMAND messages
    ;~ Func WM_COMMAND($hWnd, $iMsg, $iwParam, $ilParam=True)
    ;~ For $id = 1 To $filfol[0]
    ;~ Switch $iwParam
    ;~ Case $entry[$id]
    ;~ ConsoleWrite ($i)
    ;~ Exit
    ;~ EndSwitch
    ;~ Next
    ;~ EndFunc ;==>WM_COMMAND

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

    Func Menue()
    _GUICtrlMenu_TrackPopupMenu ($hMenu, $Handle)
    EndFunc

    [/autoit]


    ich bin um jede Hilfe dankbar!
    lg

  • Send Key Problem "@"

    • tobi_girst
    • 23. Februar 2012 um 17:36

    verwende StringReplace!

    [autoit]


    $Mail = StringReplace ( $Mail, "@", "{@}")

    [/autoit]


    Das ersetzt den Klammeraffen durch {@} in der mailadressen-variable
    PS: für Skripte verwende doch zur besseren Übersicht folgenden code:

    Code
    [spoiler][autoit][/autoit][/spoiler]
  • AutoIt zu PHP

    • tobi_girst
    • 23. Februar 2012 um 15:01

    Danke i2c (und natürlich auch euch anderen)!
    Nun, ich bin mit dem Skript fertig; ich bin euch allen sehr dankbar!!
    lg tobias

  • AutoIt zu PHP

    • tobi_girst
    • 20. Februar 2012 um 22:14

    Leider kenne ich mich mit regulären Ausdrücken nicht aus. Ich habe die UDF ausgegraben und den _StringBetween-Code so umgebaut:

    PHP
    function _StringBetween($s_String, $s_Start, $s_End) {
    	$s_case = "(?i)";
    
    
    	$s_pattern_escape = "(\.|\||\*|\?|\+|\(|\)|\{|\}|\[|\]|\^|\$|\\)";
    	$s_Start = preg_replace ($s_Start, $s_pattern_escape, "\\$1");
    	$s_End = preg_replace ($s_End, $s_pattern_escape, "\\$1");
    
    
    	$a_ret = preg_match_all($s_String, "(?s)" & $s_case & $s_Start & "(.*?)" & $s_End, 3);         Fehlerzeile!1
    
    
    	Return $a_ret;
    }
    Alles anzeigen


    bei der Zeile 8 kommt folgende Fehlermeldung: Fatal error: Only variables can be passed by reference in D:\xampp\htdocs\readres.php on line 31
    ich habe aber keine Ahnung, ob ich überhaupt die richtigen Funktionen verwende :wacko: :wacko:
    SoftCreatR's Schnipsel habe ich auch nicht zurechtbekommen.
    Mein Programmierer-Herzgehört eben AutoIt; PHP brauche ich fast nie und kann deshalb auch nur die Basics.
    Bitte um Hilfe;
    tobias

  • AutoIt zu PHP

    • tobi_girst
    • 19. Februar 2012 um 13:22

    Grüß euch!
    ich habe ein Skript geschrieben, welches den HTML-Code von einer Website ausliest und in ein Array speichert. Dafür verwende ich momentan _INetGetSource () [Blockierte Grafik: http://traveleworld.com/images/tick.png], _StringBetween () [Blockierte Grafik: http://www.dsl-surfer24.de/custom_pages/gfx/icons/tick_off.gif], StringSplit (), StringLeft (), StringTrimLeft (), StringRight () und StringTrimRight () sowie _ArraySort ().
    Ich möchte das Skript jetzt auf meinen Webspace schieben und muss es dafür in PHP umformen.
    Ich habe es bereits geschafft, _INetGetSource () [Blockierte Grafik: http://traveleworld.com/images/tick.png] , zu umschreiben, Finde aber keine Funktion, die _StringBetween () [Blockierte Grafik: http://www.dsl-surfer24.de/custom_pages/gfx/icons/tick_off.gif] , ersetzt (keine Funktion schreibt die Ergebnisse in ein Array).
    Ich hoffe, hier kann mir jemand helfen.
    lg tobias
    PS: Ist etwas Offtopic; hoffentlich störts nicht allzu sehr

  • Anti ACTA

    • tobi_girst
    • 12. Februar 2012 um 18:33

    15 min coden gegen Langeweile...und gegen ACTA!
    Zeigt in schönem 7Segment-Style die aktuelle (Überprüfung alle 60*1000ms) Zahl der Gegner und darunter ein Browserwindow wahlweise in DE oder EN mit der Petition zum Unterschreiben.
    Font-Credit im Script

    Dateien

    anti_acta.zip 517,88 kB – 571 Downloads
  • DualMonitor - Mousetrap bei Desktop anzeigen und maximierten Fenster-[X]

    • tobi_girst
    • 14. Januar 2012 um 11:55

    Neue Version:

    • Komplett neu geschrieben
    • Fängt den Cursor nun immer ein
    Spoiler anzeigen
    [autoit]

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

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

    AutoIt Version: 3.3.6.1
    Author: myName

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

    Script Function:
    Erstellt eine unsichtbare "Wand" rechts vom Schließen-Button eines maximierten
    Fensters am linken=Hauptmonitor und beim Desktop-Anzeigen-Bereich.
    Exit-Codes: 0: Programm vom User geschlossen
    1: Programm wird bereits ausgeführt (_Singleton)
    2: Nicht Windows 7 (@OSVersion)
    3: Hauptmonitor nicht links vom Extender

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

    #ce ----------------------------------------------------------------------------

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

    #include <Misc.au3>
    If _Singleton (@ScriptName, 1) = 0 Then
    MsgBox (16, "Trap MinX, girst9900", "TrapMinX is already running")
    Exit 1
    EndIf
    If @OSVersion <> "WIN_7" Then
    MsgBox (16, "Trap MinX, girst9900", "Only working on Windows 7")
    Exit 2
    EndIf
    $fullres = WinGetPos ("Program Manager")
    If $fullres [0] = @DesktopWidth And $fullres [1] <> @DesktopHeight Then
    MsgBox (16, "Trap MinX, girst9900", "This program requires a dual monitor setup with main screen left and extend screen right")
    Exit 3
    EndIf
    Opt ("TrayMenuMode", 1)
    Opt ("WinWaitDelay", 1)
    $exit = TrayCreateItem ("Quit")
    TraySetToolTip ("Trap MinX")
    While 1
    If TrayGetMsg () = $exit Then
    Exit 0
    EndIf
    $awp = WinGetPos (WinGetHandle(""))
    If MouseGetPos (0) < @DesktopWidth-100 Or _
    (MouseGetPos (1) < 20 And MouseGetPos (0) < @DesktopWidth And BitAND (WinGetState (WinGetHandle("")), 32) And $awp[0] < 0) Or _
    (MouseGetPos (1) > @DesktopHeight-40 And MouseGetPos (0) < @DesktopWidth) Then
    _MouseTrap (0, 0, @DesktopWidth, @DesktopHeight)
    Else
    _MouseTrap ()
    EndIf
    WEnd

    [/autoit] [autoit][/autoit] [autoit][/autoit]
  • DualMonitor - Mousetrap bei Desktop anzeigen und maximierten Fenster-[X]

    • tobi_girst
    • 25. Dezember 2011 um 23:30

    Für alle, die zwei Bildschirme besitzen und immer über den Rand eines Monitors hinausdüsen!
    Erstellt 2 MouseTraps: über dem Desktop-Anzeigen-Button von Win7 (immer) und wenn ein Fenster am linken Monitor maximiert ist über dem [x].
    Das ganze ist auf meine 2 1980x1080 Monitore mit dem Hauptbildschirm links ausgelegt, dürfte sich aber sicher leicht umprogrammieren lassen.
    lg tobias
    leider reagiert die Schleife nicht, wenn man zu schnell heranbraust, daher sollte man den trap-bereich vergrößern

    Skript
    [autoit]

    #include <Misc.au3>
    Opt ("TrayMenuMode", 1)
    Opt ("WinWaitDelay", 1)
    $run = True
    $exit = TrayCreateItem ("Quit")
    TraySetToolTip ("Trap MinX")
    TrayTip ("Trap MinX", "by [email='tobi_girst@autoit.de'][/email]; v9.9.0.0", 3)
    _Singleton (@ScriptName)
    While 1
    ;;;Desktop anzeigen (rechts unten)
    While MouseGetPos (0) > @DesktopWidth-13 _ ; Maus links auf Button (innerhalb)
    And MouseGetPos (1) > @DesktopHeight-38 _ ; Maus oben auf Button (innerhalb)
    And MouseGetPos (0) < @DesktopWidth _ ; Maus rechts von Button (außerhalb)
    And MouseGetPos (1) < @DesktopHeight ; Maus unterhalb von Button (außerhalb)
    _MouseTrap (@DesktopWidth-15, @DesktopHeight-40, @DesktopWidth, @DesktopHeight)
    WEnd
    ;;;Maximiertes Fenster schließen
    While MouseGetPos (0) > @DesktopWidth-49 _ ; Maus links auf Button (innerhalb)
    And MouseGetPos (1) >= 0 _ ; Maus oberhalb von Button (außenhalb)
    And MouseGetPos (0) < @DesktopWidth+1 _ ; Maus rechts von Button (außerhalb)
    And MouseGetPos (1) < 16 _ ; Maus unten auf Button (innerhalb)
    And BitAND (WinGetState (WinGetHandle("")), 32) ; Fenster maximiert
    _MouseTrap (@DesktopWidth-51, 0, @DesktopWidth, 18)
    WEnd
    _MouseTrap ()
    If TrayGetMsg () = $exit Then
    Exit 0
    EndIf
    WEnd

    [/autoit]
  • String aus Konsole lesen

    • tobi_girst
    • 11. Dezember 2011 um 14:06

    Danke ytwinky!!!! Durch das umleiten in eine TXT kann ich das benötigte umleiten!!
    lg

  • String aus Konsole lesen

    • tobi_girst
    • 10. Dezember 2011 um 11:09

    Es existiert ja noch kein Quellcode; alle meine bisherigen Versuche sind gescheitert. Ich finde nur Beispiele, die aus einer im Skript erstellten CMD lesen.
    Ich drücke mich oft etwas kompliziert aus, daher meine Frage noch einmal zusammengefasst: >Wie kann ich aus einer bereits existierenden Konsole etwas auslesen, von der ich den Titel kenne?<

    lg

  • String aus Konsole lesen

    • tobi_girst
    • 7. Dezember 2011 um 20:21

    Hallo!
    Ich habe eine Batch-Datei auf meinem Rechner (WinXP x86), die startet ein Java-File mit parametern (Batch generiert den startparam). in diesem java-File wird dann der aktuelle Status angezeigt. Den möchte ich auslesen, bis er bei "Server started sucessfully" stehenbleibt.
    Meine bisherigen Versuche mit StdOutRead() waren alles misserfolge.
    Ich habe das Batchfile mit Run() gestartet und dann eine Schleife durchlaufen lassen und StdOut() ständig in die Konsole schreiben lassen.
    Danke im Vorraus!

  • [ERLEDIGT] probleme mit lan, aber keine mit internet

    • tobi_girst
    • 2. Dezember 2011 um 13:00

    Win 7 hab ich eh auf meinem Hauptrechner (wie gesagt, vista ist der alte Rechner), vllt. krieg ich noch eine Lizenz (Weihnachten kommt ja bald)
    Nur zu hoffen, dass WinTv auf W7 läuft...
    Abhängigkeitsdienste hab ich bereits geschaut, gibs keine. Aber WFW is abhängig von diesen Systemkomponenten

    Code
    ,+BFE||+Remoteprozeduraufruf (RPC)| |-DCOM-Server-Prozessstart'+Windows-Firewallautorisierungstreiber


    wär doch schön, wenn man sich das Update von Windows v6,0 auf v6,1 ersparen könnte.

    HDD gekauft. W7Lizenz gekauft, jetzt wird installiert! Danke BLinz für deine Mühe!
    Thema hat sich somit erledigt.

  • [ERLEDIGT] probleme mit lan, aber keine mit internet

    • tobi_girst
    • 1. Dezember 2011 um 13:48
    Zitat von BLinz

    wo ich es neu aufsetze ..."


    haha...Gleicher Gedanke! Habe sogar schon eine HDD bei unserem Dorfshop bestellt (daten4Schule noch am Vista drauf) !
    Dienste->WindowsFirewall->Starten->"Der Dienst Windows Firewall auf Lokaler Computer konnte nicht gestartet werden.\Fehler 1068: Der Abhängigkeitsdienst oder die Abhängigkeitsgruppe konnte nicht gestartet werden."

  • [ERLEDIGT] probleme mit lan, aber keine mit internet

    • tobi_girst
    • 30. November 2011 um 18:29

    kaspersky ist nur antivir, weil die lizenz abgelaufen ist hab ich es jetzt einmal gegen avg free ausgetauscht und systemcheck gemacht. problem weiterhin da. die comodo firewall hab ich gedacht, sollte die andere vollständig ersetzen, hat nicht geklappt.
    werde die fw wieder löschen.
    im internet habe ich schon nach winvista fw gegooglet, aber die angebotenen problemlösungen scheitern. gibt es keine install.exe für die Firewallsoftware? oder ist die auf der Vista-cd dabei (dann könnte ich auch hier einen dl-link gebrauchen)
    sry für kleinschreibung, habs eilig
    lg tobi

  • [ERLEDIGT] probleme mit lan, aber keine mit internet

    • tobi_girst
    • 29. November 2011 um 13:53

    danke! auch zu AutoIt-Fremden Themen wird einem hier promt geholfen.
    Was ich also getan habe:
    1. Windows Firewall geöffnet
    2. Status: "Der Windows Firewalldienst wird nicht ausgeführt"
    3. Windows FW einschalten -> Status: "Der Dienst WFW konnte nicht gestartet werden"

    Kaspersky Antivirus 09 hat anscheinend keine Firewallfunktion, so wie ich das beurteilen kann.
    Danke für deinen Lösungsvorschlag, auch wenn ich dem Problem noch nicht näher gekommen bin.
    Lg

    _______________________________________________________
    edit: Habe die Comodo- Firewall installiert, funkitoniert immer noch nicht.

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™