oda VLC verwenden
Beiträge von eukalyptus
-
-
Was willst du denn machen?
Du kannst z.b. jedes Byte (=2 Stellen Hex) mit oben genannter Funktion in Binärcode umwandeln
z.b.: 0xFF=11111111Also zuerst StringToBinary und dann Schritt für Schritt in tatsächlichen BinärCode...
lgE
-
Reicht dir evtl. StringToBinary ?
-
Jo, zumindest für Zahlen...
von Progandy:
[autoit];===============================================================================
[/autoit]
;
; Function Name: _TranslateSystem
; Description:: Wandelt eine Zahl zwischen verschiedenen Zahlensystemen um.
; Parameter(s): $zahl - Die Zahl zum Umwandeln
; $OldSystem - [Optional] Das alte System (Default: 10)
; $NewSystem - [Optional] Das neue System (Default: 2)
; Requirement(s):
; Return Value(s): Success: Number in new format and @extended set to SystemBase
; Error: -1.#NAN or -1.#IND
; @error set to:
; 1 - Zahl nicht richtig formatiert
; 2 - neues System nicht im darstellbaren Bereich
; 3 - altes System nicht im darstellbaren Bereich
; 4 - Zahl enthält Zeichen, die nicht im System vorkommen
; Author(s): Prog@ndy; sd (VB-Code)
; VB source used from http://www.vbarchiv.net/tipps/details.php?id=1590
;
;===============================================================================
;
Func _TranslateSystem($zahl, $OldSystem=10, $NewSystem = 2)
Local $out ;' Ausgabevariable
Local $temp ;' Temporäre Variable
$OldSystem = Int($OldSystem)
$NewSystem = Int($NewSystem)
Select
Case Not StringRegExp($zahl,"\A[0-9a-zA-Z]+\Z")
Return SetError(2,0,"-1.#NAN")
Case $NewSystem < 2 Or $NewSystem > 62
Return SetError(2,0,"-1.#IND")
Case $OldSystem < 2 Or $OldSystem > 62
Return SetError(3,0,"-1.#IND")
EndSelect
;' Zeichen der Zahlensysteme ( bis Hexadezimalsystem )
Local $chrsys = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
If $OldSystem <> 10 Then
Local $CaseSense = ($OldSystem > 36)
Local $ziffern = StringSplit($zahl,""), $nummer
$zahl = 0
For $i = 1 To $ziffern[0]
$nummer = StringInStr($chrsys,$ziffern[$i],$CaseSense,1)
If $nummer > 0 Then $zahl += ($nummer-1)*($OldSystem^($ziffern[0]-$i))
If $nummer > $OldSystem Then Return SetError(4,0,"1.#NAN")
Next
EndIf
;' Solange bis Zahl = 0
While $zahl <> 0
;' Stelle der Zahl ermitteln
$temp = Mod($zahl, $NewSystem )
;' Zahl anhängen
$out = StringMid($chrsys, $temp + 1, 1) & $out
;' Integerdivision
$zahl = Int($zahl / $NewSystem)
Wend
SetExtended($NewSystem)
Return $out
EndFunclgE
-
Siehe Post #5
-
Moment, wollt Ihr jetzt ein Avi oda ein Mp3 draus machen?

-
Hi
Ist etwas grob zusammengezimmert:
Spoiler anzeigen
[autoit]#include <GUIConstants.au3>
[/autoit]
#include <inet.au3>
#include <Date.au3>
GUICreate("You Tube Video-Downloader", 273, 105, 193, 115, -1)
$DwnInput = GUICtrlCreateInput("Hier YouTube Link Rein !", 8, 24, 257, 21)
GUICtrlCreateLabel("www.youtube.com Download Link:", 8, 8, 268, 15)
$start = GUICtrlCreateButton("&Start", 8, 48, 128, 25, 0)
$Progress = GUICtrlCreateProgress(8, 80, 257, 16)
$abb = GUICtrlCreateButton("A&bbruch", 137, 48, 128, 25, 0)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $start
GUICtrlSetState($start,$GUI_DISABLE)
$dwnlink = GUICtrlRead($DwnInput)
$sCode=_INetGetSource ($dwnlink)
$s_t=StringRegExp($sCode, "&t=(.*?)&", 3)
$s_v=stringmid($dwnlink,stringinstr($dwnlink,"v=")+2)
$save = FileSaveDialog("Speichere FLV","","Flash Video(*.flv)",-1,$s_v)
If StringRight($save,4) <> ".swf" Then $save&=".flv"
_Download("http://youtube.com/get_video?video_id=" & $s_v & "&t=" & $s_t[0],$save,$Progress)
GUIDelete()
MsgBox(0,"","Fertig!")
Exit
EndSwitch
WEnd
Func _Download($site,$punkt,$prog=0)
$orisize = InetGetSize($site)
InetGet($site,$punkt,1,1)
If $prog = 0 Then ProgressOn("Download","")
Do
$msg = GUIGetMsg()
If $msg = $abb Then
If MsgBox(4,"","Abbruch?") = 6 Then Exit
EndIf
$size1 = FileGetSize($punkt)
$MBsize1 = FileGetSize($punkt)
$inetget = @InetGetBytesRead
$Prozent = (100 * $inetget ) / $orisize
$decimalplace = Round ($Prozent)
$decimalplaceMBsize1 = Round (@InetGetBytesRead / 1024)
If $prog = 0 Then
ProgressSet ($Prozent, $decimalplace & "% " & "(" & $decimalplaceMBsize1 & ") Kb sind bereits gedownloadet.")
Else
GUICtrlSetData($prog,$Prozent)
EndIf
Until @InetGetActive = 0
If $prog = 0 Then ProgressOff ()
Local $sFFmpeg="", $hFFmpeg
$hFFmpeg=Run(@ScriptDir & '\ffmpeg.exe -i "' & $punkt & '" -y "' & StringTrimRight($punkt,3) & 'avi"',@ScriptDir,@SW_HIDE,0x4)
While 1
$sFFmpeg &= StderrRead($hFFmpeg)
If @error Or StringInStr($sFFmpeg,"Duration") Then ExitLoop
WEnd
$sFFmpeg = StringLeft(StringTrimLeft($sFFmpeg, StringInStr($sFFmpeg, "Duration:") + 9),
$iTicks = _TimeToTicks(StringLeft($sFFmpeg, 2), StringMid($sFFmpeg, 4, 2), StringMid($sFFmpeg, 7, 2))
While 1
$sFFmpeg = StderrRead($hFFmpeg)
If @error Then ExitLoop
If StringInStr($sFFmpeg,"time=") Then
$sFFmpeg=StringTrimLeft($sFFmpeg, StringInStr($sFFmpeg, "time=") + 4)
GUICtrlSetData($prog,(StringLeft($sFFmpeg, StringInStr($sFFmpeg, ".")-1) *100000)/$iTicks)
EndIf
WEnd
Return $punkt
EndFuncDas konvertierte Video ist noch kein "reines" Avi, sondern ein mp4-Codec
Du kannst noch mit -vcodec einen anderen Videocodec auswählen...
Infos hierzu: ffmpeg.exe -h bzw. ffmpeg.exe -formatsffmpeg.exe gibts hier:
http://www.videohelp.com/download/ffmpeg-0.5.7zlgE
-
Hi
folgendes Script erzeugt ein Jpg mit 9 Vorschaubildern eines Videos:
Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. Dazu benötigt man ffmpeg.exe:
http://www.videohelp.com/download/ffmpeg-0.5.7zDas Script kompilieren und dann via drag´n´drop ein/mehrere Videodateien auf die Exe ziehen...
Spoiler anzeigen
[autoit]#include <WindowsConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <Misc.au3>
_Singleton("ffmpeg thumbnail generator")
#include <Date.au3>
#include <GdiPlus.au3>If $Cmdline[0] < 1 Then Exit
[/autoit] [autoit][/autoit] [autoit]
$hGui = GUICreate("ffmpeg thumb generator", 150, 55, -1, -1, -1, BitOR($WS_EX_TOPMOST, $WS_EX_TOOLWINDOW))
$hProgress1 = GUICtrlCreateProgress(5, 5, 140, 20, 0x1)
$hProgress2 = GUICtrlCreateProgress(5, 30, 140, 20, 0x1)
GUISetState()_GDIPlus_Startup()
[/autoit] [autoit][/autoit] [autoit]
For $i = 1 To $Cmdline[0]
DirRemove(@ScriptDir & "\ffmpegthumbtemp", 1)
DirCreate(@ScriptDir & "\ffmpegthumbtemp")
$sMovieFile = $Cmdline[$i]
$iTicks = _CheckMovieLength($sMovieFile)
If $iTicks = 0 Then $iTicks = 20000
GUICtrlSetData($hProgress1, $i * 100 / $Cmdline[0])
_CreateThumbnails($sMovieFile, $iTicks)
Next
DirRemove(@ScriptDir & "\ffmpegthumbtemp", 1)
_GDIPlus_Shutdown()Func _CreateThumbnails($sMovieFile, $iTicks)
[/autoit] [autoit][/autoit] [autoit]
Local $tempGraph = _GDIPlus_GraphicsCreateFromHWND(_WinAPI_GetDesktopWindow())
Local $hBitmap = _GDIPlus_BitmapCreateFromGraphics(520, 400, $tempGraph)
_GDIPlus_GraphicsDispose($tempGraph)
Local $hGraphics = _GDIPlus_ImageGetGraphicsContext($hBitmap)
_GDIPlus_GraphicsClear($hGraphics, 0xFFFFFFFF)
Local $h, $m, $s, $hImage, $iCnt = 0
_TicksToTime($iTicks, $h, $m, $s)
For $i = 0 To 2
For $j = 0 To 2
$iCnt += 1
_TicksToTime(($iCnt * 10 * $iTicks) / 100, $h, $m, $s)
GUICtrlSetData($hProgress2, $iCnt * 100 / 9)
RunWait('"' & @ScriptDir & '\ffmpeg.exe" -ss ' & $h & ':' & $m & ':' & $s & ' -vframes 1 -i "' & $sMovieFile & '" -s 160×120 -an -r 0.05 -y "' & @ScriptDir & '\ffmpegthumbtemp\' & $iCnt & '%d.jpg"', @ScriptDir, @SW_HIDE)
$hImage = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\ffmpegthumbtemp\" & $iCnt & "1.jpg")
_GDIPlus_GraphicsDrawImage($hGraphics, $hImage, 10 + $i * 170, 10 + $j * 130)
_GDIPlus_ImageDispose($hImage)
Next
Next
_GDIPlus_ImageSaveToFile($hBitmap, StringLeft($sMovieFile, StringInStr($sMovieFile, ".", 0, -1)) & 'jpg')
_GDIPlus_BitmapDispose($hBitmap)
_GDIPlus_GraphicsDispose($hGraphics)
EndFunc ;==>_CreateThumbnailsFunc _CheckMovieLength($sMovieFile)
[/autoit]
Local $sFFmpeg = ""
Local $hFFmpeg = Run('ffmpeg.exe -i "' & $sMovieFile & '"', @ScriptDir, @SW_HIDE, 0x4)
While 1
$sFFmpeg &= StderrRead($hFFmpeg)
If @error Then ExitLoop
WEnd
$sFFmpeg = StringLeft(StringTrimLeft($sFFmpeg, StringInStr($sFFmpeg, "Duration:") + 9),
Local $iTicks = _TimeToTicks(StringLeft($sFFmpeg, 2), StringMid($sFFmpeg, 4, 2), StringMid($sFFmpeg, 7, 2))
Return $iTicks
EndFunc ;==>_CheckMovieLengthlgE
-
Hi
Ich hab vor kurzem ein Tool geschrieben, welches via ffmpeg eine Thumbnail-Galerie von Videos erstellt.
Werd das demnächst mal posten...
So kann man auch konvertieren

lgE
-
Hi
Ich kann momentan leider nichts testen (Firma-PC), aber ich würde empfehlen mit TimerInit und TimerDiff zu arbeiten, statt mit Adlib.
Mit welcher Error-Meldung stürzt das Script ab?
lgE
-
Ich hab jetzt den Benchmark so umgeschrieben, daß er jedes richtige Ergebnis akzeptiert.
Ein richtiges Sudoku hat in den Quersummen (Horizontal, Vertikal & Block) jeweils 45 - sobald dies der Fall ist, wird das Ergebnis als richtig bewertet.Download in meinem vorletzten Post...
So sieht die Auswertung aus:
Code
Alles anzeigenSudoku Logisch 1 Falsch Sudoku Logisch 2 Falsch Sudoku Logisch 3 Falsch Sudoku Logisch 4 Falsch Sudoku Logisch 5 Falsch Sudoku Logisch 6 Falsch Sudoku Logisch 7 Falsch Sudoku Logisch 8 Falsch Sudoku Logisch 9 Falsch Sudoku Logisch 10 Falsch Ergebnis Logisch: Zeit gesammt: 0.135492080697407 Zeit Durchschnitt: 0.0135492080697407 Sudoku Backtrack 1 Falsch Sudoku Backtrack 2 Falsch Sudoku Backtrack 3 Falsch Sudoku Backtrack 4 Falsch Sudoku Backtrack 5 Falsch Sudoku Backtrack 6 Falsch Sudoku Backtrack 7 Falsch Sudoku Backtrack 8 Falsch Sudoku Backtrack 9 Falsch Sudoku Backtrack 10 Falsch Ergebnis Logisch: Zeit gesammt: 0.135492080697407 Zeit Durchschnitt: 0.0135492080697407 Ergebnis Backtrack: Zeit gesammt: 0.132419064434167 Zeit Durchschnitt: 0.0132419064434167 Ergebnis gelöste Sudokus: 0lgE
-
Hi
Ich denke mal du benötigst die Funktion
[autoit]_DateDiff
[/autoit]
aus der Date.au3-UDFlgE
-
Hi
Kannst du bitte mal überprüfen, ob die Sudokus mehr als 2 Lösungen haben?
Mit 2 kann mein Benchmark noch umgehen...Also generell sind ext. Dll´s verboten, außer sie sind in der Aufgabenstellung erlaubt!
Sonst schreib ich meinen Solver in Pascal und bin um Meilen schneller...
Oda nehm gleich einen fertigen Solver ausm Netz...
lgE
-
So ich hab jetzt mal einen Benchmark erstellt und 10 logisch lösbare und 10 backtrack-Sudokus beigefügt.
Falls jemand Probleme mit diesen Sudokus hat (zu schwer, zu leicht, usw...) dann bitte gleich posten!
(Un wenn jemand meint, ich hätte mir die Sudokus extra für mein Script ausgesucht, dann ersetze ich auch gerne die Sudokus gegen andere Vorschläge...;))Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. Da mein Script noch kein Backtrack kann, poste ich nur mal meine logischen Ergebnise:
Code
Alles anzeigenSudoku Logisch 1 Richtig - Benötigte Zeit: 312.79506194223 Sudoku Logisch 2 Richtig - Benötigte Zeit: 244.420170720022 Sudoku Logisch 3 Richtig - Benötigte Zeit: 266.318484611871 Sudoku Logisch 4 Richtig - Benötigte Zeit: 272.166993291047 Sudoku Logisch 5 Richtig - Benötigte Zeit: 330.572461025074 Sudoku Logisch 6 Richtig - Benötigte Zeit: 769.037964322281 Sudoku Logisch 7 Richtig - Benötigte Zeit: 633.289147084336 Sudoku Logisch 8 Richtig - Benötigte Zeit: 1956.07067378675 Sudoku Logisch 9 Richtig - Benötigte Zeit: 713.07386832684 Sudoku Logisch 10 Richtig - Benötigte Zeit: 750.123549222038 Ergebnis Logisch: Zeit gesammt: 6247.86837433249 Zeit Durchschnitt: 624.786837433249lgE
-
Also ich bin mal dafür, daß wir den Abgabetermin auf 30. April festlegen.
Ein Sudokusolver sollte alle lösbaren Sudokus lösen können. Falls wir nur logisch lösbare verwenden, dann werden die Scripte natürlich rein auf die Testsuite optimiert und sind generell eigentlich wertlos.
Wenn wir andererseits nur schwere Sudokus vorgeben, dann haben die logischen Scripte das Nachsehen.
Deshalb mein Vorschlag:
Unsere Testsuite enthält 10 leichte, rein logisch lösbare Sudokus und 10 schwere, welche nur via Backtracking gelöst werden können.Man muß somit eine gesunde Mischung aus Logik und Backtracking erstellen.
Und dann mehrere Bewertungen:
Wer löst die logischen Sudokus am schnellsten
Wer die Backtracking-Sudokus am schnellsten
und wer löst die meisten SudokusSomit können dann auch alle mitmachen, die z.b. nur rein logische Scripte erstellen wollen...
wenn ich Zeit hab, dann kann ich bis Anfang April eine Testsuite erstellen...
was haltet ihr davon?
E
-
Ahh ! *durchblick*

Auch sehr interesante Lösung
Danke BugFix und Progandy -
Die Methode mit $TVN_SELCHANGED funktioniert allerdings nur, wenn man den TreeView mit
[autoit]_GUICtrlTreeView_Create
[/autoit]
[autoit]
stattGUICtrlCreateTreeView
[/autoit]
erstelltHier mal BugFix´s Beispiel als Beispiel:
Spoiler anzeigen
[autoit]#include <GUIConstantsEx.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <GuiTreeView.au3>
#include <TreeViewConstants.au3>
#include <WindowsConstants.au3>Opt("MustDeclareVars", 1)
[/autoit] [autoit][/autoit] [autoit]
Opt("GuiOnEventMode", 1)Global $gui, $hImage, $hTV, $aID_Sub[5], $ID_Table
[/autoit] [autoit][/autoit] [autoit]$gui = GUICreate('Test TreeView')
[/autoit] [autoit][/autoit] [autoit]
GUISetOnEvent($GUI_EVENT_CLOSE, '_end')
$hTV = _GUICtrlTreeView_Create($gui,10,10,300,350,BitOR($TVS_HASBUTTONS, $TVS_HASLINES, $TVS_LINESATROOT, _
$TVS_DISABLEDRAGDROP, $TVS_SHOWSELALWAYS), $WS_EX_CLIENTEDGE)$hImage = _GUIImageList_Create(16, 16, 5, 3)
[/autoit] [autoit][/autoit] [autoit]
_GUIImageList_AddIcon($hImage, "shell32.dll", 98)
_GUIImageList_AddIcon($hImage, "shell32.dll", 96)
_GUIImageList_AddIcon($hImage, "shell32.dll", 36)
_GUICtrlTreeView_SetNormalImageList($hTV, $hImage)_GUICtrlTreeView_BeginUpdate($hTV)
[/autoit] [autoit][/autoit] [autoit]
$ID_Table = _GUICtrlTreeView_Add($hTV, 0, 'Table', 0, 0)
For $i = 1 To 5
$aID_Sub[$i-1] = _GUICtrlTreeView_AddChild($hTV, $ID_Table, 'Sub' & $i, 1, 1)
;GUICtrlSetOnEvent($aID_Sub[$i-1], 'click_TV') ; does'nt work (because have no ID and handle instead ?)
For $j = 1 To 3
_GUICtrlTreeView_AddChild($hTV, $aID_Sub[$i-1], 'Sub_Sub' & $j, 2, 2)
Next
Next
_GUICtrlTreeView_EndUpdate($hTV)
_GUICtrlTreeView_Expand($hTV, $ID_Table)GUISetState()
[/autoit] [autoit][/autoit] [autoit]
GUIRegisterMsg($WM_NOTIFY, 'WM_NOTIFY') ; by using WM_NOTIFY are strange results, are reading with an offset of 1 click!While 1
[/autoit] [autoit][/autoit] [autoit]
Sleep(100)
WEndFunc _end()
[/autoit] [autoit][/autoit] [autoit]
Exit
EndFuncFunc click_TV()
[/autoit] [autoit][/autoit] [autoit]
ConsoleWrite(_GUICtrlTreeView_GetText($hTV, _GUICtrlTreeView_GetSelection($hTV)) & @CRLF)
EndFuncFunc WM_NOTIFY($hWnd, $iMsg, $iwParam, $ilParam)
[/autoit] [autoit][/autoit] [autoit]
#forceref $hWnd, $iMsg, $iwParam
Local $hWndFrom, $iIDFrom, $iCode, $tNMHDR, $hWndTreeview
$hWndTreeview = $hTV
If Not IsHWnd($hTV) Then $hWndTreeview = GUICtrlGetHandle($hTV)$tNMHDR = DllStructCreate($tagNMHDR, $ilParam)
[/autoit]
$hWndFrom = HWnd(DllStructGetData($tNMHDR, "hWndFrom"))
$iIDFrom = DllStructGetData($tNMHDR, "IDFrom")
$iCode = DllStructGetData($tNMHDR, "Code")
Switch $hWndFrom
Case $hWndTreeview
Switch $iCode
Case $TVN_SELCHANGED
click_TV()
EndSwitch
EndSwitch
Return $GUI_RUNDEFMSG
EndFunc ;==>WM_NOTIFYlgE
-
Hi
Ich steh grad vor dem selben Problem!
Wie war das jetzt mit dem Dummy? Das kapier ich irgendwie nicht...thx
EEDIT:
Hab grad rausgefunden, daß es perfekt (für mich) funktioniert, wenn ich $NM_CLICK durch $TVN_SELCHANGED ersetzte!
Also auch für mich : gelöst
-
Wenn du z.B. mit WinGetState den Wert 10 bekommst, dann brauchst du Bitand um herauszufinden, welche States es tatsächlich sind
Schau dir mal folgendes Beispiel an:
Spoiler anzeigen
[autoit]Global $State
[/autoit] [autoit][/autoit] [autoit]GUICreate("", 200, 300)
[/autoit] [autoit][/autoit] [autoit]
$CB_Start = GUICtrlCreateDummy()
GUICtrlCreateCheckbox("Exists <1>", 10, 10)
GUICtrlCreateCheckbox("Visible <2>", 10, 30)
GUICtrlCreateCheckbox("Enabled <4>", 10, 50)
GUICtrlCreateCheckbox("Active <8>", 10, 70)
GUICtrlCreateCheckbox("Minimized <16>", 10, 90)
GUICtrlCreateCheckbox("Maximized <32>", 10, 110)
$CB_End = GUICtrlCreateDummy()
$hState = GUICtrlCreateLabel("", 10, 140, 50, 20)
$LB_Start = GUICtrlCreateDummy()
GUICtrlCreateLabel("", 10, 170, 200, 20)
GUICtrlCreateLabel("", 10, 190, 200, 20)
GUICtrlCreateLabel("", 10, 210, 200, 20)
GUICtrlCreateLabel("", 10, 230, 200, 20)
GUICtrlCreateLabel("", 10, 250, 200, 20)
GUICtrlCreateLabel("", 10, 270, 200, 20)
$LB_End = GUICtrlCreateDummy()
GUISetState()While 1
[/autoit]
$msg = GUIGetMsg()
If $msg = -3 Then Exit
If $msg > $CB_Start And $msg < $CB_End Then
$State = 0
If GUICtrlRead($CB_Start + 1) = 1 Then $State = BitOR($State, 1)
If GUICtrlRead($CB_Start + 2) = 1 Then $State = BitOR($State, 2)
If GUICtrlRead($CB_Start + 3) = 1 Then $State = BitOR($State, 4)
If GUICtrlRead($CB_Start + 4) = 1 Then $State = BitOR($State,
If GUICtrlRead($CB_Start + 5) = 1 Then $State = BitOR($State, 16)
If GUICtrlRead($CB_Start + 6) = 1 Then $State = BitOR($State, 32)
GUICtrlSetData($hState, "State: " & $State)
GUICtrlSetData($LB_Start + 1, "BitAnd($State, 1): " & BitAND($State, 1))
GUICtrlSetData($LB_Start + 2, "BitAnd($State, 2): " & BitAND($State, 2))
GUICtrlSetData($LB_Start + 3, "BitAnd($State, 4): " & BitAND($State, 4))
GUICtrlSetData($LB_Start + 4, "BitAnd($State, 8): " & BitAND($State, 8))
GUICtrlSetData($LB_Start + 5, "BitAnd($State, 16): " & BitAND($State, 16))
GUICtrlSetData($LB_Start + 6, "BitAnd($State, 32): " & BitAND($State, 32))
EndIf
WEndlgE
-
Oh,
man kann bei Exitloop Levels mitgeben und somit aus mehreren Scheifen gleichzeitig aussteigen?!?
Warum check ich das erst jetzt - hätte mir manchmal etwas Arbeit erspart
ThxE