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

Beiträge von RedHead

  • Zeile auslesen

    • RedHead
    • 20. Oktober 2012 um 17:17
    Zitat von YaeroxXO

    Ich bin jetzt noch kein Superuser mit AutoIt, aber ich denke ich würde den String beim Semikolon jedes mal 'splitten' und die einzelnden Wörter in ein Array schreiben. Wenn du dann immer den zweiten Teil oder so brauchst kannst du diesen ja einfach aus dem Array holen ;)

    hat sowas nicht schon @Make-Grafik vorgeschlagen??!! 8|

    Zitat von Make-Grafik

    Also, da dein Format anscheinend immer gleich ist:

    $String1 = 'xxxxxx;xxxxx ;yyyyyy yyy ; xxxxx ;yyyyyy; xxxxxx'
    $String2 = 'xxxxxx; xxxx ;yyyyyyyyyyyy ;xxxxx ;yyyyy; xxxxxx'

    $split = StringSplit($String1, ';')
    MsgBox(0, '', $split[3] & ' | ' & $split[5])
    $split = StringSplit($String2, ';')
    MsgBox(0, '', $split[3] & ' | ' & $split[5])

    Das ist zwar jetzt einfach, aber es sollte gehen...

    Alles anzeigen
  • Zeile auslesen

    • RedHead
    • 14. Oktober 2012 um 19:12

    außdem würde ich die datei zeile für zeile auslesen sonder komplett auslesen und dann splitten ;) geht schneller ;)

    so in entwa

    [autoit]

    Func _ReadFile($s_file)
    If Not FileExists($s_file) Then Return SetError(1)
    Local $h_open = FileOpen($s_file)
    Local $s_context = FileRead($h_open)
    FileClose($h_open)

    Return StringSplit($s_context, @LF)
    EndFunc

    [/autoit]

    ist natürlich jetzt ungetestet ;)

  • mehrere html datein im selben firefoxfenster öffnen

    • RedHead
    • 14. Oktober 2012 um 19:05

    ja, aber die beziehen sich (soweit ich das sehe) nur auf aktion im firefox ;) eine udf, die dafür sorgt das alle html datein im selben ordner geöffnet werde, habe ich nicht gesehen :(


    wird die firefox - udf datei eigentlich irgendwann mal komplett in autoit integriert?? :) so wie die internet explorer udfs? :)

  • mehrere html datein im selben firefoxfenster öffnen

    • RedHead
    • 14. Oktober 2012 um 16:40

    hi leute...

    ich sitze zur zeit an meiner facharbeit. Da ich für den späteren quellennachweis, die verwendeten seiten runterladen musste, habe ich nun ein menge html datein auf meinen laptop. :) wenn ich nun jedes mal weiter an meiner facharbeit arbeiten möchte muss ich allerdings alle datein per hand öffnen...das ist ein bisschen mühselig und da dachte ich mir das ich das auch mit autoit einfacher machen kann :) allerdings werde die html datein nicht alle im selben ff-fenster geöffnet, sonder jede datei im eigenen fenster :( am ende habe ich nun unzählige ff-fenster und habe keine ordnung mehr :(
    nun meine frage ist jetzt ob man das so machen kann das alle datein im selben ff-fenster geöffnet werden? und wenn ja, wie?? :) kann mir einer helfen??

    mein bisheriger code:

    Spoiler anzeigen
    [autoit]

    Global $a_found[1] = [0]

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

    _FileFindAll("Z:\Chemie - Facharbeit\Facharbeit\Online", $a_found)

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

    For $a = 1 To $a_found[0]
    ShellExecute($a_found[$a])
    Do
    Sleep(100)
    Until ProcessExists("firefox.exe")
    Next

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

    Func _FileFindAll($s_path, ByRef $a_found, $s_filetype = False, $s_filename = False)
    If $s_path == "" Or Not IsArray($a_found) Then Return SetError(-1)
    If StringRegExp(StringLeft($s_path, 1), "[a-zA-Z]") And StringMid($s_path, 2, 1) == ":" Then
    If StringRight($s_path, 1) <> "\" Then $s_path &= "\"
    Local $s_suchen, $s_weitersuchen, $i_ubound
    If $s_filetype And StringLeft($s_filetype, 1) <> "*" Then $s_filetype = "*" & $s_filetype
    $s_suchen = FileFindFirstFile($s_path & "*")
    If $s_suchen == -1 Then Return SetError(-2)
    While 1
    $s_weitersuchen = FileFindNextFile($s_suchen)
    If @error Then ExitLoop
    If Not @extended Then
    If $s_filetype And Not $s_filename Then
    If StringRight($s_weitersuchen, StringLen($s_filetype) - 1) == StringTrimLeft($s_filetype, 1) Then
    $i_ubound = UBound($a_found, 1)
    ReDim $a_found[$i_ubound + 1]
    $a_found[$i_ubound] = $s_path & $s_weitersuchen
    EndIf
    ElseIf $s_filename And Not $s_filetype Then
    If StringLeft($s_weitersuchen, StringLen($s_filename)) == $s_filename Then
    $i_ubound = UBound($a_found, 1)
    ReDim $a_found[$i_ubound + 1]
    $a_found[$i_ubound] = $s_path & $s_weitersuchen
    EndIf
    ElseIf $s_filename And $s_filetype Then

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

    If (StringRight($s_weitersuchen, StringLen($s_filetype) - 1) ==
    StringTrimLeft($s_filetype, 1)) And (StringLeft($s_weitersuchen,
    StringLen($s_filename)) == $s_filename) Then
    $i_ubound = UBound($a_found, 1)
    ReDim $a_found[$i_ubound + 1]
    $a_found[$i_ubound] = $s_path & $s_weitersuchen
    EndIf
    Else
    $i_ubound = UBound($a_found, 1)
    ReDim $a_found[$i_ubound + 1]
    $a_found[$i_ubound] = $s_path & $s_weitersuchen
    EndIf
    EndIf
    WEnd
    $a_found[0] = UBound($a_found) - 1
    Return $a_found
    Else
    Return SetError(-1)
    EndIf
    EndFunc

    [/autoit]
  • pc sperren - mit windows eigener tastenkombi

    • RedHead
    • 14. Oktober 2012 um 16:34

    danke für den vorschlag ;) aber klappt auch nicht :(

    naja ist auch egal...das ziel wurde ja mit

    [autoit]

    Func _LockIt()
    Run("rundll32.exe user32.dll,LockWorkStation")
    EndFunc

    [/autoit]

    erreicht :)

  • pc sperren - mit windows eigener tastenkombi

    • RedHead
    • 13. Oktober 2012 um 14:11

    ne klappt auch nicht :( zumindest nicht bei mir :)

  • Stack-Overflow

    • RedHead
    • 13. Oktober 2012 um 14:07

    wäre nützlich wenn du dein script postest ;)

  • pc sperren - mit windows eigener tastenkombi

    • RedHead
    • 13. Oktober 2012 um 14:06

    ok danke :) so gehts natürlich auch :)

    weiß trotzdem jemand wie man die tastenkombi richtig sendet?? :)

  • pc sperren - mit windows eigener tastenkombi

    • RedHead
    • 12. Oktober 2012 um 17:17

    hi leute...
    ich möchte das mein pc bei einer bestimmten aktion einfach gesperrt wird und erst durch passwort eingabe wieder entsperrt wird :) ich weiß das es dafür schon einige autoit - programme gibt, allerdings wollte ich die windows eigene sperrfunktion nutzen ;) die wird unter windows 7 durch die tastenkombi "win-taste + L" aktiviert ;) und genau diese tastenkombi soll bei mir auch gesendet werde allerdings bekomme ich das nicht hin :( wahrscheinlich ist das mal wieder so einfach und banal das ich einfach nicht drauf kommen :D
    ich wollte mit

    [autoit]

    Send("{LWIN}{L}")

    [/autoit]

    die tastenkombi senden, allerdings klappt das nicht :( das startmenü beginnt dann lediglich nach programmen mit "L" an zu suchen und sperrt nicht den pc :( weiß jemand wie ich das richtig senden kann?? :)

  • Counter hört früher auf als er sollte

    • RedHead
    • 25. September 2012 um 19:03

    du kannst es aber auch so machen ;) sind jetzt aber nur 9 sekunden ;)

    [autoit]

    _Wartezeit(9000)

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

    Func _Wartezeit($time)

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

    For $i = $time/1000 To 1 Step - 1
    ToolTip("Die Maus bewegt sich in : " & $i & " sec", 0, 0)
    Sleep(1000)
    Next
    ToolTip("Weiter...")
    Sleep(5000)
    EndFunc

    [/autoit]
  • Counter hört früher auf als er sollte

    • RedHead
    • 25. September 2012 um 14:09

    sicher das das dann bei 638 sekunden aufhört? :D da du $timer immer um 1000 verringerst und dann mit Timediff() abgleichst wird timediff() bereits nach der hälfte der gewollten ziet größer sein und die schleife beendet sich ;)

    habs mit

    [autoit]

    _Wartezeit(90000)

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

    Func _Wartezeit($time)
    $tstart = TimerInit()
    Do
    ToolTip("Die Maus bewegt sich in : " & $time / 1000 & " sec", 0, 0)
    Sleep(1000)
    $time -= 1000
    Until TimerDiff($tstart) >= $time
    ToolTip("Weiter") ; wird nicht angezeigt
    Sleep(2000)
    EndFunc

    [/autoit]


    geteste ;) da ich nicht 900 sekunden warten wollte, habe ich einfach 90 sekunden genommen :) und da hört es dann nach 45 sekunden (also die hälfte auf) ;)

  • Compile Script Problem & Script Vereinfachen

    • RedHead
    • 8. September 2012 um 20:27
    Zitat von Muffel

    ich scheitere schon im Programm ein Reiter zu wechseln

    was ist das denn für ein programm? :)

    Zitat von Muffel

    Wie setze ich das um das sich ein Counter im GUI Menu unter der Anzeige, wann es gestartet wurde, angezeigt wird. Er soll nur Optisch machen wann sich die Maus wieder bewegt.

    was für ein counter soll das denn sein? was zählt der counter denn? :)
    oder wie soll ich das verstehen? :)

  • Moin Moin

    • RedHead
    • 4. September 2012 um 19:12

    Herzlich Willkommen ;)

  • GUICtrlCreate Problem mit Spalte

    • RedHead
    • 4. September 2012 um 16:22

    und dann noch

    [autoit]

    $chkName = StringTrimLeft($WahlSplit[$i], 3)

    [/autoit]

    in

    [autoit]

    $chkName = StringTrimLeft($WahlSplit[$i + 1], 3)

    [/autoit]

    abändern ;)

  • GUICtrlCreate Problem mit Spalte

    • RedHead
    • 4. September 2012 um 16:21

    änder mal

    [autoit]

    For $i = 1 To $WahlSplit[0]-1

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

    next

    [/autoit]


    in

    [autoit]

    for $i = 0 to $wahlsplit[0] - 2

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

    next

    [/autoit]


    ab ;)

    dann dürfte es klappen :)

  • Bei mehreren Checkboxen nur eine auswählbar machen

    • RedHead
    • 3. September 2012 um 21:38

    ich würde dafür keine checkbox nehmen sonder radiobutton ;)

    und guck dir mal den befehl

    [autoit]

    GUICtrlCreateGroup()

    [/autoit]

    an ;)

  • speicherverbrauch nimmt immer weiter zu

    • RedHead
    • 3. September 2012 um 21:35

    ach ja...das mit dem "fileclose()" habe ich irgendwie übersehen 8|
    danke ;)

  • Auch von mir ein Hallöchen! xd

    • RedHead
    • 3. September 2012 um 21:34

    herzlich willkommen :)


    ich habe eine frage an dich (hoffentlich kränke ich dich damit jetzt nicht, da es sich um dein handykap handelt)...aber wie stellst du das programmieren an, wenn du blind bist?
    ließt dir dann eine software immer vor was du gerade schreibst oder wie soll ich mir das vorstellen?

    sollte ich dich jetzt mit der frage in irgendeiner weiße gekränkt haben tut es mir leit.
    es gibt nun mal leute denen es sehr unangenehm ist, wenn man sie auf ihr handykap anspricht und da ich dich nicht kenne weiß ich nicht wie du darauf reagierst!

  • speicherverbrauch nimmt immer weiter zu

    • RedHead
    • 3. September 2012 um 17:01
    Zitat von Shadowigor

    Ich glaube das ist normal. Beobachte mal andere Programme. Ich glaube bei denen verhält es sich ähnlich. Woran das genau liegt, kann ich dir aber nicht sagen.


    also ich habe ja kein anderes programm welches die ganze zeit im hintergrund läuft bzw. eins das sehr lange läuft...also kann ich das nicht vergleichen ;) aber trotzdem danke für den vorschlag :)

    Zitat von AspirinJunkie

    Du rufst dauernd die Funktion _GetCPUUsed() auf.

    In dieser wird bei jedem Aufruf ein neues WMI-Objekt erstellt und die Werte komplett neu abgefragt.

    Besser wäre es das WMI-Objekt nur einmal zu erstellen in dem man es global erstellt oder als Static deklariert.

    Eine Alternative wäre es, das dafür vorgesehene WMI-Refresher-Objekt einzusetzen.

    ok danke für den tipp :) werde ich abändern ;)

    Zitat von Sol.LrMartyn

    Könnte dies einfach an While-Schleifen und anderem liegen? Oder aber der PC speichert ohne dein Wissen einfach Daten deines Programmes vorrätig in den RAM sodass es schneller aufrufbar ist? Oder habe ich da was missverstanden.

    das programm läuft ja die ganze zeit im hintergrund ;) muss also nur einmal gestartet werden und fertig ;)


    ich werde den teil mit _GetCPUUsed() einmal überarbeiten und dann mal schauen ob sich da was geändert hat :)
    danke für die vorschläge ;)

  • speicherverbrauch nimmt immer weiter zu

    • RedHead
    • 1. September 2012 um 17:23

    hi leute...
    ich habe mir eine art "background" programm geschrieben was die ganze zeit im hintergrund läuft und von mir ständig erweitert wird...das programm besteht im groben aus einer schleife die alle 2.5 sekunden durch läuft :) so weit so gut zum programm :)

    nun zum "problem"...das programm benötigt am anfang gerade mal 3.056 kilobytes vom arbeitsspeicher..das ist ja recht wenig, da ich ja auch die priorität auf niedrig gesetzt habe :) allerdings steigt der speicherverbrauch nach ein paar stunden auf 24.012 kilobytes und mehr an :( das ist ja immer noch nicht viel, allerdings würde ich gerne wissen woran das liegt das der speicherverbrauch immer weiter annimmt :)

    weiß jemand woran das vielleicht liegen könnte? :)

    hier mal mein script

    Spoiler anzeigen
    [autoit]

    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Icon=Background.ico
    #AutoIt3Wrapper_Outfile=Z:\BackUps\AutoIt - Scripts\##Fertig\Background\Background.exe
    #AutoIt3Wrapper_Outfile_x64=Background.exe
    #AutoIt3Wrapper_Res_Language=1031
    #AutoIt3Wrapper_Res_requestedExecutionLevel=asInvoker
    #AutoIt3Wrapper_Tidy_Stop_OnError=n
    #AutoIt3Wrapper_Res_FileVersion=1.12.33.0
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    ; =====================================================================
    ; Variablen defnieren
    ; =====================================================================
    Global Const $s_autorun_keyname = "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run"
    Global Const $s_valuename = "Background"
    Global Const $s_path = @ScriptDir & "\Background.exe"
    Global Const $s_ini_path = @ScriptDir & "\Background.ini"
    Global $a_tray_menue[6] = ["WinTimeKill öffnen", "PC reinigen", "", "Über...", "", "Beenden"]
    Global $a_tray_onevent[6] = ["_OpenWinTimeKill", "_CleanPC", "_Default", "_About", "", "_Terminate"]
    ; =====================================================================
    ; Vorbereitung
    ; =====================================================================
    Sleep(1000)

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

    If Not IsAdmin() Then
    Exit
    EndIf

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

    Opt("WinTitleMatchMode", 2)
    Opt("TrayOnEventMode", 1)
    Opt("TrayMenuMode", 3)

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

    Sleep(5000)

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

    $a_path = _FileGetType()

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

    If $a_path[1] = "exe" Then
    ProcessSetPriority($a_path[0] & "." & $a_path[1], 0)
    RegRead($s_autorun_keyname, $s_valuename)
    If @error Then RegWrite($s_autorun_keyname, $s_valuename, "REG_SZ", $s_path)
    EndIf

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

    Sleep(5000)

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

    _DriveInkOnDesktopStartUp()
    ; =====================================================================
    ; =====================================================================
    ; Hauptprogramm
    ; =====================================================================
    ; =====================================================================
    If @WDAY == 6 Then
    MsgBox(64, "Spartacus - Info", "Eine neue Folge von 'Spartacus' erscheint heute!" & @CRLF & "Der Link befindet sich im Zwischenspeicher!", 5)
    ClipPut("http://www.myvideo.de/channel/spartacus")
    EndIf

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

    For $i = 0 To UBound($a_tray_menue, 1) - 1
    $a_tray_menue[$i] = TrayCreateItem($a_tray_menue[$i])
    TrayItemSetOnEvent($a_tray_menue[$i], $a_tray_onevent[$i])
    Next

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

    While Sleep(2500)
    _CreateDriveInkOnDesktop()
    If _GetCPUUsed() > 45 Then
    Do
    Sleep(10000)
    Until _GetCPUUsed() < 35
    EndIf
    Select
    Case ProcessExists("farcry2.exe")
    ProcessWaitClose("farcry2.exe")
    Sleep(2000)
    DirCopy("C:\Users\RedHead\Documents\My Games\Far Cry 2", "Z:\BackUps\Spielstände\My Games\Far Cry 2", 1)
    MsgBox(64, "FarCry 2 - Info", "Fertig kopiert!", 3)
    Case WinExists("Fehlerhafter oder fehlender AVI-Index")
    WinActivate("Fehlerhafter oder fehlender AVI-Index")
    For $x = 0 To 5 Step 1
    MouseClick("left", Random(770, 790, 1), Random(490, 500, 1))
    Sleep(500)
    Next
    Sleep(5000)
    If WinExists("Repariere AVI-Index...") Then
    WinKill("Repariere AVI-Index...")
    Sleep(400)
    WinActivate("VLC")
    Sleep(400)
    Send("{n}")
    EndIf
    Case ProcessExists("BattlefrontII.exe")
    ProcessWaitClose("BattlefrontII.exe")
    If MsgBox(64 + 4, "BattelfrontII - Info", "Ein BackUp der Spielstände anlegen?") = 6 Then
    DirCopy("C:\Spiele\BFII\GameData\SaveGames", "Z:\BackUps\Spielstände\AutoIt-Background\BattelfrontII", 1)
    DirCopy("C:\Spiele\BFII\GameData\SaveGames", "Z:\Startkid\Star Wars Battelfront 2\SaveGames", 1)
    MsgBox(64, "BattelfrontII - Info", "Fertig kopiert!", 3)
    EndIf
    Case WinExists("Facebook - anmelden")
    If MsgBox(4 + 262144 + 32, "Facebook - Info", "Anmelden?") = 6 Then
    ;die stellen hier habe ich natürlich entfernt :P
    Else
    Sleep(10000)
    EndIf
    EndSelect
    WEnd

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

    Func _About()
    Return MsgBox(64, "Über...", "Autor:" & @TAB & "RedHead!" & @CRLF & "Version:" & @TAB & FileGetVersion(@ScriptFullPath))
    EndFunc

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

    Func _OpenWinTimeKill()
    ShellExecute(@ScriptDir & "\WinTimeKill.exe")
    If @error Then MsgBox(48, "Error", "WinTimeKill.exe konnte nicht gestartet werden!" & @CRLF & _
    "Wahrscheinlich befindet sich die Datei nicht mir am angegebenen Ort" & @CRLF & _
    "oder wurde gelöscht!")
    EndFunc

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

    Func _CleanPC()
    Local $s_PathAuslogicsRegistryCleaner = "C:\Utils\Auslogics Registry Cleaner\RegCleaner.exe"
    Local $s_PathCCleaner = "C:\Utils\CCleaner\CCleaner64.exe"

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

    If ProcessExists("firefox.exe") Then Return MsgBox(16, "Achtung!", "Firefox muss geschlossen sein!")
    ShellExecute($s_PathCCleaner)
    If Not @error Then
    WinWait("Piriform CCleaner")
    $s_title = WinGetTitle("Piriform CCleaner")
    Sleep(200)
    ControlClick($s_title, "", "Button1")
    Do
    Sleep(1000)
    Until ControlCommand($s_title, "", "Button3", "IsEnabled", "")
    Sleep(500)
    ControlClick($s_title, "", "Button3")
    Sleep(500)
    Do
    Sleep(1000)
    Until ControlCommand($s_title, "", "Button3", "IsEnabled", "")
    Sleep(500)
    ControlClick($s_title, "", "Button5")
    Sleep(500)
    ControlClick($s_title, "", "Button2")
    Sleep(500)
    ;~ Do
    ;~ Sleep(1000)
    ;~ Until ControlCommand($s_title, "", "Button3", "IsEnabled", "")
    ;~ Sleep(15000)
    ;~ Sleep(500)
    ;~ ControlClick($s_title, "", "Button3")
    ;~ Sleep(500)
    ;~ WinWait("CCleaner")
    ;~ ControlClick("CCleaner", "", "Button1")
    ;~ Sleep(500)
    ;~ WinWait("Speichern unter")
    ;~ Sleep(500)
    ;~ ControlClick("Speichern unter", "", "Button1")
    Do
    Sleep(1000)
    MsgBox(64, "INFO", "Bitte 'CCleaner' schließen!", 5)
    Until Not ProcessExists("CCleaner64.exe")
    Else
    MsgBox(16, "ERROR!", "'CCleaner' befindet sich nicht am angegebenen Pfad!")
    EndIf

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

    ShellExecute($s_PathAuslogicsRegistryCleaner)
    If Not @error Then
    WinWait("Auslogics Registry Cleaner")
    $s_title = WinGetTitle("Auslogics Registry Cleaner")
    ControlClick($s_title, "", "TAxDropDownButton201")
    Do
    Sleep(100)
    Until ControlCommand($s_title, "", "TButton1", "IsVisible")
    ControlClick($s_title, "", "TButton1")
    Sleep(500)
    ProcessClose("RegCleaner.exe")
    Else
    MsgBox(16, "ERROR!", "'RegistryCleaner' befindet sich nicht am angegebenen Pfad!")
    EndIf

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

    EndFunc

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

    Func _Default()
    Return 0
    EndFunc

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

    Func _Terminate()
    Exit
    EndFunc

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

    Func _FileGetType($s_path = @ScriptFullPath)
    Local $a_file[2]
    If StringRegExp(StringLeft($s_path, 1), "[a-zA-Z]") And StringMid($s_path, 2, 1) == ":" Then
    $a_path = StringSplit($s_path, "\")
    $a_path = StringSplit($a_path[$a_path[0]], ".")
    $a_file[0] = $a_path[1]
    $a_file[1] = $a_path[2]
    Return $a_file
    Else
    Return SetError(-1)
    EndIf
    EndFunc

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

    Func _DriveInkOnDesktopStartUp()
    Local $a_drive = DriveGetDrive("ALL")
    Local $a_driveondesktop = _GetDriveInkOnDesktop()
    Local $f_notfound = True, $s_drivelabel = ""

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

    If $a_drive[0] <> $a_driveondesktop[0] Then
    For $i = 1 To $a_drive[0]
    $a_drive[$i] = StringUpper(StringLeft($a_drive[$i], 1)) & ":"
    $f_notfound = True
    For $x = 1 To $a_driveondesktop[0]
    If StringLeft($a_drive[$i], 1) = StringMid($a_driveondesktop[$x], 2, 1) Then $f_notfound = False
    Next
    If $f_notfound Then
    $s_drivelabel = DriveGetLabel($a_drive[$i])
    If @error Then $s_drivelabel = "UNKNOWN"
    FileCreateShortcut($a_drive[$i] & "\", @DesktopDir & "\(" & StringLeft($a_drive[$i], 1) & ") - " & $s_drivelabel)
    EndIf
    Next
    EndIf
    EndFunc

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

    Func _CreateDriveInkOnDesktop()
    Local $a_drive = DriveGetDrive("ALL")
    Local $a_driveondesktop = _GetDriveInkOnDesktop()
    Local $f_notfound = True, $s_drivelabel = "", $f_delete = True, $f_nichtidentisch = True

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

    If $a_drive[0] <> $a_driveondesktop[0] Then
    For $i = 1 To $a_drive[0]
    $a_drive[$i] = StringUpper(StringLeft($a_drive[$i], 1)) & ":"
    $f_notfound = True
    For $x = 1 To $a_driveondesktop[0]
    If StringLeft($a_drive[$i], 1) = StringMid($a_driveondesktop[$x], 2, 1) Then $f_notfound = False
    Next
    If $f_notfound Then
    $s_drivelabel = DriveGetLabel($a_drive[$i])
    If @error Then $s_drivelabel = "UNKNOWN"
    FileCreateShortcut($a_drive[$i] & "\", @DesktopDir & "\(" & StringLeft($a_drive[$i], 1) & ") - " & $s_drivelabel)
    EndIf
    Next
    For $i = 1 To $a_driveondesktop[0]
    $f_delete = True
    For $x = 1 To $a_drive[0]
    If StringMid($a_driveondesktop[$i], 2, 1) = StringLeft($a_drive[$x], 1) Then $f_delete = False
    Next
    If $f_delete Then FileDelete(@DesktopDir & "\" & $a_driveondesktop[$i])
    Next
    EndIf
    EndFunc

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

    Func _GetDriveInkOnDesktop()
    Local $h_search = FileFindFirstFile(@DesktopDir & "\*")
    Local $s_inkfiles = "", $a_array[1] = [0]

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

    While 1
    $s_file = FileFindNextFile($h_search)
    If @error Then ExitLoop
    If StringLeft($s_file, 1) = "(" And StringRegExp(StringMid($s_file, 2, 1), "[a-zA-Z]") And StringMid($s_file, 3, 1) = ")" Then $s_inkfiles &= $s_file & "|"
    WEnd

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

    If $s_inkfiles = "" Then
    Return $a_array
    Else
    Return StringSplit(StringTrimRight($s_inkfiles, 1), "|")
    EndIf
    EndFunc

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

    Func _GetCPUUsed()
    Local $wbemFlags = 0x10 + 0x20
    Local $strComputer = @ComputerName

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

    Local $objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
    Local $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_Processor", "WQL", $wbemFlags)

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

    Local $c = 0
    Local $sMsg = ""

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

    For $objItem In $colItems
    $sMsg &= "cpu%" & $objItem.LoadPercentage
    Next

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

    $CpuAuslastung = StringSplit($sMsg, "cpu%", 1)

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

    For $n = "0" To $CpuAuslastung[0]
    $c += $CpuAuslastung[$n]
    Next

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

    Return (Round($c / $CpuAuslastung[0], 0))
    EndFunc

    [/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™