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

Beiträge von Skilkor

  • mp3 Searcher

    • Skilkor
    • 29. Juli 2010 um 17:02

    na das ist ja Wunderbar :D

    nur hab ich schon ein Problem festgestellt...
    Wen ich auf der Spalte "Titel" Auf nen Song doppelklicke, nimmt er den Ersten im ListView
    Wen ich auf "Artist" den zweiten eintrag
    bei "Legth" den Dritten
    bei "Album" den 4 uws... ^^


    Ich habe noch was wie folgt abgeändert.

    Spoiler anzeigen

    Von

    [autoit]

    Case $GUI_EVENT_CLOSE ; User hat auf das Schließen-Symbol geklickt
    If MsgBox(32 + 4, 'Beenden', 'Wollen sie das Programm wirklich beenden?') = 6 Then _End() ; wenn ja, dann End-Funktion aufrufen

    [/autoit]


    Zu

    [autoit]

    Case $GUI_EVENT_CLOSE ; User hat auf das Schließen-Symbol geklickt
    _End() ; wenn ja, dann End-Funktion aufrufen

    [/autoit]


    Und noch
    Von

    [autoit]

    Func _End()
    ;~ Save() ; wenn der vordere Kommentar entfernt wird, dann werden vor dem beenden noch die Daten gespeichert
    Exit ; Programm beenden
    EndFunc ;==>End

    [/autoit]


    zu

    [autoit]

    Func _End()
    If MsgBox(32 + 4, 'Save', 'Wollen sie vor beenden noch Speichern?') = 6 Then Save() ;Fragt bei Beendung ob man noch Speichern möchte. Ja Then Save / Nein Then Exit
    Exit ; Programm beenden
    EndFunc ;==>End

    [/autoit]


    Da mich persönlich das "Dauernde" Fragen ob ich Wirklich Beenden will, doof finde ^^
    is meiner meinung nach Besser wen man´s dan so mach,ob man noch Speichern will :D *Find ich*

  • mp3 Searcher

    • Skilkor
    • 29. Juli 2010 um 14:58
    Zitat

    Mit "Geschwindikeit ohne Speichern" meinst Du vermutlich das einlesen/durchsuchen der Festplatten, oder?


    100% :D

    Um die resourcen mach ich mir sowas von keine Sorgen ^^ bei keinem "Heutigen" Rechner.

    Ich würd mir dan Sorgen machen, wen einer kommt und Fragen würde

    Zitat

    Das prog, läuft laut Berichten auf WIN Xp - Vista & 7 einwahnfrei, sowohl 32 bit als auch 64 bit.... Wie sieht es aber mit win 98 aus?

    Ab dem Punkt, müsst ich Passen xD
    und *nur mal so am rande* Es gibt Heute noch Leute die win 98 verwenden oO kein witz

    Ja das mit dem löschen ging vorher Schneller ^^ Du musst es ja nict so machen das es GLEICHZEITIG den Markierten ListView Eintrag UND den Eintrag in der .ini Löscht.
    Das braucht dan wie jetz einen enormen Zeitaufwand ^^
    Mach es Lieber so wie vorhin, das es NUR den ListViwe eintrag Löscht, dann muss man halt nach dem Löschen Speichern? Das is doch kein ding, Ist bei Games genauso ^^ (Wen man kein autosave Patch verwendet xD)

    Feedback 1.1
    Ich habs jetz mal mit 9k Einträgen zum löschen versucht.......
    *Er löscht seid 15min*
    HA!?!?!?!
    Grade eben hat er das Löschen begonnen oO wiso erst jetz? kA :D Erklärungs Not ^^
    Der eigentliche löschvorgang dauert keine Minute.
    Aber wiso muss es Bevor es lösch nch was initzialisieren?? (Auch wens ned da Steht, ich kanns ned anders ausdrücken) :D

  • mp3 Searcher

    • Skilkor
    • 29. Juli 2010 um 14:31

    Moin

    Uff, dass mit dem 2D-Array wusst ich nicht :S wen ichs gewusst hätt,hett ichs gelassen ^^

    Mein Performance Feedback
    bei meinem system
    CPU - Intel Dualcore E6750 (20% Overclock)
    4GB Ram
    Graka - ATI XFX 4870 (15%Overclocked)
    braucht das Prog
    1-12% CPU (Schwankend)
    13,6MB Ram zu Beginn
    16-21% CPU beim Tag auslesen
    am ende des Programmes
    (Nach dem er 3 HD´s und rund 20´000 Files gefunden hat)
    Braucht das Prog um die 83,15MBRAM

    Geschwindikeit ohne Speichern
    9-10min bei 20´000

    Speichern
    28Sec

    Laden
    4Sec

    Sortieren(Artist)
    20Sec

    Beim Löschen via Del taste von etwa 90 Eintägen
    braucht knap 1min

  • mp3 Searcher

    • Skilkor
    • 29. Juli 2010 um 01:20

    Du bist ja mir Eifer und fleiss daran ^^ Hats dich Gepackt wie :D Freut mich wirklich Sehr :D:D

    Ich habe das Fenster n bissl angepasst

    Spoiler anzeigen

    bei

    [autoit]

    Global $iWidth = @DesktopWidth - 100

    [/autoit]


    Hab ich

    [autoit]

    Global $iWidth = @DesktopWidth - 500

    [/autoit]


    So bekomm ichs auf beide Bildschierme (Habn 22" Main und n 17"Second) ^^

    Auserdem hab ich das Löschen der Markierung per Tastendruck noch eingefügt

    [autoit]

    HotKeySet("{DEL}", "_hDelObj")

    [/autoit]


    Unterhalb von

    [autoit]

    Global $fStop = False, $iLVCount = 0
    HotKeySet('{ESC}', '_Stop')

    [/autoit]


    und dir func dazu halt

    [autoit]

    Func _hDelObj()
    _GUICtrlListView_DeleteItemsSelected($hLVHandle)
    $iCount = 0
    EndFunc

    [/autoit]


    Und die Buttons bissl zusammen Gerückt
    Von

    [autoit]

    Global $hSearch = GUICtrlCreateButton('Alle Festplatten durchsuchen', 10, 430, 160, 35, $BS_MULTILINE)
    Global $hLoad = GUICtrlCreateButton('Laden', 230, 430, 70, 35)
    Global $hSave = GUICtrlCreateButton('Speichern', 310, 430, 70, 35)
    Global $hDel = GUICtrlCreateButton("Markierte Einträge löschen", 400, 430, 90, 35, $BS_MULTILINE)
    Global $hDelAll = GUICtrlCreateButton('Alle Einträge löschen', 500, 430, 90, 35, $BS_MULTILINE)

    [/autoit]


    zu

    [autoit]

    Global $hSearch = GUICtrlCreateButton('Alle Festplatten durchsuchen', 10, 430, 160, 35, $BS_MULTILINE)
    Global $hLoad = GUICtrlCreateButton('Laden', 180, 430, 70, 35)
    Global $hSave = GUICtrlCreateButton('Speichern', 260, 430, 70, 35)
    Global $hDel = GUICtrlCreateButton("Markierte Einträge löschen", 340, 430, 90, 35, $BS_MULTILINE)
    Global $hDelAll = GUICtrlCreateButton('Alle Einträge löschen', 440, 430, 90, 35, $BS_MULTILINE)

    [/autoit]

    Das ganze sieht dan So aus

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>
    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GuiListView.au3>
    #include <GuiStatusBar.au3>
    #include <ListViewConstants.au3>

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

    Global $sHeader = 'Title|Artist|Album|Year|Length|MPEG-Version|Bitrate|Sample-Freq.|Path' ; Die Überschriften für das Listview
    Global $sDBFile = @ScriptDir & '\MP3_Collection.txt' ; Pfad und Name der Datenbank-Datei

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

    #region Hauptfenster
    Global $iWidth = @DesktopWidth - 500
    Global $hGui = GUICreate('MP3-Search', $iWidth, 500) ; Hauptfenster erstellen
    GUISetBkColor(0xAAAAAA)
    Global $hListView = GUICtrlCreateListView($sHeader, 5, 5, $iWidth - 10, 420, $LVS_SHOWSELALWAYS) ; Listview erstellen
    Global $aListview[1][9]
    Global $hLVHandle = GUICtrlGetHandle($hListView) ; das Handle vom Listview wird für die UDF-Listview-Funktionen benötigt
    _GUICtrlListView_SetColumn($hLVHandle, 0, "Title", 180, 0)
    _GUICtrlListView_SetColumn($hLVHandle, 1, "Artist", 180, 0)
    _GUICtrlListView_SetColumn($hLVHandle, 2, "Length", 60, 0)
    _GUICtrlListView_SetColumn($hLVHandle, 3, "Album", 120, 0)
    _GUICtrlListView_SetColumn($hLVHandle, 4, "Year", 60, 0)
    _GUICtrlListView_SetColumn($hLVHandle, 5, "MPEG-Version", 100, 0)
    _GUICtrlListView_SetColumn($hLVHandle, 6, "Bitrate", 100, 0)
    _GUICtrlListView_SetColumn($hLVHandle, 7, "Sample-Freq.", 90, 0)
    _GUICtrlListView_SetColumn($hLVHandle, 8, "Path", 500, 0)

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

    Global $hSearch = GUICtrlCreateButton('Alle Festplatten durchsuchen', 10, 430, 160, 35, $BS_MULTILINE)
    Global $hLoad = GUICtrlCreateButton('Laden', 180, 430, 70, 35)
    Global $hSave = GUICtrlCreateButton('Speichern', 260, 430, 70, 35)
    Global $hDel = GUICtrlCreateButton("Markierte Einträge löschen", 340, 430, 90, 35, $BS_MULTILINE)
    Global $hDelAll = GUICtrlCreateButton('Alle Einträge löschen', 440, 430, 90, 35, $BS_MULTILINE)

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

    Global $aParts[3] = [180, 240, -1], $aText[3] = ['Fertig.', '0', '']
    Global $hStatus = _GUICtrlStatusBar_Create($hGui, $aParts, $aText)
    #endregion Hauptfenster

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

    GUISetState(@SW_SHOW, $hGui) ; Hauptfenster sichtbar machen

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

    Global $fStop = False, $iLVCount = 0
    HotKeySet('{ESC}', '_Stop')

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

    HotKeySet("{DEL}", "_hDelObj")

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

    While 1
    Switch GUIGetMsg() ; anhand der Control-ID das entsprechende Case aufrufen
    Case $hSearch
    _GUICtrlListView_DeleteAllItems($hLVHandle) ; Alle Listview-Einträge löschen
    $iLVCount = 0 ; Zähler auf Null setzen
    $aDrives = DriveGetDrive('FIXED') ; Alle Festplatten-Buchstaben holen
    ;~ Dim $aDrives[2] = [1, 'c:']
    If Not @error Then
    GUISetCursor(15, 1, $hGui)
    For $i = 1 To $aDrives[0] ; Alle Festplatten durchgehen
    $aDrives[$i] = StringUpper($aDrives[$i]) & '\'
    _GUICtrlStatusBar_SetText($hStatus, 'Durchsuche Festplatte "' & $aDrives[$i] & '"', 0)
    _GUICtrlStatusBar_SetText($hStatus, 'Bitte warten...', 2)
    $aNewMP3 = _RecursiveFileListToArray($aDrives[$i], '\.mp3', 1) ; Alle MP3s auf der Festplatte auslesen
    If Not @error Then
    _GUICtrlListView_SetItemCount($hListView, $iLVCount + $aNewMP3[0])
    ConsoleWrite('$iLVCount = ' & $iLVCount & @CR & '$aNewMP3[0] = ' & $aNewMP3[0] & @CR)
    ReDim $aListview[$iLVCount + $aNewMP3[0] + 1][9]
    _GUICtrlStatusBar_SetText($hStatus, 'Lese ID3-Tags... (' & UBound($aListview) & ')', 0)
    For $j = 1 To $aNewMP3[0] ; die gefundenen MP3s durchgehen
    _GUICtrlStatusBar_SetText($hStatus, $iLVCount, 1)
    $aID3Tags = _ReadID3Tag($aNewMP3[$j]) ; die ID3-Tags auslesen
    If Not @error Then
    For $k = 0 To 10
    $aID3Tags[$k][1] = StringReplace($aID3Tags[$k][1], '|', '') ; evtl. vorhandene "|" entfernen
    Next
    _GUICtrlStatusBar_SetText($hStatus, $aNewMP3[$j], 2)
    $sNewItem = $aID3Tags[0][1] & '|' & $aID3Tags[1][1] & '|' & $aID3Tags[4][1] & '|' & $aID3Tags[2][1] & '|' & $aID3Tags[3][1]
    $sNewItem &= '|' & $aID3Tags[8][1] & '|' & $aID3Tags[9][1] & '|' & $aID3Tags[10][1] & '|' & $aNewMP3[$j]
    $aItem = StringSplit($sNewItem, '|')
    For $k = 1 To $aItem[0]
    $aListview[$iLVCount][$k - 1] = $aItem[$k]
    Next
    GUICtrlCreateListViewItem($sNewItem, $hListView)
    $iLVCount += 1
    EndIf
    If $fStop Then ExitLoop 2 ; Wenn [ESC] gedrückt wurde, die Schleifen verlassen
    Next
    ReDim $aListview[$iLVCount][9]
    EndIf
    Next
    GUISetCursor(2, 1, $hGui)
    EndIf
    _GUICtrlStatusBar_SetText($hStatus, $iLVCount, 1)
    _GUICtrlStatusBar_SetText($hStatus, '', 2)
    If $fStop Then
    $fStop = False
    _GUICtrlStatusBar_SetText($hStatus, 'Abgebrochen!', 0)
    Else
    _GUICtrlStatusBar_SetText($hStatus, 'Fertig.', 0)
    EndIf
    Case $hListView ; User hat auf eine Spaltenüberschrift geklickt
    If $iLVCount > 0 Then
    GUISetCursor(15, 1, $hGui)
    _GUICtrlStatusBar_SetText($hStatus, 'Sortiere Daten...', 0)
    $iSort = GUICtrlGetState($hListView)
    $iTimer = TimerInit()
    ConsoleWrite('Start Sort col: ' & $iSort & @CR)
    _ArraySort($aListview, 0, 0, 0, $iSort)
    ConsoleWrite('Sort: ' & Int(TimerDiff($iTimer)) & ' ms' & @CR)
    _GUICtrlListView_DeleteAllItems($hLVHandle)
    ConsoleWrite('Delete all: ' & Int(TimerDiff($iTimer)) & ' ms' & @CR)
    _GUICtrlListView_BeginUpdate($hLVHandle) ; Listview sperren
    _GUICtrlListView_AddArray($hLVHandle, $aListview)
    _GUICtrlListView_EndUpdate($hLVHandle) ; Listview wieder freigeben
    ConsoleWrite('Create new: ' & Int(TimerDiff($iTimer)) & ' ms' & @CR)
    ConsoleWrite('End.' & @CR)
    _GUICtrlStatusBar_SetText($hStatus, 'Fertig.', 0)
    GUISetCursor(2, 1, $hGui)
    EndIf
    Case $hLoad ; User hat auf 'Laden' geklickt
    GUISetCursor(15, 1, $hGui)
    _GUICtrlStatusBar_SetText($hStatus, 'Lade Daten...', 0)
    Load()
    _GUICtrlStatusBar_SetText($hStatus, 'Fertig.', 0)
    GUISetCursor(2, 1, $hGui)
    Case $hSave ; User hat auf 'Speichern' geklickt
    GUISetCursor(15, 1, $hGui)
    _GUICtrlStatusBar_SetText($hStatus, 'Speichere Daten...', 0)
    Save()
    _GUICtrlStatusBar_SetText($hStatus, 'Fertig.', 0)
    _GUICtrlStatusBar_SetText($hStatus, '', 2)
    GUISetCursor(2, 1, $hGui)
    Case $hDel
    $aSelectedItems = _GUICtrlListView_GetSelectedIndices($hLVHandle, True)
    If $aSelectedItems[0] > 0 Then
    GUISetCursor(15, 1, $hGui)
    For $i = $aSelectedItems[0] To 1 Step - 1
    _ArrayDelete($aListview, $aSelectedItems[$i])
    Next
    _GUICtrlListView_DeleteItemsSelected($hLVHandle)
    $iLVCount -= $aSelectedItems[0]
    _GUICtrlStatusBar_SetText($hStatus, $iLVCount, 1)
    GUISetCursor(2, 1, $hGui)
    EndIf
    Case $hDelAll ; User hat auf 'Alle Einträge löschen' geklickt
    If MsgBox(256 + 32 + 4, 'Einträge löschen', 'Wollen sie wirklich alle Einträge löschen?') = 6 Then
    _GUICtrlListView_DeleteAllItems($hLVHandle)
    ReDim $aListview[1][9]
    $iLVCount = 0
    _GUICtrlStatusBar_SetText($hStatus, $iLVCount, 1)
    EndIf
    Case $GUI_EVENT_CLOSE ; User hat auf das Schließen-Symbol geklickt (bzw. die ESC-Taste gedrückt)
    If MsgBox(32 + 4, 'Beenden', 'Wollen sie das Programm wirklich beenden?') = 6 Then End() ; wenn ja, dann End-Funktion aufrufen
    EndSwitch
    WEnd

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

    Func _hDelObj()
    _GUICtrlListView_DeleteItemsSelected($hLVHandle)
    $iCount = 0
    EndFunc

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

    Func _Stop()
    $fStop = True
    EndFunc ;==>_Stop

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

    Func End()
    ;~ Save() ; wenn der vordere Kommentar entfernt wird, dann werden vor dem beenden noch die Daten gespeichert
    Exit ; Programm beenden
    EndFunc ;==>End

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

    Func Load() ; Datenbank-Datei laden
    Local $hFile, $sContent, $aNewItems, $iTimer, $iCount, $aItem
    $hFile = FileOpen($sDBFile, 0) ; Datei zum lesen öffnen
    If $hFile <> -1 Then ; wenn das öffnen erfolgreich war, dann...
    $sContent = FileRead($hFile) ; Datei komplett einlesen
    FileClose($hFile) ; Datei schließen
    $sContent = StringTrimRight($sContent, 2) ; das letzte @CRLF entfernen
    $aNewItems = StringSplit($sContent, @CRLF, 1) ; Den Dateiinhalt am Zeilenende splitten
    If Not IsArray($aNewItems) Then Return ; Wenn $aNewItems kein Array ist, dann Funktion verlassen
    _GUICtrlListView_DeleteAllItems($hLVHandle)
    _GUICtrlListView_SetItemCount($hLVHandle, $aNewItems[0])
    Global $aListview[$aNewItems[0]][9]
    _GUICtrlStatusBar_SetText($hStatus, 'Lade Daten... (' & $aNewItems[0] & ')', 0)
    _GUICtrlListView_BeginUpdate($hLVHandle) ; Listview sperren
    $iTimer = TimerInit()
    For $i = 1 To $aNewItems[0] ; Alle Einträge des Arrays durchgehen
    $iCount += 1
    If TimerDiff($iTimer) > 100 Then
    $iTimer = TimerInit()
    _GUICtrlStatusBar_SetText($hStatus, $iCount, 1)
    EndIf
    $aItem = StringSplit($aNewItems[$i], '|')
    For $j = 1 To $aItem[0]
    $aListview[$i - 1][$j - 1] = $aItem[$j]
    Next
    GUICtrlCreateListViewItem($aNewItems[$i], $hListView) ; mit den eingelesenen Daten einen neuen Listview-Eintrag erstellen
    Next
    _GUICtrlStatusBar_SetText($hStatus, $iCount, 1)
    _GUICtrlListView_EndUpdate($hLVHandle) ; Listview wieder freigeben
    $iLVCount = UBound($aListview)
    EndIf
    EndFunc ;==>Load

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

    Func Save() ; Datenbank-Datei speichern
    Local $sContent, $hFile, $iCount, $iTimer
    $iCount = _GUICtrlListView_GetItemCount($hLVHandle); Anzahl der Listview-Einträge holen
    If $iCount = 0 Then Return ; Wenn das Listview keine Einträge enthält, dann Funktion verlassen
    $iTimer = TimerInit()
    For $i = 0 To $iCount - 1 ; Schleife, um alle Listview-Einträge durchzugehen
    $sContent &= _GUICtrlListView_GetItemTextString($hLVHandle, $i) & @CRLF
    If TimerDiff($iTimer) > 100 Then
    $iTimer = TimerInit()
    _GUICtrlStatusBar_SetText($hStatus, $i + 1, 2)
    EndIf
    Next
    $hFile = FileOpen($sDBFile, 2) ; Datei zum speichern (überschreiben) öffnen
    If $hFile <> -1 Then ; wenn das öffnen erfolgreich war, dann...
    FileWrite($hFile, $sContent)
    FileClose($hFile) ; Datei schließen
    EndIf
    EndFunc ;==>Save

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

    ;===============================================================================
    ; Function Name: _RecursiveFileListToArray($sPath[, $sPattern][, $iFlag][, $iFormat][, $iRecursion][, $sDelim])
    ; Description:: gibt Verzeichnisse (rekursiv) und/oder Dateien zurück, die einem RegExp-Pattern entsprechen
    ; Parameter(s): $sPath = Startverzeichnis
    ; $sPattern = ein beliebiges RexExp-Pattern für die Auswahl
    ; $iFlag = Auswahl
    ; 0 = Dateien & Verzeichnisse
    ; 1 = nur Dateien
    ; 2 = nur Verzeichnisse
    ; $iFormat = Rückgabeformat
    ; 0 = String
    ; 1 = Array mit [0] = Anzahl
    ; 2 = Nullbasiertes Array
    ; $iRecursion = Verzeichnisse rekursiv durchsuchen
    ; 0 = Nein
    ; 1 = Ja
    ; $sDelim = Trennzeichen für die String-Rückgabe
    ; Requirement(s): AutoIt 3.3.0.0
    ; Return Value(s): Array/String mit den gefundenen Dateien/Verzeichnissen
    ; Author(s): Oscar (http://www.autoit.de)
    ; Anregungen von: bernd670 (http://www.autoit.de)
    ;===============================================================================
    Func _RecursiveFileListToArray($sPath, $sPattern = '', $iFlag = 0, $iFormat = 1, $iRecursion = 1, $sDelim = @CRLF)
    Local $hSearch, $sFile, $sReturn = ''
    If StringRight($sPath, 1) <> '\' Then $sPath &= '\'
    $hSearch = FileFindFirstFile($sPath & '*.*')
    If @error Or $hSearch = -1 Then Return SetError(1, 0, $sReturn)
    While Not $fStop
    $sFile = FileFindNextFile($hSearch)
    If @error Then ExitLoop
    If @extended Then
    If StringRegExp($sPath & $sFile, $sPattern) And ($iFlag = 0 Or $iFlag = 2) Then $sReturn &= $sPath & $sFile & '\' & $sDelim
    If $iRecursion Then $sReturn &= _RecursiveFileListToArray($sPath & $sFile & '\', $sPattern, $iFlag, 0)
    ContinueLoop
    EndIf
    If StringRegExp($sFile, $sPattern) And ($iFlag = 0 Or $iFlag = 1) Then $sReturn &= $sPath & $sFile & $sDelim
    WEnd
    FileClose($hSearch)
    If $iFormat And $sReturn = '' Then Return StringSplit($sReturn, '', $iFormat)
    If $iFormat Then Return StringSplit(StringTrimRight($sReturn, StringLen($sDelim)), $sDelim, $iFormat)
    Return $sReturn
    EndFunc ;==>_RecursiveFileListToArray

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

    ;===============================================================================
    ; Function Name: _ReadID3Tag($sPath)
    ; Description:: gibt ein Array mit den Daten aus den ID3-Tags zurück
    ; unterstützt werden die ID3-Tag-Versionen 1.0, 1.1, 2.3 und 2.4
    ; bei v2.4 müssen sich die ID3-Tags am Anfang der Datei befinden
    ; Parameter(s): $sPath = Pfad zu einer MP3-Datei
    ; Requirement(s): min. AutoIt v3.3.0.0
    ; Return Value(s): bei Erfolg: Array mit den ID3-Tagdaten (@error = 0)
    ; im Fehlerfall bekommt @error:
    ; 1 = Datei existiert nicht
    ; 2 = Datei konnte nicht zum lesen geöffnet werden
    ; 3 = falsche ID3 v2 Version
    ; 4 = Datei ist keine MP3-Datei
    ; Author(s): Oscar (http://www.autoit.de)
    ;===============================================================================
    Func _ReadID3Tag($sPath)
    If Not FileExists($sPath) Then Return SetError(1, 0, 0)
    Local $hFile, $sData, $sID3Header, $iID3HeaderSize = 0, $iOffset, $iSize, $tmp
    Local $aID3v2Tags[8] = ['TIT2', 'TPE1', 'TALB', 'TYER', 'TLEN', 'TRCK', 'TCON', 'TENC']
    Local $aID3[11][2] = [ _
    ['Title', ''],['Artist', ''],['Album', ''],['Year', ''], _
    ['Length', '0'],['Track', ''],['Genre', ''],['Encoder', ''], _
    ['MPEG-Version', ''],['Bitrate', '-'],['Sample-Freq.', '']]
    Local $aMP3Version[4] = ['MPEG2.5', 'Reserved', 'MPEG2', 'MPEG1']
    Local $aMP3Layer[4] = ['Reserved', 'Layer III', 'Layer II', 'Layer I']
    Local $aMP3Bitrate[5][16] = [ _
    [000, 032, 064, 096, 128, 160, 192, 224, 256, 288, 320, 352, 384, 416, 448, 000], _
    [000, 032, 048, 056, 064, 080, 096, 112, 128, 160, 192, 224, 256, 320, 384, 000], _
    [000, 032, 040, 048, 056, 064, 080, 096, 112, 128, 160, 192, 224, 256, 320, 000], _
    [000, 032, 048, 056, 064, 080, 096, 112, 128, 144, 160, 176, 192, 224, 256, 000], _
    [000, 008, 016, 024, 032, 040, 048, 056, 064, 080, 096, 112, 128, 144, 160, 000]]
    Local $aSampleFreq[3][4] = [[44100, 48000, 32000, 0],[22050, 24000, 16000, 0],[11025, 12000, 8000, 0]]
    Local $sMP3FrameHeader, $iMP3Version, $sMP3Version, $sMP3Layer, $iMP3Bitrate, $iMP3SampleFreq
    Local $iVBRFrames = -1, $iVBRFilesize, $iVBRFlags
    $hFile = FileOpen($sPath, 16)
    If $hFile = -1 Then Return SetError(2, 0, 0)
    $sData = Binary(FileRead($hFile, 4))
    If BinaryMid($sData, 1, 3) = '0x494433' Then ; ID3 v2.x Kennung gefunden
    If (BinaryMid($sData, 4, 1) = '0x03') Or (BinaryMid($sData, 4, 1) = '0x04') Then ; nur v2.3 und 2.4
    FileRead($hFile, 2) ; 2 Bytes überspringen
    For $i = 0 To 3 ; berechne ID3-Headergröße (4 Bytes, jedoch nur jeweils die unteren 7 Bit)
    $iID3HeaderSize = BitShift($iID3HeaderSize, -7) + BitAND(Binary(FileRead($hFile, 1)), 0x7F)
    Next
    If $iID3HeaderSize > 0 Then
    $sID3Header = Binary(FileRead($hFile, $iID3HeaderSize)) ; lese gesamten ID3-Header
    For $i = 0 To 7
    $iOffset = StringInStr(BinaryToString($sID3Header), $aID3v2Tags[$i]) ; Offset zu dem ID3-Tag
    If $iOffset > 0 Then
    $iSize = Hex(BinaryMid($sID3Header, $iOffset + 4, 4)) ; Größe des ID3-Frames
    $tmp = BinaryMid($sID3Header, $iOffset + 11, Dec($iSize) - 1)
    If BinaryMid($tmp, 1, 2) = '0xFFFE' Then
    For $x = 3 To BinaryLen($tmp) Step 2
    $aID3[$i][1] &= BinaryToString(BinaryMid($tmp, $x, 2), 2)
    Next
    Else
    For $x = 1 To BinaryLen($tmp)
    $aID3[$i][1] &= BinaryToString(BinaryMid($tmp, $x, 1))
    Next
    EndIf
    $aID3[$i][1] = StringReplace($aID3[$i][1], Chr(0), '')
    EndIf
    Next
    EndIf
    Do
    $sData = String(FileRead($hFile, 1))
    If @error Then ExitLoop
    If BitAND($sData, 0xff) = 0xff Then
    FileSetPos($hFile, -1, 1)
    $sData = String(FileRead($hFile, 4))
    EndIf
    Until BitAND($sData, 0xFFE00000) = 0xFFE00000
    Else
    FileClose($hFile)
    Return SetError(3, 0, 0)
    EndIf
    Else ; ID3 v1.x
    $iOffset = FileGetPos($hFile)
    FileSetPos($hFile, -128, 2)
    $sID3Header = BinaryToString(FileRead($hFile, 3))
    If $sID3Header = 'TAG' Then
    $aID3[0][1] = StringReplace(BinaryToString(FileRead($hFile, 30)), Chr(0), '')
    $aID3[1][1] = StringReplace(BinaryToString(FileRead($hFile, 30)), Chr(0), '')
    $aID3[2][1] = StringReplace(BinaryToString(FileRead($hFile, 30)), Chr(0), '')
    $aID3[3][1] = StringReplace(BinaryToString(FileRead($hFile, 4)), Chr(0), '')
    EndIf
    FileSetPos($hFile, $iOffset, 0)
    EndIf
    $sMP3FrameHeader = String($sData)
    If BitAND($sMP3FrameHeader, 0xFFE00000) <> 0xFFE00000 Then
    FileClose($hFile)
    Return SetError(4, 0, 0) ; keine MP3-Datei, dann Return
    EndIf
    $iMP3Version = BitShift(BitXOR($sMP3FrameHeader, 0xFFE00000), 19) ; welche MP3-Version
    $sMP3Version = $aMP3Version[$iMP3Version] ; in Textform
    $sMP3Layer = $aMP3Layer[BitShift(BitAND($sMP3FrameHeader, 0x60000), 17)] ; welcher Layer
    $aID3[8][1] = $sMP3Version & ' / ' & $sMP3Layer ; ins Ausgabe-Array
    $iMP3Bitrate = BitShift(BitAND($sMP3FrameHeader, 0xF000), 12) ; Bitraten-Index auslesen
    Switch $sMP3Version ; je nach MPEG-Version Bitrate aus der Tabelle holen
    Case 'MPEG1'
    $aID3[9][1] = $aMP3Bitrate[$iMP3Version - ($iMP3Version > 1)][$iMP3Bitrate]
    Case 'MPEG2', 'MPEG2.5'
    If $sMP3Layer = 'Layer I' Then
    $aID3[9][1] = $aMP3Bitrate[3][$iMP3Bitrate]
    Else
    $aID3[9][1] = $aMP3Bitrate[4][$iMP3Bitrate]
    EndIf
    EndSwitch
    $iMP3SampleFreq = BitShift(BitAND($sMP3FrameHeader, 0xC00), 10) ; Sample-Frequenz-Index auslesen
    $aID3[10][1] = $aSampleFreq[2 - ($iMP3Version - ($iMP3Version > 1))][$iMP3SampleFreq] ; und Wert aus der Tabelle holen
    Do ; evtl. Leerbytes überspringen
    $tmp = FileRead($hFile, 1)
    If @error Then ExitLoop
    Until $tmp <> 0x00 Or @error
    If $tmp = 0x58 And BinaryToString(FileRead($hFile, 3)) = 'ing' Then ; MP3 mit VBR (Xing-Header gefunden)?
    $iVBRFlags = '0x' & Hex(FileRead($hFile, 4)) ; VBR-Flags auslesen
    If BitAND($iVBRFlags, 0x3) Then ; wenn die Einträge vorhanden sind, dann...
    $iVBRFrames = Dec(Hex(FileRead($hFile, 4))) ; Anzahl der VBR-Frames auslesen
    $iVBRFilesize = Dec(Hex(FileRead($hFile, 4))) ; Dateigröße auslesen
    $aID3[4][1] = $iVBRFrames * 1152 / $aID3[10][1] * 1000 ; VBR Laufzeit
    $aID3[9][1] = 'VBR ~' & Int($iVBRFilesize * 8 / ($aID3[4][1] / 1000) / 1000) ; VBR durchschnittliche Bitrate
    EndIf
    Else
    If $aID3[4][1] = 0 Then $aID3[4][1] = (FileGetSize($sPath) * 8) / ($aID3[9][1] * 1000) * 1000 ; alternative CBR Laufzeit
    $aID3[9][1] = 'CBR ' & $aID3[9][1]
    EndIf
    $aID3[4][1] = _MyTicksToTime($aID3[4][1]) ; Laufzeit (Ticks to hour:min:sec)
    $aID3[9][1] &= ' kBit/s'
    $aID3[10][1] &= ' Hz'
    FileClose($hFile)
    Return SetError(0, 0, $aID3)
    EndFunc ;==>_ReadID3Tag

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

    Func _MyTicksToTime($iTicks)
    Local $iHour, $iMins, $iSecs
    $iHour = Int($iTicks / 3600000)
    $iTicks -= $iHour * 3600000
    $iMins = Int($iTicks / 60000)
    $iTicks -= $iMins * 60000
    $iSecs = Int($iTicks / 1000)
    Return StringFormat('%02i:%02i:%02i', $iHour, $iMins, $iSecs)
    EndFunc ;==>_MyTicksToTime

    [/autoit]

    Mein Feedback.
    Alls ich zum erstenmal sortieren lies, Nach "Artist" bin ich bissl erschrocken. das ganze war für 2-3sec nur Weiss, hättest du das ganze ned Komentiert :thumbup: ,währ ich echt davon ausgegangen das dass Script hengen geblieben währ xD
    was ich noch festgestallt habe, beim erneutehn such nach mp3´s hat er argh lange gehabt, hastu was am Search geändert? Wennich dan Liegt es wohl daran das ich noch 2 progs offen hatte die die C:\ HD etwas beanspuchen ^^

    Gesammt Eindruck:
    Ich bleibe immernoch dabei das das was du so "Testen" wolltest und was dich "Wunder genommen" hat, immernoch 100% mehr kann, als ichs mir eig vorgestellt habe oO xD :D


    Ich werde einmal das Obere Thread ändern und das Script dort einfügen :D

    Mfg Skilkor,der dir zu GROSSEM Dank verpflichtet ist ^^Sei gepriesen, o Heiliger Oscar :D

  • QuickDraw 100mal so schnell wie GDIPlus Update10 Texture speichern / Screencap

    • Skilkor
    • 29. Juli 2010 um 00:27

    na dan bin ich froh ^^
    Falls es dir was hilft,Meine System daten
    Win7 Ultimate 64bit
    DualCore E6750 (20%Overclock)
    4GB Ram
    ATI XFX 4870 (15%Overclock)

    das prog braucht 0% CPU und 9,2MB Ram. die GK zeigt auch keine Leistungs Erhöung

  • QuickDraw 100mal so schnell wie GDIPlus Update10 Texture speichern / Screencap

    • Skilkor
    • 29. Juli 2010 um 00:22

    ok ^^ wen du mir jetz noch sagst, ob er was machen sollte oder ob es nur ein Fenster mit der darstellung sein sollte.
    wen ja, dan läuft es ^^ mal abgesehen von dem fehler bei beginn und ende :D

  • QuickDraw 100mal so schnell wie GDIPlus Update10 Texture speichern / Screencap

    • Skilkor
    • 29. Juli 2010 um 00:18

    Türlich ^^

    Was das Compilen angeht, selbst dan besteht der fehler noch ^^ hab mir die Source ned angesehen ^^

    ich weiss ja nicht ob er da was bewegen soll oder so, weill, so wie das bild ist, würd es wohl std bleiben ^^ wen ichs ned beende ^^

    Dateien

    Test.png 17,39 kB – 0 Downloads
  • QuickDraw 100mal so schnell wie GDIPlus Update10 Texture speichern / Screencap

    • Skilkor
    • 29. Juli 2010 um 00:06

    Tach
    Also,bei mir kommt alls erstes diese Meldung

    Zitat

    Fehler
    Fehler beim Registrieren der Fenster Klasse.


    wen ich mit OK Bestätige macht er mirn fenster auf welches
    -einen Diagonalen ROTEN STRICH
    -einen GELBEN PUNKT
    &ein GRÜNES Quadrat
    Beinhaltet
    Wen ich das Fenster Schliesse kommt folgendes

    Zitat

    Fehler beim Beenden
    Die Fensterklasse konnte nicht freigegeben werden.

    Soll das Normal sein oO,ich denke nicht oder? ^^

  • [Hilfe] Silkroad Taxi Tool

    • Skilkor
    • 28. Juli 2010 um 22:39

    Naja ich Kenne SRO nicht ^^
    Ich Spiel Archlord ^^
    Und selbst wen es ein "Bot" machen Sollte. Oder die Zeit angaben verwenden will mit einem Bot, müsste er diesen selbst progen xD und wen ich das richtig sehe hat er davon KA ^^
    auserdem, wen man ihm dan nur die .exe und nicht die Source gibt, kann ers nicht auslessen lassen, da er die Parameter dan nicht kennt xD

    Mfg Skilkor

  • Win7 Logon-Bild Wechsler

    • Skilkor
    • 28. Juli 2010 um 21:06
    Zitat

    Compilier es mal ohne upx, oder schick das Scipt nach Avira.

    wzt meinst mit "Ohne UPX"???
    und wiso zu Avira? es ist doch kein Virus o. KeyLogger...aber es greift extern auf die registry zu oook... xD

    Oh und, es hat sich beim fehler posting ein Fehler untergebracht. es wahr nicht line 31902 sondern Line 3190 ^^ Sry

  • Win7 Logon-Bild Wechsler

    • Skilkor
    • 28. Juli 2010 um 17:50

    Tach
    Ich habe es mal getestet...
    und habe bei der Skalierung diese Fehlermeldung bekommen

    Zitat

    AitoIt Error

    Line 31902 (File "C:\User\*******Desktop\AnmeldeBildschierm.exe"):

    Error: Variable used without being declared.

    Ich denke du sollstet dir das Skalierscript nochmal vornehmen ^^

    Naja, und beim Downloaden brach mir Antivir bei beiden Scripts eine virenmeldung...
    wohl eine fehlermeldung....

    Admin bin ich ^^
    habe Win7 Ultimate 64bit ^^ wen das was helfen sollt ^^

    Mfg Skilkor ^^

  • mp3 Searcher

    • Skilkor
    • 28. Juli 2010 um 16:14
    Zitat

    Also zu der Sortierfunktion: Du brauchst vieeeeel Geduld, wenn Du >20000 Einträge im Listview hast! Das war der Grund, warum ich das im obigen Skript auskommentiert habe.
    Und wenn man schon so lange braucht, um die Liste zu sortieren, ist das eigentlich schon der Todesstoss für das Projekt. Es sei denn, jemand kennt eine Möglichkeit (C-Routine oder so) wie man ein Listview mit so vielen Einträgen wirklich schnell sortieren kann...

    Kopieren/verschieben der Dateien (inkl. erstellen evtl. Verzeichnisse) ist eher die einfache Aufgabe.

    Ich habe mich gestern mal Intensiv mit der such nach möglichkeiten der sortierung beschäftigt und NICHTS gefunden was eben diese kriterien (Du hast sie oben gennant) funktionieren würde.
    Also,muss ich dir da mal zustimmen.
    Wobei ich mich jetz gerade frage. ob man dies nicht vll mit CMD machen könnte..... ich weiss nurnoch ob cmd ein .txt oder .ini auslessen kann und die darin enthalteten infors verwenden kann.(Is nur son Gedanke...kann sein das ich da vll voll aufm Holzweg bin xD, belehrt mich ^^)

    und was das Copy / Switch angeht.... das ist dan wie du sagts, das eiiiinfacheeere xD

    Ich werde aufjedenfall weiter suchen... und evt mal ein Direktes thema machen,wen das as hilfen sollte :D

    Mfg Skilkor

    *Edit*
    Hey Oscar
    Ich habe dein Search bisschen gändert. nichts grosses. nur die Fenstergrösse ein wenig.
    und noch Eingefügt das man ein Markierten Eintrag löschen kann. aus dem einfachen grund, da das Prog auch teils Windows Sounds und vorallem Gamesounds mit einbeziht.
    Dan kann man nähmlich die einträge wo man weiss (Man muss nur den PFad ansehen) Löschen :D aus dem Grund wollt ich auch den Pfad ^^ hehe
    naja alles automatisch kann man dan wohl doch nicht machen. auser man erstellt ein prog welches intellignt ist und erkennt was kein "gamesound und Windows Sound" ist. was aba ihrwie ne sisifuss arbeit werden könnte. d.h...lass ich das ^^

    wen du die source sehen willst, sag bescheid. ist nur was kleines hinzugefügt,wobei ich denke, du weisst was ich gemacht hab (<3 Copy / paste xD) haha

    ich muss ma guggen ob ich das auch per tastendruck hinbekommen, so Quasi
    So, auch das per tastendruck (del) funktioniert jetz. einfach eine Seperate func gemacht :D
    *Edit2*
    haha, nach dem aussortieren was nicht meine Musik is, sind es nurnoch etwa 10875 Files... da sind wohl doch n paar Doppelt xD
    naja Die grundlage funktioniert schonmal ^^

    Ich bin dir aufjedenfall Dankbar Oscar :D

    Auserdem hab ich bei deinem code noch volgendes gefunden:

    [autoit]

    ;~ _GUICtrlListView_RegisterSortCallBack($hLVHandle) ; damit man das Listview (mit Klick auf die Spaltenüberschrift) sortieren kann

    [/autoit]


    Zeile 35...
    Das dient doch zum Sortieren der Inhalte in der ListView oder nicht?
    wen man die listViwe sortieren kann, ist doch die halbe Arbeit der Sortieren getan? dan Kann man die SO abspeichen und dan hast du die Sortiert in der "Datenbank" oder seh ich das vollöig falsch???
    Mfg Skilkor

  • fehlermit imagesearch

    • Skilkor
    • 28. Juli 2010 um 05:08

    Ich hab es mal angesehen und sihe da...
    Mir bringt er die fehler meldung

    Zitat

    >"G:\Programme\Auto It\AutoIt3\SciTE\..\autoit3.exe" /ErrorStdOut "C:\Users\*******\Desktop\Scripte\test\test1.au3"
    C:\Users\*******\Desktop\Scripte\test\test1.au3 (1) : ==> Error opening the file.:
    #include <ImageSearch.au3>

    >Exit code: 1 Time: 0.227


    Kann es vll sein das Du die #Include <ImageSearch.au3>
    Selbst Geschrieben hast und insInclude verzeichnus vonScite eingebaut hast??
    Den wen dies der fall sein sollte ist der fehler allerhöchstens in der ImageSearch.au3. Lad das File einfach mal hoch (Datei anhang) ind dan dürfte es zimlich sicher ne schnelle meldung geben ^^

    *Edit*
    Ach und, wzt benuzt heute noch Vista?
    Das kann man fast nicht alls Betriebssystem ansehen, und wen doch, dan ne sehr fühe beta Version von Win7 xD
    Sry, musste ich einfach Loswerden,is ned bösegemeint :D

    Mfg Skilkor

  • Computer Schutz Programm

    • Skilkor
    • 28. Juli 2010 um 04:54
    Zitat

    Dies ist der Benutzername und das Passwort wo sie später fürs auschalten brauchen.


    Aua :S
    Kleine Berichtigung :D
    *Sihe Bild*

    Dies soll keine Fertigmacherei oder sonnst was sein, Aber wen das Login Window schon derartige Fehler hat. Dann, tut mir Leid das ichs Sage, aber dann wirst du es nie verkaufen können (wen du das überhaupt vorhatest),na,dann nennen wirs doch Eher Publizieren ^^
    Was das Bild angeht (Ich habe es Bearbeitet und ich weiss nicht. siht eher nach nem login aus ^^ wobei ich ehrlich bin der satz

    Zitat

    Dies ist der Benutzername und das Passwort. Welches Sie spöter zum Beenden benötigen


    ihrgendwie auch Komisch klingt ^^

    Mfg Skilkor

    Dateien

    index.jpg 203,36 kB – 0 Downloads
  • Skyjump - The Finest Online Doodle Jump Clone incl. Downloadversion PC/MAC

    • Skilkor
    • 28. Juli 2010 um 04:30
    Zitat

    Wir überlegen das Spiel aufs Iphone zu bringen... Was denkt Ihr? Neben Doodle Jump und sonstigen Klonen
    Überlebenschancen? ;)

    Das Fragst du NOCH? *Her Damit* HeHe, aber vll nicht nur fürs iPhone *Sc*..dh**... <Tschuldige> xD sondern auch fürs Android ^^ vll ab Android 1.5
    Sihe Android SDK
    Und Android Programming

    Soweit ich weiss ist Die Android .apk (Das sind die Android Apps) Programmierung auf java aufgebaut. bin mir Diesbezüglich aber nicht 100% sicher
    (Falls es jmd besser weiss, ruhig mut, Sag es ^^)

    Mfg Skilkor

  • [Hilfe] Silkroad Taxi Tool

    • Skilkor
    • 27. Juli 2010 um 16:42

    Ich Sagte nicht, das es ein BOT ist ^^
    Ich hab dich Lediglich an §3 abs1 : Erinnert

    Das wovon die ganzezeit Gesprochen wird, ist der §3 abs 9 :

    Zitat

    §3 abs 9 : Diese Liste ist ausdrücklich nicht vollständig. Programme, die dem hinter diesen Regeln stehenden Geist widersprechen, sind ebenso als nicht erlaubt anzusehen


    Aus dem einfachen Grund, Das Script soll das Spiel vereinfachen = unfair den anderen Spielen gegen über.

    Ich für mich hab ja Nichts gegen so ein "Time-tool" nur leider, Regeln sind Regeln, wer die nicht beachtet bekommt den Zorn der Moderatoren o. admins zu Spühren in form von verwahrnungen oder direkt/Constant bann.

  • [Hilfe] Silkroad Taxi Tool

    • Skilkor
    • 27. Juli 2010 um 15:51
    Zitat

    §3 abs 1 : Bots für Spiele jeglicher Art, insbesondere Onlinespiele und ganz besonders Silkroad Online sowie World of Warcraft


    auserdem noch zu beachten

    Zitat

    §3 abs 9 : Diese Liste ist ausdrücklich nicht vollständig. Programme, die dem hinter diesen Regeln stehenden Geist widersprechen, sind ebenso als nicht erlaubt anzusehen


    Da steht es in den Forenregeln ganz DICK und GROSS :D

  • mp3 Searcher

    • Skilkor
    • 27. Juli 2010 um 13:35

    *Krank* Das was dich so interessiert hat, kann jetz schon mehr alls das was ich mir eigentlich vorgestellt habe xD
    Was ich aber festgestellt habe ist, dass teils programme die geöffnet sind (vor dem ausführen der mp3 progs) ein wenig Schwierigkeiten haben,Damit meine ich das sie dan bei erneuten öffnen zimlich lange haben.
    Wobei ich aber glaube, das Liegt daran das die SuFu der progs derart durch die verzeichnisse Schnellt das die HD bei einem ausführen eines anderen progs mühe hat :D weill, soballd er vom C:\ weg ist, ist das nicht mehr der fall :D

    Aber ich muss zugeben, und kann es nur in diesen worten fassen *Heilige Schei**e"
    Sooo, Klein und schon so OHO :D

    Ich bedanke mich auf jeden herzlich *-*
    und es nimmt mich wunder wielange du gecodet hast? (auch wen es nur eine zusammenführung von codes ist, die du schon hattest :D)

    Mfg Skilkor

    *Edit*
    Das durchsuchen hat gesammthaft etwa 15min gedauert bei einem Filefound von über 20´000 xD

    Meine Vorstellung:

    Spoiler anzeigen

    Was ich mich jetz Frage und wen ich dein Code so ansehe. ist es meiner meinung nach am besten via #Include das Sortier / Verschiebe Script einzu bauen. oder seh ich das falls?
    *So zu sagen, in Ehren und Danken an Oscar mit dem Such und auslese code ^^ und das andere is von mir xD haha ^^ Nein, es ist mir wichtig das die Autoren der codes im Script enthalten sind ^^
    da ich noch ein neuling bin, kann das bei mir nochn bissl warten ^^

    Was das Sortier / Verschiebe Script angeht, da hab ich 2 Dinge:
    1: Ich hab Keinerlei ansätze wie genau ich die Sortieren will
    -Vorgestellt hab ich mir,dass man Sie nach Artist oder Gengre Sortiert (Vorerst,man kann ja immernoch optionen hinzufügen :D)
    Dabei Frag ich mich, wie ich das am besten anstellen soll.
    Eine idee hab ich zumindest schon, via ordner create der dan die Entsprechende (Artis / Genre) ausliest und am angegebenen Pfad via (Sihe 2:)

    2: für das verschieben hab ich mir FileCopy vorgestellt, dabei bin ich mir noch nicht ganz sicher,
    -ob das NUR für den Ordner ist - Die Deteien oder Beides. Ich werd mir das Erst genauer anscheuen ^^ sonnst bringts ja nichts :D
    -Ok, Gefunden, je nach Flag einzelne Dateien, oder den Ordner mit den Dateien


    *Last Edit*
    Die Ellen Lange Geschichte in einen Spoiler gepackt, erleichter das Scrollen

  • täglich Forumausfälle (nur bei mir?)

    • Skilkor
    • 26. Juli 2010 um 16:46

    *Feedback*

    Bis Jetz kein Error vorkomniss bei mir.

    Falls sich wider eines zeigen sollte.
    *MELD* ^^

  • täglich Forumausfälle (nur bei mir?)

    • Skilkor
    • 26. Juli 2010 um 16:08

    Guten Tag zusammen
    Ich hatte heute zum Ersten mal so ein Problem.
    Selbst wen das prob schon "Behoben" sein sollte. so find ich doch, das ich es euch Mitteilen sollte ^^
    Ich habe Gleich ein Prt Scr gemacht.
    Weiter hab ich noch meinen rechner seit 4 Tagen nicht Neugestartet (Win7 Ultimate 64bit halt ^^)
    und habe über nacht das Programm
    CCleaner (Link) http://www.piriform.com/ccleaner
    Laufenlassen und habe debei "Cockies & co" Entfernt und den Speicher Optimiert
    (Cockie und co" clean lass ich vll 1x alle 1-2 monate laufen und die Speicher optimierung vll 1x alle 6monate oder mehr, alls selten ^^
    Und nach einem neustart des rechners connt ich wider connecten

    Mfg Skilkor

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™