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

Beiträge von BugFix

  • Schleife Pausieren?

    • BugFix
    • 20. September 2007 um 22:28

    Welche Hilfe benutzt du denn?

    Spoiler anzeigen
    C
    _TCPIpToName 
    --------------------------------------------------------------------------------
    
    
    Resolves IP adress to Hostname(s)
    
    
    
    
    #include <iNet.au3>
    _TCPIpToName ( $sIp [,$iOption = 0 [, $hDll_Ws2_32 = "Ws2_32.dll" ]] )
    
    
    
    
     
    
    
    Parameters
    
    
    $sIp Ip Adress in dotted (v4) Format 
    $iOption Optional, Default = 0
    0 = Return String Hostname
    1 = Return Array (see Remarks) 
    $hDll_Ws2_32 Optional, Handle to Ws2_32.dll 
    
    
     
    
    
    Return Value
    
    
    Success: Hostname or Array (see Remarks) 
    Failure: "" 
    @Error: 0 = No error. 
     1 = inet_addr DllCall Failed 
     2 = inet_addr Failed 
     3 = gethostbyaddr DllCall Failed 
     4 = gethostbyaddr Failed, WSAGetLastError = @Extended 
     5 = gethostbyaddr Failed, WSAGetLastError Failed 
     6 = strlen/sZStringRead Failed 
     7 = Error reading Aliases Array 
    
    
     
    
    
    Remarks
    
    
    A successfull WSAStartup (Done by TCPStartup) is required.
    if $iOption = 1 then the returned Array looks Like this:
        $aResult[0] = Number of elemets
        $aResult[1] = "Hostname"
        $aResult[2] = "Alias 1"
        $aResult[3] = "Alias 2"
        ...
    Alles anzeigen
  • NoteBook Akku-Info

    • BugFix
    • 20. September 2007 um 22:22

    Genau, darum habe ich in meinem Post auch darauf verwiesen. ;)
    Noch mehr Infos dazu gibts glaub ich nicht.

  • GUI - Funktionen abbrechen, Ereignisse bei Edit\Input usw

    • BugFix
    • 20. September 2007 um 22:17
    Zitat

    Original von winikator24654
    BugFix

    Ist doch egal wann die eingabe beendet ist - ich will eben nur abfangen, dass sich etwas ändert - ob 1 buchstabe oder ein Roman ist erstmal egal...

    Das ist überhaupt nicht egal - das ist entscheidend!

    Bsp.: Du willst "Lampe" eingeben und das Skript löst sofort nach der ersten Änderung (Eingabe 'L') das OnChange-Event aus.
    Dann hast du die 'A'-Karte. Statt mit "Lampe" arbeitet dein Skript nur mit "L" weiter.

    Du kannst natürlich auch eine Funktion gestalten, die kontinuierlich per GUICtrlRead() den Inhalt deines Feldes ausliest. Dann erkennst du jede Veränderung.


    Edit:
    Ich habe mal ein Bsp. erstellt, dass ständig den Inhalt von Input1 überwacht und an ein Label ausgibt.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    Opt("GUIOnEventMode", 1)
    Dim $Focus = 0

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

    $Form1 = GUICreate("Form1", 427, 223, -1, -1)
    GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close")
    $Input1 = GUICtrlCreateInput("Input1 - überwacht; Ausgabe an Label", 60, 114, 295, 21)
    $Input2 = GUICtrlCreateInput("Input2", 60, 144, 295, 21)
    $Label1 = GUICtrlCreateLabel("Label1", 60, 58, 295, 17)
    GUISetState(@SW_SHOW)

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

    AdlibEnable('_InputChg')
    While 1
    If ControlGetFocus($Form1) = 'Edit1' Then ; gibt ClassNameNN zurück, hier 'Edit1' ; 2.tes Input wäre 'Edit2' usw.
    $Focus = 1
    Else
    $Focus = 0
    EndIf
    Sleep(100)
    WEnd

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

    Func Form1Close()
    Exit
    EndFunc

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

    Func _InputChg()
    If $Focus = 1 Then GUICtrlSetData($Label1, GUICtrlRead($Input1))
    EndFunc

    [/autoit]
  • NoteBook Akku-Info

    • BugFix
    • 20. September 2007 um 22:01

    Wenn Anwendungen auf einem Notebook laufen, sollte man evtl. auch den Ladezustand der Akkus im Auge behalten und entsprechend reagieren (Warnmeldung, Abbruch etc.).
    Einige Infos lassen sich mit AutoIt-Scriptomatic über "ROOT\CIMV2" - "Win32_Battery" erhalten.

    Ich hab hier mal zusammengestellt, was über die WMI-Klassen in der "ROOT\WMI" zu erhalten ist.

    Spoiler anzeigen
    [autoit]

    $str = ''
    $strComputer = "."
    $objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\WMI")
    $colItems = $objWMIService.ExecQuery( _
    "SELECT * FROM BatteryFullChargedCapacity")
    $str = "-----------------------------------" & @LF & _
    "BatteryFullChargedCapacity instance" & @LF & _
    "-----------------------------------" & @LF
    $count = 1
    For $objItem In $colItems
    $str &= $count & '. ' & "Max. Ladekapazität: " & $objItem.FullChargedCapacity & @LF
    $count += 1
    Next
    $str &= @LF
    $colItems = $objWMIService.ExecQuery( _
    "SELECT * FROM BatteryRuntime")
    $str &= "-----------------------------------" & @LF & _
    "BatteryRuntime instance" & @LF & _
    "-----------------------------------" & @LF
    $count = 1
    For $objItem In $colItems
    $str &= $count & '. ' & "Restlaufzeit: " & $objItem.EstimatedRuntime & @LF
    $count += 1
    Next
    $str &= @LF
    $colItems = $objWMIService.ExecQuery( _
    "SELECT * FROM BatteryStatus")
    $str &= "-----------------------------------" & @LF & _
    "BatteryStatus instance" & @LF & _
    "-----------------------------------" & @LF
    $count = 1
    For $objItem In $colItems
    $str &= $count & '. ' & "Critical: " & $objItem.Critical & @LF ; Ladezustand kritisch: True(-1)/False(0)
    $str &= $count & '. ' & "Charging: " & $objItem.Charging & @LF ; Laden: True(-1)/False(0)
    $str &= $count & '. ' & "ChargeRate: " & $objItem.ChargeRate & @LF ; Ladetempo: Number
    $str &= $count & '. ' & "Discharging: " & $objItem.Discharging & @LF ; Entladen: True(-1)/False(0)
    $str &= $count & '. ' & "DischargeRate: " & $objItem.DischargeRate & @LF ; Entladetempo: Number
    $str &= $count & '. ' & "Voltage: " & $objItem.Voltage & @LF ; 1-Akkubetrieb, 2-Netzbetrieb
    $count += 1
    Next

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

    MsgBox(0, 'Akku Info', $str)

    [/autoit]

    Dateien

    AkkuInfo.au3 1,82 kB – 439 Downloads
  • GUI - Funktionen abbrechen, Ereignisse bei Edit\Input usw

    • BugFix
    • 20. September 2007 um 19:50

    LOL - und woher soll das Programm wissen, wann die Eingabe beendet ist?
    Nach 5 Zeichen oder 10 ?? ;)

  • Send mit ! (AlT) Problem

    • BugFix
    • 20. September 2007 um 19:29

    Die aktuelle Stable Version ist 3.2.8.1
    Installiere die mal.

    Aber wichtig ist, wohin willst du Alt+n senden? Einige Programme sind da ziemlich resistent.

  • GUI - Funktionen abbrechen, Ereignisse bei Edit\Input usw

    • BugFix
    • 20. September 2007 um 18:28
    Zitat

    Original von winikator24654
    und wie ist das mit dem "onChange"-Event für Input-Objekte? wie funktioniert das?

    Das Event "OnChange" tritt ein, wenn du ein Input- oder Editfeld mit ENTER verläßt und der Inhalt des Feldes verändert wurde.

  • Tray ItemID

    • BugFix
    • 20. September 2007 um 10:44

    Hi,
    alle ID's bekommen dieselbe Funktion zugewiesen, die dann nach der ID selektiert separaten Code zuweist:

    [autoit]

    Dim $arTrayItem[1]
    ;...
    ;...
    ReDim $arTrayItem[UBound($arTrayItem)+1]
    $arTrayItem[UBound($arTrayItem)-1] = TrayCreateItem(.Fields("gname").value , $tGroups)
    TrayItemSetOnEvent(-1, "_select")

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

    Func _select()
    Switch @TRAY_ID
    Case $arTrayItem[1]
    ;...
    Case $arTrayItem[2]
    ;...
    Case $arTrayItem[3]
    ;...
    EndSwitch
    EndFunc

    [/autoit]
  • GUI - Funktionen abbrechen, Ereignisse bei Edit\Input usw

    • BugFix
    • 19. September 2007 um 20:28

    Lies jetzt mal deine Antwort und versetz dich in meine Lage. Könntest du damit etwas anfangen? ?(

    Machs doch nicht so geheimnisvoll. Was für eine Funktion willst du ausführen?
    Und stell mal etwas Code rein, damit man sich ein Bild machen kann.

  • Gun-Fooooooood

    • BugFix
    • 19. September 2007 um 20:23

    Das kommt davon, wenn man so spät von Arbeit kommt - jetzt ist eigentlich schon alles gesagt.

    Also: Auch von mir Alles Gute und genieße die Zeiten vor der 30 :D

  • Tray ItemID

    • BugFix
    • 19. September 2007 um 09:01

    Hi,
    die ID bekommst du doch bei der Erstellung des Trayitems zurück.
    Dann kannst du diese doch in ein Array packen um der Dynamik gerecht zu werden und dann eine entsprechende Funktion zuweisen.
    Probier mal so:

    [autoit]

    Dim $arTrayItem[1]
    ;...
    ;...
    ReDim $arTrayItem[UBound($arTrayItem)+1]
    $arTrayItem[UBound($arTrayItem)-1] = TrayCreateItem(.Fields("gname").value , $tGroups)
    GUICtrlSetOnEvent(-1, "Funktionsname")

    [/autoit]

    Edit:
    Vielleicht ist es sogar günstiger ein 2D-Array zu erstellen, sodass du die Parameter für die ID-spezifische Funktion mit im Array ablegen kannst.

  • GUI - Funktionen abbrechen, Ereignisse bei Edit\Input usw

    • BugFix
    • 18. September 2007 um 21:00

    Erklär doch mal genauer, was du machen möchtest.
    Was meinst du mit: ...in eine laufende Funktion eingreifen... ?

    Fragen über Fragen...

  • Hilfe, ich bin eine Spamschleuder!

    • BugFix
    • 17. September 2007 um 23:07

    @Bullz
    Das schönste Image nützt dir nichts, wenn die TrueImage-CD sagt: Nö, nix da HD!
    Und das ist bei neuer Hardware sehr oft der Fall. Gerade aktuelle Chipsätze werden nicht unterstützt und deine SATA-Platte bleibt im Dunkel.
    Wenn du also nen neuen PC kaufst, installierst TI und fertigst ein Image an (was von dem gestarteten Windows aus auch wunderbar geht), erlebst du dein blaues Wunder wenn du das Image zurückspielen willst, du aber "keine" HD hast.

    Ich bin wahrhaft ein Fan von TrueImage und nutze es schon seit Jahren.
    Umso trauriger bin ich, dass selbst die Version 10 aktuelle Chipsätze nicht erkennt.
    Die Serverversion krankt ebenso. :evil:

  • Schleife Pausieren?

    • BugFix
    • 17. September 2007 um 21:05

    Wenn du pausieren möchtest, das Skript aber evtl. zwischenzeitlich andere Aufgaben erfüllen soll, kannst du diesen Ansatz wählen:

    [autoit]

    $Start = False
    ;...
    ;...
    Case $msg = $button_Start_Stop
    If $Start Then
    ; Code ausführen, fortsetzen (am besten Funktionsaufruf)
    Else
    ; Code stoppen
    EndIf
    $Start = Not $Start
    ;...
    ;...

    [/autoit]
  • Parent- und Child-GUI

    • BugFix
    • 17. September 2007 um 20:50

    Ich denke, das ist in etwa das was du möchtest. Ich habe die Child-GUI aber "drauf"geheftet.
    Bewegst du die Parent, wird die Child mitbewegt.

    Spoiler anzeigen
    [autoit]

    #include <guiconstants.au3>
    Global Const $WS_EX_CONTROLPARENT = 0x00010000

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

    $ParentGUI = GUICreate("AForm1", 600, 220, -1, -1, BitOR($WS_OVERLAPPEDWINDOW, $WS_CLIPSIBLINGS))
    GUISetBkColor(0xB4B4B4)
    $Label1 = GUICtrlCreateLabel("Parent Window", 8, 0, 77, 17)
    GUICtrlSetBkColor(-1, 0xB4B4B4)
    GUISetState(@SW_SHOW)

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

    $ChildGUI = GUICreate("", 600, 100, -2, 120, BitOR($WS_CHILD, $WS_TABSTOP, $WS_SIZEBOX), $WS_EX_CONTROLPARENT, $ParentGUI)
    $Label1 = GUICtrlCreateLabel("Child Window", 8, 0, 77, 17)
    GUISetState(@SW_SHOW)

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

    GUISwitch($ParentGUI)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    EndSwitch
    WEnd

    [/autoit]
  • Benutzerverwaltung

    • BugFix
    • 17. September 2007 um 19:59

    VBS läßt sich recht gut umsetzen in AutoIt. Schau mal in die Rubrik Entwickler, Objekte unter AutoIt

  • HTML Quelltext vom IE holen

    • BugFix
    • 17. September 2007 um 19:53

    Der IE wird als Objekt gestartet, je nach Aufruf sichtbar oder unsichtbar.
    Entsprechende Flags sind in _IECreate().

  • ImageBeaver Downloader

    • BugFix
    • 17. September 2007 um 19:49

    LOL, ich finde auf Imagebeaver sind Männer eindeutig unterprivilegiert. Welch eine Schande.
    Also ich guck da nicht wieder hin.:P

  • GUI - Funktionen abbrechen, Ereignisse bei Edit\Input usw

    • BugFix
    • 17. September 2007 um 19:35

    Ereignisse auswerten geht am Besten im OnEvent -Mode (AutoitSetOption).
    Dort kannst du für jedes Control ein Ereignis definieren.

    Klickereignisse stehen standardmäßig nicht für alle Controls zur Verfügung. Dafür hatte ich aber extra eine Beispiellösung erstellt - findest du unter Skripte.

  • HTML Quelltext vom IE holen

    • BugFix
    • 17. September 2007 um 19:05

    Ich hatte dir doch schon das passende Codebeispiel reingestellt.
    Brauchst nur die Variable "$url" mit der URL bestücken und schon klappt das.

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™