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

  • Selbe Windows-Version in Virtual Box laufen lassen?

    • Skilkor
    • 17. März 2011 um 17:55

    Nun du kannst von deiner Jetzigen Laufenden Windows ein Backup image erstellen und diese nachher in der wirtualbox aufspielen,
    Oder du kannst die Selbige windows 7 install CD mit dem Selbigen Windows Key in der virualbox Installieren.
    Hab erstere Variante schon einmal gemacht um was von meiner zurzeit Laufenden Win zu testen.

  • Abfragen ob eine Funktion existiert

    • Skilkor
    • 17. März 2011 um 17:47

    nun, du könntest mit @error arbeiten aber ebend ohne script wird das ein Spiel bei dem nur Fragen entstehen, aber keine Antworten

    Skilkor

  • login?

    • Skilkor
    • 17. März 2011 um 13:41

    Nun wen es ne .exe ist und in der Datei info nichts von autoit steht kann der "gegner" ja nicht wissen das es ein autoit script ist, o. deh ich da was falsch?

  • Tut nichts trotz Identischer Anagaben

    • Skilkor
    • 17. März 2011 um 13:33

    bringt doch nichts wen ihr dan die Dateien nicht habt. deswegen hab ich extra geschrieben

    Zitat von Skilkor

    Am besten könnt ihr dies sehen wen ihr den Code mal ausführt eine *.wpl (Windows Media Player) playlist erstellt und eine *.pls (SongBird) Playlist, dan Importiert Ihr die *.wpl und seht euch das _ArrayDisplay($aTmp, '$aTmp VOR einbindung') an. und dan das Selbige mit der *.pls .


    :D
    Ich arbeite mit den Playlists die ich zuvor mit dem Script erstellt habe

  • Tut nichts trotz Identischer Anagaben

    • Skilkor
    • 17. März 2011 um 12:38

    HiHo, vll is der titel Nicht ganz erklärend, macht nichts, ich hoffe ich kann im Thread alles erklären :D
    Also, es geht um mein Prog WL, auf mehrere anfragen hab ich angefangen diese zu erweitern und stehe nun vor einem Mysteriösen Rätzel.
    Hier einmal der Gesammte Code, ist nicht Kurz für ein ein Kleines ding :D

    Spoiler anzeigen
    [autoit]


    #region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_icon=icons\prog01.ico
    #AutoIt3Wrapper_outfile=WL.exe
    #AutoIt3Wrapper_UseUpx=n
    #AutoIt3Wrapper_UseX64=n
    #AutoIt3Wrapper_Res_Fileversion=1.5.0.0
    #AutoIt3Wrapper_Res_LegalCopyright=Skilkor(http://www.autoit.de)(Hilfe: Oscar & i2c & Raupi & ohforf & Twodollarbillie)
    #AutoIt3Wrapper_Res_Language=1031
    #endregion ;**** Directives created by AutoIt3Wrapper_GUI ****
    ;==============
    #Region ### include ###
    #include <Array.au3>
    #include <File.au3>
    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <GuiListView.au3>
    #include <ListViewConstants.au3>
    #include <StructureConstants.au3>
    #include <GuiImageList.au3>
    #include <Misc.au3>
    #include <EditConstants.au3>
    #EndRegion ### include ###
    ;=============
    #Region ### Global Ini ###
    ;~ Global $sInifile = @ScriptDir & '\Conf.ini' ; Inidatei
    #EndRegion ### Global Ini ###
    ;=============
    #Region ### IniRead ###
    #EndRegion ### IniRead ###
    ;=============
    #Region ### Global Checkbox ###
    Global $ahCheckbox[5]
    Global $BoxNames[5] = ['Windows Media Player', 'Songbird', 'WinAmp', 'VLC', 'RealPlayer']
    Global $aFunktions[5] = ['_WMP', '_SongBird', '_WAmp', '_VLC', '_RPlayer']
    Global $aLeft[6] = [24,155,220,280,325,400]
    #Endregion ### Global Checkbox ###
    ;=============
    #Region ### Wiedergabelieste ###
    $WL = GUICreate("WL Creater",442,460,-1,-1)
    GUICtrlCreateGroup("",8,0,425,97)
    GUICtrlCreateGroup("",8,89,425,344)
    For $i = 0 To 4
    $ahCheckbox[$i] = GUICtrlCreateCheckbox($BoxNames[$i], $aLeft[$i], 40, $aLeft[$i + 1] - $aLeft[$i], 20)
    Next
    $Tip = GUICtrlCreateLabel("Tip: Wählt eine Widergabelisten Art aus. Seht euch die Hilfe an",24,64,203,25)
    $Create = GUICtrlCreateButton("Erstellen",232,64,59,25,$WS_GROUP)
    $ClearListViewB = GUICtrlCreateButton("Liste Leeren",296, 64, 67, 25, $WS_GROUP)
    $FolderSearch = GUICtrlCreateButton("...",400,16,19,25,$WS_GROUP)
    ;~ $Hilfe = GUICtrlCreateButton("Hilfe",368,64,59,25,$WS_GROUP)
    $Path = GUICtrlCreateInput("Path",24,16,377,21,$ES_READONLY)
    GUISetState(@SW_SHOW)
    ;~ MsgBox(0,'Checkbox',$Tip)
    #EndRegion ### Wiedergabelieste ###
    #Region ### Global ###
    Global $aID3, $aFiles, $sPath, $sNewItem, $Duration, $iMode, $sString, $Create, $FolderSearch,$FilePath
    Global $ahPlItem[1], $iPlCount = 0, $sID3Tags
    #EndRegion ### Global ###
    ;=============
    #Region ### Global ListView ###
    Global $LV_Style = BitOR($WS_EX_DLGMODALFRAME, $WS_EX_CLIENTEDGE)
    Global $LV_EX_STYLE = BitOR($LVS_EX_SUBITEMIMAGES, $LVS_EX_DOUBLEBUFFER, $LVS_EX_FULLROWSELECT)
    Global $ListView = GUICtrlCreateListView('Nr.|Artist|Title|Album|Länge|Path',16,104,409,321, $LV_Style, $LV_EX_STYLE)
    _GUICtrlListView_SetExtendedListViewStyle($ListView, $LV_EX_STYLE)
    _GUICtrlListView_RegisterSortCallBack($ListView)
    GUICtrlSetState(-1, $GUI_DROPACCEPTED)
    GUICtrlSendMsg($ListView, $LVM_SETCOLUMNWIDTH, 0, 32)
    GUICtrlSendMsg($ListView, $LVM_SETCOLUMNWIDTH, 1, 100)
    GUICtrlSendMsg($ListView, $LVM_SETCOLUMNWIDTH, 2, 100)
    GUICtrlSendMsg($ListView, $LVM_SETCOLUMNWIDTH, 3, 110)
    GUICtrlSendMsg($ListView, $LVM_SETCOLUMNWIDTH, 4, 50)
    GUICtrlSendMsg($ListView, $LVM_SETCOLUMNWIDTH, 5, 120)
    #EndRegion ### Global ListView ###
    ;=============
    #Region ### Global ContextMenü ###
    Global $ContextMenue = GUICtrlCreateContextMenu($ListView)
    Global $DelItem = GUICtrlCreateMenuItem('Löschen', $ContextMenue)
    Global $AddItem = GUICtrlCreateMenuItem('File hinzufügen', $ContextMenue)
    Global $Import1 = GUICtrlCreateMenuItem('Playlist Importieren',$ContextMenue)
    Global $ClearListViewM1 = GUICtrlCreateMenuItem('Liste Leeren',$ContextMenue)
    #EndRegion ### Global ContextMenü ###
    ;=============
    #Region ### Global Menü ###
    Global $Menu = GUICtrlCreateMenu('Menü',-1,0)
    Global $Import = GUICtrlCreateMenuItem('Playlist Importieren',$Menu,0)
    Global $ClearListViewM = GUICtrlCreateMenuItem('Liste Leeren',$Menu,0)
    Global $Maske = GUICtrlCreateMenu('Maske',$menu,10)
    Global $Normal = GUICtrlCreateMenuItem('Standard',$Maske,1)
    Global $Black = GUICtrlCreateMenuItem('Schwarz',$Maske,2)
    Global $Red = GUICtrlCreateMenuItem('Rot',$Maske,3)

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

    Global $HelpMenu = GUICtrlCreateMenu('?',-1,10)
    Global $HelpItem = GUICtrlCreateMenuItem('Hilfe',$HelpMenu,0,1)
    #EndRegion ### Global Menü ###
    ;=============
    #Region ### GUI_Event ###
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $ListView
    _GUICtrlListView_SortItems($ListView, GUICtrlGetState($ListView))
    Case $Create
    _Create()
    Case $ClearListViewB, $ClearListViewM, $ClearListViewM1
    _ClearListView()
    Case $FolderSearch
    _FolderSearch()
    Case $HelpItem
    _Hilfe()
    Case $DelItem
    _DeleteSelected()
    Case $AddItem
    _addFile()
    Case $Import,$Import1
    _Import()

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

    Case $Normal
    _optNormal()
    Case $Black
    _optBlack()
    Case $Red
    _optRed()
    EndSwitch
    $dll = DllOpen("user32.dll")
    If _IsPressed("2E") Then
    _DeleteSelected()
    EndIf
    DllClose($dll)
    WEnd
    #EndRegion ### GUI_Event ###
    ;=============
    #Region ### _FolderSearch() ###
    Func _FolderSearch()
    $sPath = FileSelectFolder('Wähle einen MP3 Verzeichniss aus','', 4, '', '')
    ControlSetText('','',$Path,$sPath)
    $aFiles = _FileListToArray($sPath, '*.mp3', 1)
    _GUICtrlListView_AddArray($aFiles, $ListView)
    If Not @error Then
    $Duration= 0
    For $i = 1 To UBound($aFiles) - 1
    _AddFileToListView($sPath & "\" & $aFiles[$i])
    Next
    EndIf
    EndFunc
    #EndRegion ### _FolderSearch() ###
    ;=============
    #Region ### _addFile() ###
    Func _addFile()
    Local $aFiles
    $sPath = FileOpenDialog('Wähle die *.mp3 Datei aus','','(*.mp3)',4,'','')
    $aPaths = StringSplit($sPath,'|',1)
    If IsArray($aPaths) Then
    _GUICtrlListView_BeginUpdate($ListView)
    For $i = 1 To $aPaths[0]
    $Duration= 0
    _AddFileToListView($aPaths[$i])
    ;_GUICtrlListView_AddItem($ListView, $aPaths[$i])
    Next
    _GUICtrlListView_EndUpdate($ListView)
    Else
    _FehlerListViewItem()
    EndIf
    EndFunc
    #Endregion ### _addFile() ###
    ;=============
    #Region ### _AddFileToListView() ###
    Func _AddFileToListView($sPath) ;$aID3Tag[1][1] für Titel | $aID3Tag[2][1] für Artist | $aID3Tag[3][1] für Album | $aID3Tag[4][1] für die Länge | $aID3Tag[5][1] für die Titel Nr | $iPlCount + 1 Listet die zahl der ListView Items auf
    If Not FileExists($sPath) Then Return
    Local $aID3, $sNewItem
    $aID3 = _ReadID3Tag($sPath)
    If Not @error Then
    ReDim $ahPlItem[$iPlCount + 1]
    $Duration += $aID3[4][1]
    $sNewItem = $aID3[5][1] & '|' & $aID3[1][1] & '|' & $aID3[0][1] & '|' & $aID3[2][1] & '|' & $aID3[4][1] & '|' & $sPath; & '|' & $iPlCount + 1
    $ahPlItem[$iPlCount] = GUICtrlCreateListViewItem($sNewItem, $ListView)
    $iPlCount += 1
    EndIf
    EndFunc
    #EndRegion ### _AddFileToListView() ###
    ;=============
    #Region ### _Hilfe() ###
    Func _Hilfe()
    MsgBox(4096, 'Hilfe', 'Wiedergabelisten Beschreibung'&@CRLF&@CRLF&'Einfach auf den Button neben dem Langen'&@CRLF&'Editfeld Klicken und Verzeichniss auswählen'&@CRLF&'Dann auf Erstellen'&@CRLF&@CRLF&'WL erstellt einmehrere Playlists'&@CRLF&'z.B.'&@CRLF&'(*.wpl) - Windows Media Player'&@CRLF&'(*.pls) - Song Bird & Win Amp'&@CRLF&'(*.m3u) - Real Player'&@CRLF&'(*.xspf) - Video Lan (VLC)'&@CRLF&@CRLF&'Ein Danke an:'&@CRLF&'i2c: Für seine Hilfe und Ideen'&@CRLF&'Raupi: Auch für seine Hilfe'&@CRLF&@CRLF&'Createt by Skilkor')
    EndFunc
    #EndRegion ### _Hilfe() ###
    ;=============
    #Region ### _Fehler() ###
    Func _Fehler()
    MsgBox(48, 'Fehler', 'Keine Wiedergabelieste ausgewählt')
    EndFunc
    #EndRegion ### _Fehler() ###
    ;=============
    #Region ### _FehlerListViewItem() ###
    Func _FehlerListViewItem()
    $msg = MsgBox(48+4, 'Fehler', 'Keine "*.mp3" Dateien Gefunden'&@CRLF&'Neu Suchen?')
    If $msg = 6 Then
    _addFile()
    EndIf
    EndFunc
    #EndRegion ### _FehlerListViewItem() ###
    ;=============
    #Region ### _FehlerListView() ###
    Func _FehlerListView()
    $msg = MsgBox(48+4, 'Fehler', 'Keine "*.mp3" einträge Gefunden'&@CRLF&'Neu Suchen?')
    If $msg = 6 Then
    _FolderSearch()
    EndIf
    EndFunc
    #EndRegion ### _FehlerListView() ###
    ;=============
    #Region ### _Create() ###
    Func _Create()
    If _GUICtrlListView_GetItemCount($ListView) = 0 Then
    _FehlerListView()
    EndIf
    For $i = 0 To 4
    If BitAND(GUICtrlRead($ahCheckbox[$i]), $GUI_CHECKED) Then Call($aFunktions[$i])
    ;~ MsgBox(0,'Checkbox',$ahCheckbox[$i])
    Next
    EndFunc
    #EndRegion ### _Create() ###
    ;=============
    #Region ### _ListView() Leeren ###
    Func _ClearListView()
    _GUICtrlListView_DeleteAllItems($ListView)
    EndFunc
    #EndRegion ### _ListView() Leeren ###
    ;=============
    #Region ### _DeleteSelected ###
    Func _DeleteSelected()
    _GUICtrlListView_DeleteItemsSelected($ListView)
    EndFunc
    #EndRegion ### _DeleteSelected ###
    ;=============
    #Region ### _Import() ### von i2c (Teils Bsp)
    Func _Import()
    $FilePath = FileOpenDialog('Playlist Importieren', '', 'Alle Playlists (*.wpl;*.pls;*.xspf;*.m3u)|(*.wpl)|(*.pls)|(*.xspf)|(*.m3u)')
    If StringRight($FilePath, 4) = ".wpl" Then
    $hFile = FileOpen($FilePath)
    $sRead = FileRead($hFile)
    FileClose($hFile)
    If Not @error Then
    $aTmp = StringRegExp($sRead, '<media\ssrc=\"(.*?)\"', 3, 1)
    If IsArray($aTmp) Then
    $aFolder = StringRegExp($FilePath, "(.*)\\", 1, 1)
    If IsArray($aFolder) Then
    $aParent = StringRegExp($aFolder[0], "(.*)\\", 1, 1)
    Else
    MsgBox(0, "Fehler", "Datei konnte nicht importiert werden")
    Return
    EndIf
    For $i = UBound($aTmp) - 1 To 0 Step -1
    If StringLeft($aTmp[$i], 2) = '..' Then
    $sTmp = $aParent[0] & StringTrimLeft($aTmp[$i], 2)
    If Not FileExists($sTmp) Then
    MsgBox(0, "Fehler", "Datei: " & $sTmp & @CRLF & "Datei existiert nicht")
    _ArrayDelete($aTmp, $i)
    Else
    $aTmp[$i] = $sTmp
    EndIf
    EndIf
    Next
    EndIf
    Else
    MsgBox(0, "Fehler", "Datei konnte nicht importiert werden")
    Return
    EndIf
    EndIf

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

    If StringRight($FilePath, 4) = ".pls" Then ;Wen es eine *.pls Datei ist DANN
    If MsgBox(4+48,'*.pls Fortfahren','Nur *.pls Playlist die mit >WL< erstellt wurden, "Solten" importiert werden'&@CRLF&'Fortfahren?') = 7 Then ;Wenn NEIN dann Return
    Return
    EndIf
    $hFile = FileOpen($FilePath) ;Öffne *.pls Playlist
    $sRead = FileRead($hFile) ;Lesse *.pls Playlist
    FileClose($hFile) ;Schliesse *.pls Playlist
    If Not @error Then ;Wen nicht ERROR DANN
    $aTmp = StringRegExp($sRead, 'File\d+\=(.*)', 3, 1) ;Dateipfade einlesen
    EndIf
    If StringLeft($aTmp[$i], 2) = '..' Then
    For $i = UBound($aTmp) - 1 To 0 Step -1 ;~ Array rückwärts durchlaufen
    If StringLeft($aTmp[$i], 2) = '..' Then ;~ wenn die ersten beiden Zeichen '..' sind, ist es ein relativer Pfad
    $aCount = StringRegExp($aTmp[$i], '(\.\.\/)', 3, 1) ;~ zähle alle '../' im String um das Level des relativen Pfades herauszufinden
    $aFolder = StringSplit($FilePath, "\") ;~ den Ordnerpfad (Playlist) an den \'s aufsplitten.
    ;~ Das Array mit den einzelnen Ordnern wieder in einen String umwandeln.
    ;~ Der 4te Parameter: (Anzahl Elemente von $aFolder)-Anzahl der relativen Pfadebenen in $aCount
    ;~ Ergebnis: Der Ordner, von dem aus der absolute Teil des relativen Dateipfads weiter zur MP3 führt.
    $sTmp = _ArrayToString($aFolder, "\", 1, (UBound($aFolder) - 1) - UBound($aCount))
    $aTmp[$i] = StringReplace($aTmp[$i], "../", "") ;~ Alle '../' aus dem relativen Pfad entfernen
    $aTmp[$i] = StringReplace($aTmp[$i], "/", "\") ;~ '/' durch '\' ersetzen, damit ein anständiger Pfad draus wird
    $sTmp = $sTmp & "\" & $aTmp[$i] ;~ Den absoluten Pfad aus dem gekürzten Pfad der Playlist und dem 'gesäuberten' Pfad der MP3 zusammenbauen
    If Not FileExists($sTmp) Then ;~ Prüfen ob die Datei dort existiert
    MsgBox(0, "Fehler", "Datei: " & $sTmp & @CRLF & "Datei existiert nicht")
    _ArrayDelete($aTmp, $i) ;~ Wenn nicht, dann das Element aus dem Array löschen
    Else
    $aTmp[$i] = $sTmp ;~ wenn sie existiert, den Pfad in das Arrayelement schreiben
    EndIf
    EndIf
    Next
    EndIf

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

    EndIf

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

    _ArrayDisplay($aTmp,'$aTmp vor Import')
    If IsArray($aTmp) Then
    _GUICtrlListView_BeginUpdate($ListView)
    For $i = 0 To UBound($aTmp) - 1
    $Duration = 0
    _AddFileToListView($aTmp[$i])
    Next
    _GUICtrlListView_EndUpdate($ListView)
    Else
    MsgBox(0, "Fehler", "Keine Daten zum importieren.")
    Return
    EndIf
    EndFunc
    #EndRegion ### _Import() ### von i2c (Teils Bsp)
    ;=============
    #Region ### _WMP() ### *.wpl
    Func _WMP()
    Local $sSaveFilename,$hFile, $iCount = _GUICtrlListView_GetItemCount($ListView)
    If $iCount = 0 Then Return
    $sSaveFilename = FileSaveDialog('Wähle einen Namen für die MP3-Playlist',@DesktopDir, 'Windows Media Player-Playlist (*.wpl)', 18, '')
    $Folder = $sSaveFilename
    $aFolder = StringSplit($Folder,"\")
    If IsArray($aFolder) Then $Folder = $aFolder[$aFolder[0]-1] & "\" & $aFolder[$aFolder[0]]
    If Not @error Then
    If StringRight($sSaveFilename, 4) <> '.wpl' Then $sSaveFilename &= '.wpl'
    $hFile = FileOpen($sSaveFilename, 128 + 2)
    If $hFile <> -1 Then
    FileWrite($hFile, '<?wpl version="1.0"?>'&@CRLF)
    FileWrite($hFile, '<smil>'&@CRLF)
    FileWrite($hFile, ' <head>'&@CRLF)
    FileWrite($hFile, ' <meta name="Generator" content="Microsoft Windows Media Player -- "/>'&@CRLF)
    FileWrite($hFile, ' <meta name="ItemCount" content="'&$iPlCount&'"/>'&@CRLF)
    FileWrite($hFile, ' <meta name="TotalDuration" content="'&$Duration&'"/>'&@CRLF)
    FileWrite($hFile, ' <author/>'&@CRLF)
    FileWrite($hFile, ' <title>'&$Folder&'</title>'&@CRLF)
    FileWrite($hFile, ' </head>'&@CRLF)
    FileWrite($hFile, ' <body>'&@CRLF)
    FileWrite($hFile, ' <seq>'&@CRLF)
    For $i = 0 To $iCount
    FileWriteLine($hFile, ' <media src="'& _GUICtrlListView_GetItemText($ListView,$i,5)&'"/>')
    Next
    FileWrite($hFile, ' </seq>'&@CRLF)
    FileWrite($hFile, ' </body>'&@CRLF)
    FileWrite($hFile, '</smil>'&@CRLF)
    FileClose($hFile)
    EndIf
    EndIf
    EndFunc
    #EndRegion ### _WMP() ###
    ;=============
    #Region ### _SongBird() ### *.pls
    Func _SongBird()
    Local $sSaveFilename,$hFile, $iCount = _GUICtrlListView_GetItemCount($ListView)
    If $iCount = 0 Then Return
    $sSaveFilename = FileSaveDialog('Wähle einen Namen für die MP3-Playlist',@DesktopDir, 'SongBird-Playlist (*.pls)', 18, '')
    If Not @error Then
    If StringRight($sSaveFilename, 4) <> '.pls' Then $sSaveFilename &= '.pls'
    $hFile = FileOpen($sSaveFilename, 2)
    If $hFile <> -1 Then
    FileWrite($hFile, '[playlist]'&@CRLF)
    FileWrite($hFile, 'NumberOfEntries=1'&@CRLF&@CRLF)
    For $i = 0 To $iCount
    FileWriteLine($hFile,'File'&$i+1&'='& _GUICtrlListView_GetItemText($ListView,$i,5))
    FileWriteLine($hFile,'Title'&$i+1&'='& _GUICtrlListView_GetItemText($ListView,$i,1)&' - '&_GUICtrlListView_GetItemText($ListView,$i,2))
    FileWriteLine($hFile,'Length'&$i+1&'='& _GUICtrlListView_GetItemText($ListView,$i,4)&@CRLF&@CRLF)
    Next
    FileWrite($hFile, @CRLF&'Version=2'&@CRLF)
    FileClose($hFile)
    EndIf
    EndIf
    EndFunc
    #Endregion ### _SongBird() ###
    ;=============
    #Region ### _WAMP() ### *.m3u
    Func _WAMP()
    Local $sSaveFilename,$hFile, $iCount = _GUICtrlListView_GetItemCount($ListView)
    If $iCount = 0 Then Return
    $sSaveFilename = FileSaveDialog('Wähle einen Namen für die MP3-Playlist',@DesktopDir, 'MP3-Playlist (*.m3u)', 18, '')
    If Not @error Then
    If StringRight($sSaveFilename, 4) <> '.m3u' Then $sSaveFilename &= '.m3u'
    $hFile = FileOpen($sSaveFilename, 2)
    If $hFile <> -1 Then
    FileWrite($hFile, '#EXTM3U' & @CRLF)
    For $i = 0 To $iCount - 1
    FileWriteLine($hFile, '#EXTINF:' & _GUICtrlListView_GetItemText($ListView,$i,4) & ',' & _GUICtrlListView_GetItemText($ListView,$i,1) & ' - ' & _GUICtrlListView_GetItemText($ListView,$i,2)& ' - ' & 'Track Nr' & _GUICtrlListView_GetItemText($ListView,$i,0) & ' end')
    FileWriteLine($hFile, _GUICtrlListView_GetItemText($ListView,$i,5))
    Next
    FileClose($hFile)
    EndIf
    EndIf
    EndFunc
    #EndRegion ### _WAMP() ###
    ;=============
    #Region ### _VLC() ### *.xspf
    Func _VLC()
    Local $sSaveFilename,$hFile, $iCount = _GUICtrlListView_GetItemCount($ListView)
    If $iCount = 0 Then Return
    $sSaveFilename = FileSaveDialog('Wähle einen Namen für die MP3-Playlist',@DesktopDir, 'VLC-Playlist (*.xspf)', 18, '')
    $Folder = $sSaveFilename
    $aFolder = StringSplit($Folder,"\")
    If IsArray($aFolder) Then $Folder = $aFolder[$aFolder[0]-1] & "\" & $aFolder[$aFolder[0]]
    If Not @error Then
    If StringRight($sSaveFilename, 4) <> '.xspf' Then $sSaveFilename &= '.xspf'
    $hFile = FileOpen($sSaveFilename, 128 + 2)
    If $hFile <> -1 Then
    FileWrite($hFile, '<?xml version="1.0" encoding="UTF-8"?>'&@CRLF)
    FileWrite($hFile, '<playlist version="1" xmlns="http://xspf.org/ns/0/" xmlns:vlc="http://www.videolan.org/vlc/playlist/ns/0/">'&@CRLF)
    FileWrite($hFile, ' <title>'&$Folder&'</title>'&@CRLF)
    FileWrite($hFile, ' <trackList>'&@CRLF)
    For $i = 0 To $iCount - 1
    FileWriteLine($hFile,' <track>')
    FileWriteLine($hFile,' <location>file:///'& _GUICtrlListView_GetItemText($ListView,$i,5)&'</location>')
    FileWriteLine($hFile,' <title>'& _GUICtrlListView_GetItemText($ListView,$i,2)&'</title>')
    FileWriteLine($hFile,' <creator>'& _GUICtrlListView_GetItemText($ListView,$i,1)&'</creator>')
    FileWriteLine($hFile,' <album>'& _GUICtrlListView_GetItemText($ListView,$i,3)&'</album>')
    FileWriteLine($hFile,' <trackNum>'& _GUICtrlListView_GetItemText($ListView,$i,0)&'</trackNum>')
    FileWriteLine($hFile,' <image>file:///'&''&'</image>')
    FileWriteLine($hFile,' <extension application="http://www.videolan.org/vlc/playlist/0">')
    FileWriteLine($hFile,' <vlc:id>'& _GUICtrlListView_GetItemText($ListView,$i,0)&'</vlc:id>')
    FileWriteLine($hFile,' </extension>')
    FileWriteLine($hFile,' </track>')
    Next
    FileWrite($hFile, ' </trackList>'&@CRLF)
    FileWrite($hFile, ' <extension application="http://www.videolan.org/vlc/playlist/0">'&@CRLF)
    If $hFile <> -1 Then
    For $i = 0 To $iCount - 2
    FileWriteLine($hFile, ' <vlc:item tid="'&_GUICtrlListView_GetItemText($ListView,$i,0)&'" />')
    Next
    FileWrite($hFile, ' </extension>'&@CRLF)
    FileWrite($hFile, '</playlist>')
    FileClose($hFile)
    EndIf
    EndIf
    EndIf
    EndFunc
    #EndRegion ### _VLC() ###
    ;=============
    #Region ### _RPlayer() ### *.m3u
    Func _RPlayer()
    Local $sSaveFilename,$hFile, $iCount = _GUICtrlListView_GetItemCount($ListView)
    If $iCount = 0 Then Return
    $sSaveFilename = FileSaveDialog('Wähle einen Namen für die MP3-Playlist',@DesktopDir, 'MP3-Playlist (*.m3u)', 18, '')
    If Not @error Then
    If StringRight($sSaveFilename, 4) <> '.m3u' Then $sSaveFilename &= '.m3u'
    $hFile = FileOpen($sSaveFilename, 2)
    If $hFile <> -1 Then
    FileWrite($hFile, '#EXTM3U' & @CRLF)
    For $i = 0 To $iCount - 1
    FileWriteLine($hFile, '#EXTINF:' & _GUICtrlListView_GetItemText($ListView,$i,4) & ',' & _GUICtrlListView_GetItemText($ListView,$i,1) & ' - ' & _GUICtrlListView_GetItemText($ListView,$i,2)& ' - ' & 'Track Nr' & _GUICtrlListView_GetItemText($ListView,$i,0) & ' end')
    FileWriteLine($hFile, _GUICtrlListView_GetItemText($ListView,$i,5))
    Next
    FileClose($hFile)
    EndIf
    EndIf
    EndFunc
    #EndRegion ### _RPlayer() ###
    ;=============
    #Region ### _ID3Tag() ### Von Oscar
    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] = Int($aID3[4][1] / 1000) ; Laufzeit
    $aID3[9][1] &= ' kBit/s'
    $aID3[10][1] &= ' Hz'
    FileClose($hFile)
    Return $aID3
    EndFunc ;==>_ReadID3Tag
    #EndRegion ### _ID3Tag() ### Von Oscar
    ;=============
    #Region ### _optNormal() ###
    Func _optNormal()
    GUISetBkColor(0xF0F0F0,$WL)
    GUICtrlSetColor(10, 0x000000)
    EndFunc
    #EndRegion ### _optNormal() ###
    ;=============
    #Region ### _optBlack() ###
    Func _optBlack()
    GUISetBkColor(0x000000,$WL)
    GUICtrlSetColor(10, 0xFFFFFF)
    EndFunc
    #EndRegion ### _optBlack() ### GUISetBkColor(0xFF0000)
    ;=============
    #Region ### _optRed() ###
    Func _optRed()
    GUISetBkColor(0xFF0000,$WL)
    GUICtrlSetColor(10, 0x000000)
    EndFunc
    #EndRegion ### _optRed() ###
    ;=============

    [/autoit]


    So ab Zeile 275 bis 307 ist die Betreffenden Stelle
    Er gibt mir im _ArrayDisplay($aTmp, '$aTmp VOR einbindung') alles korekt an, die Angaben sind Identisch wie bei der *.wpl beim Importieren (Die *.wpl Importation Funktioniert)
    Am besten könnt ihr dies sehen wen ihr den Code mal ausführt eine *.wpl (Windows Media Player) playlist erstellt und eine *.pls (SongBird) Playlist, dan Importiert Ihr die *.wpl und seht euch das _ArrayDisplay($aTmp, '$aTmp VOR einbindung') an. und dan das Selbige mit der *.pls .
    Ich Versuche schon seit bald 2 tagen dieses Rätzel zu lösen und komme einfach nicht dahinter.

    Ich weiss, es lässt sich sicherlich noch so Einiges Verkürtzen :D das aber Später :D

    ***Edit***
    Anscheinend kahm mein Mysterium nicht ganz an ^^
    Es geht darum das die Import Funktion der *.pls nicht funktioniert trotz der Identischen _ArrayDisplay() angaben im vergleich zu der *.wpl Import...

    Skilkor

  • Skript abbrechen aber nicht beenden

    • Skilkor
    • 16. März 2011 um 14:41

    @kunig:

    Zitat von kunig

    Andy: Du solltest erstmal den Thread ordentlich lesen bevor du mich hier dumm anmachst.


    1: So Spricht man mit PowerUsern nicht!

    Zitat von kunig

    Ich will halt nicht an jeder Ecke meines Codes ein Return einbauen, weils einfach ne Menge Arbeit ist. Deshalb die Frage ob es irgendwie einfacher geht.


    2: Dies zu beantworten ist wie schon mehreremale Gesagt worden, schwierig ohne Script

    Edit:
    SuperUser zu powerUser (Wasn Fail) X(

  • Scaneffekt Bild

    • Skilkor
    • 16. März 2011 um 14:29

    Mehr als Geil :P

  • Skript abbrechen aber nicht beenden

    • Skilkor
    • 16. März 2011 um 10:53

    @ Andy: Ich gebe dir in vielerlei hinsichten recht. Doch ich denke es ist oder wahr, nicht der sinn des Threads hier über Fehler von Usern zu debatieren :D
    Deswegen schlage ich vor das man nun einfach mal den Thread schreiber abwarten bis der code vorhanden ist.
    Tips und trinks und Hinweise wurde ja zugenüge dargestellt wie er
    1: Die "800" Zeilen Code Posten kann
    2: Functionen Abbrechen kann
    3: sein script evt Debuggen kann

    Skilkor

  • Skript abbrechen aber nicht beenden

    • Skilkor
    • 15. März 2011 um 17:56
    Zitat

    Darter: Return ist mir durchaus bekannt, ich hatte aber gehofft man kann das einfacher lösen. So muss ich an allen möglichen Stellen eine Abfrage einbauen... aber hilft wohl nichts ;)


    Kommt ganz darauf an wie der aufbau ist

    Zitat

    @Mattthias: Es ist kein Spielebot. Das Skript steuert in meiner Firma eine Kundensoftware an einem Messaufbau. Ich bediene diese Kundensoftware mit AutoIt damit niemand stundenlang davorsitzen und rumklicken muss.
    Ich habe jetzt schon länger in diesem Forum mitgelesen und ich finds bisschen lächerlich dass in jedem zweiten Thread gleich ein Bot vermutet wird. :thumbdown: Es gibt auch Leute die einen PC zu sinnvolleren Dingen nutzen als zocken. :whistling:


    Nun, ich denke dass muss man hinnehmen da es viele versuchen. Man Sollte halt einfach Ncith böse sein falls halt mal der Verdacht fällt, sondern in ruhe das Script posten und denen Beweissen die Bot versuche vermuten, das es ebend Kein Bot ist :P *Man wasn Satz >_<*
    Zu dem:

    Zitat

    Da mein Skript fast 800 Zeilen umfasst ist das wohl etwas zu viel.


    da gibt es eine Einfache Lösung, den Spoiler :D

    Spoiler Code

    (spoiler)(/spoile) [ ] anstelle von ( )

    Skilkor

  • [Formel] Etwas fürs Auge

    • Skilkor
    • 15. März 2011 um 17:07

    Time: 48.771
    Bei 1680x1050
    Sieht nice aus :D

    U das .jpg hat gut 3mb :>

  • Scaneffekt Bild

    • Skilkor
    • 15. März 2011 um 16:05

    Ich wahr mit GDI+ wohl nicht Falsch :D
    Was mich persöhnlich stöhrt ist, das der *Balken* am Ende das Ganze fenster Bedeckt. Soweit ich weiss hat ein "Scanner" einen Balken mit vordefinierter Breite, oder seh ich das Falsch?

  • Scaneffekt Bild

    • Skilkor
    • 15. März 2011 um 14:53

    Den *Grünen Scanner* mit GDI+ machen?

  • Problem mit StringReplace()

    • Skilkor
    • 13. März 2011 um 07:48

    Passt Perfekt :D
    Dank an Euch :P
    hab noch ,#$2#) durch , $2 ) geändert und schon ises so wies sein muss :D

  • Problem mit StringReplace()

    • Skilkor
    • 13. März 2011 um 06:50

    HiHo Ich mal wieder :D

    Ich habn Problem (wie der Titel schon sagt) mit StringReplace().
    Volgendes...
    Es funktioniert bis zu einer Gewissen Stelle
    Hier mal Script

    Spoiler anzeigen
    [autoit]


    $FilePath = FileOpenDialog('Playlist Importieren','','(*.wpl)|(*.pls)|(*.m3u)|(*.xspf)')
    If StringRight($FilePath, 4) = ".wpl" Then
    FileOpen($FilePath)
    $FRL = FileReadLine($FilePath,12)
    $nPath = StringRegExpReplace($FRL,' <media src="','')
    $nnPath = StringReplace($nPath,'/>','',-1)
    FileClose($FilePath)
    MsgBox(0,'File line',$nPath)
    EndIf

    [/autoit]


    Das ganze ist hast in ner *.wpl datei und die Zeile 12 ist IMMER die erste File angabe mit Pfad
    etwa So

    Spoiler anzeigen


    <media src="E:\03_Eigene Music\969\The Beginning Of Chaos\The Beginning.mp3"/>


    Das entfernen von # <media src="# Funktioniert mit StringRegExpReplace Tadelose...
    Output sieht dan so aus #E:\03_Eigene Music\969\The Beginning Of Chaos\The Beginning.mp3"/>#
    aber sobald ich bei

    [autoit]


    $nPath = StringRegExpReplace($FRL,' <media src="','')

    [/autoit]


    ein weiteres zeichen hinzufüge, Schmeisst er mir die ganzen angaben übrn haufen und tut Nichts mehr...
    das StringReplace() hab ich extra noch hinzugefügt weil der bei ner Negativ Zahl von Rechts Nach Links Sucht...aber auch das will nicht -.-
    Das Ganze sollte am Ende so aussehen
    #E:\03_Eigene Music\969\The Beginning Of Chaos\The Beginning#

    Skilkor

  • Hilfe bei Rechner aus Array´s xD

    • Skilkor
    • 10. März 2011 um 16:25

    hab ich doch getan X( Da ich aber keinen gefunden habe der die Buttons So verwendet habich mich halt ebend gefragt wie man speziele zeichen aus einem 'Input/Edit' feld herausfiltern / Finden kann :P
    Deswegen auch

    [autoit]

    StringRegExp()

    [/autoit]


    Aber naja, ganz so schlecht wahr ich dan ja auch nicht... er funktionierte zu 50% X(

  • Hilfe bei Rechner aus Array´s xD

    • Skilkor
    • 10. März 2011 um 14:22
    [autoit]

    Execute

    [/autoit]


    wahr mir bis dato unbekannt (Ohne Witz)
    btw, thx

  • Hilfe bei Rechner aus Array´s xD

    • Skilkor
    • 9. März 2011 um 18:51

    Hiho ^^ nach langem hin und her (auch in der Shouthbox >_<)
    Hab ich mich entschloss nun doch n Thread zu machen....
    Ich wollte als kleine Array übung n taschenrechner machen...
    Das Prinzip funktioniert bisjetze....BISJETZE xD
    Ihrwie hab ich atm n totalen Brain Freeze -.- und komm ned weiter...

    Hier mal n Paar zeilen Code

    Spoiler anzeigen
    [autoit]


    #Region ### include ###
    #include <Array.au3>
    #include <GUIConstantsEx.au3>
    #include <RestrictControlRegExp.au3>
    #EndRegion ### include ###
    ;=============
    #Region ### Global Button ###
    Global $mButton[16]
    Global $Function[17] = ['0','.','=','1','2','3','4','5','6','7','8','9','0','/','*','+','%']
    Global $BN1[4] = [' / ',' * ',' + ',' - ']
    Global $BN2[3] = ['7','8','9']
    Global $BN3[3] = ['4','5','6']
    Global $BN4[3] = ['1','2','3']
    Global $BN5[3] = ['0','.',' ']
    Global $BLines[5] = [16,56,96,136,176]
    Global $Height[1] = [27]
    Global $Text, $Text1, $Taste1, $Input
    #EndRegion ### Global Button ###
    #Region ### GUI ###
    GUICreate("Rechner", 179, 218, 606, 437)
    GUICtrlCreateGroup("", 8, 0, 161, 209)
    $Input = GUICtrlCreateInput('',16,16,145,21)
    For $i = 0 To 3
    $mButton[$i] = GUICtrlCreateButton($BN1[$i],$BLines[$i],48,27,$Height)
    Next
    For $i = 1 To 3
    $Num = ($i * 4)
    $mButton[$Num] = GUICtrlCreateButton($BN2[$i-1],$BLines[$i-1],80,27,$Height)
    $mButton[$Num+1] = GUICtrlCreateButton($BN3[$i-1],$BLines[$i-1],112,27,$Height)
    $mButton[$Num+2] = GUICtrlCreateButton($BN4[$i-1],$BLines[$i-1],144,27,$Height)
    $mButton[$Num+3] = GUICtrlCreateButton($BN5[$i-1],$BLines[$i-1],176,27,$Height)
    Next
    $Rechn = GUICtrlCreateButton('=',136,144,27,55)
    $Clean = GUICtrlCreateButton('C',136,80,27,20)
    GUISetState(@SW_SHOW)
    #EndRegion ### GUI ###
    ;=============
    #Region ### EVENT ###
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $mButton[0] to $mButton[15]
    $Taste = GuictrlRead($nMsg)
    $Text&= $Taste
    GUICtrlSetData($Input,$Text)
    Case $Rechn
    _Rechn()
    Case $Clean
    _Clean()
    EndSwitch
    WEnd
    #EndRegion ### EVENT ###
    ;=============
    #Region ### Func _Rechn() ###
    Func _Rechn()
    ;~ Zur orientierung
    ;~ $V = GUICtrlRead($Input,1)
    ;~ $1 = StringRegExp($Text,'[\d]|[\d\d]|[\d\d\d]|[\d\d\d\d\d]')
    ;~ $2 = StringRegExp($Text,'[\.]')
    ;~ $3 = StringRegExp($Text,'[\d]|[\d\d]|[\d\d\d]|[\d\d\d\d\d]')
    ;~ $4 = StringRegExp($Text,'[\ + ]|\ - ]|[\ / ]|[\ * ]')
    ;~ $5 = StringRegExp($Text,'[\d]|[\d\d]|[\d\d\d]|[\d\d\d\d\d]')
    ;~ $6 = StringRegExp($Text,'[\.]')
    ;~ $7 = StringRegExp($Text,'[\d]|[\d\d]|[\d\d\d]|[\d\d\d\d\d]')
    ;~ $8 = StringRegExp($Text,'[\ = ]')
    ;~ Fertig mit Orientieren

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

    If StringRegExp($Text,'[\+]')Then
    $E = $Text + $Taste
    ControlSetText('','',$Input,$E)
    EndIf

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

    If StringRegExp($Text,'\-]') Then
    $E = $Text - $Taste
    ControlSetText('','',$Input,$E)
    EndIf

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

    If StringRegExp($Text,'[\/]') Then
    $E = $Text / $Taste
    ControlSetText('','',$Input,$E)
    EndIf

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

    If StringRegExp($Text,'[\*]') Then
    $E = $Text * $Taste
    ControlSetText('','',$Input,$E)
    EndIf

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

    EndFunc
    #EndRegion ### Func _Rechn() ###
    ;=============
    #Region ### Func _Clean() ###
    Func _Clean()
    ControlSetText('','',$Input,'0')
    EndFunc
    #EndRegion ### Func _Clean() ###

    [/autoit]


    Das funktioniert bisher ganz ok...solange nur eine zahl nach dem operator kommt :S und da weiss ich ned mehr weiter,wie ich das machenkann das er dan nichtmehr die lezte Zahl nimmt sondern die Ganze zahl die da steht.

  • Wiedergabeliste Ersteller[Update18.03.2011]

    • Skilkor
    • 7. März 2011 um 21:25

    Danke name22 ^^

    oh mann, ich bin wohl schonwieder müde und hab den zusammenhang nicht verstanden von progandy

  • Wiedergabeliste Ersteller[Update18.03.2011]

    • Skilkor
    • 7. März 2011 um 21:16

    Uuu, Interessant, und wie geht dass?

  • Löffelsprache Übersetzer

    • Skilkor
    • 7. März 2011 um 20:14

    Eine echt "Komische" Sprache oO die wahr / ist mir bis Heute unbekannt ^^
    Aber sie erinnert mich einwenig an meine Schulzeit wo wir "Läfisch" gesprochen haben...
    Das gibt etwa so:
    Hey, Das wahr wieder einmal Lustig Heute
    Henefey, Danafas wanafahr winifidenefer eineifeinmanafal Lunifustinifig Honofeutenefe

    ^^ währ auch mal ne möglichkeit sowas zu coden höhö ^^

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™