Hallo Autoitler-Profis,
ich glaube ich sehe mal wieder den Wald vor lauter Bäumen nicht. Ich möchte in meiner GUI ein Video in einer Dauerschleife laufen lassen.
so habe ich angefangen
C
#include <AutoItConstants.au3>
#include <GUITab.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <File.au3>
#include <Array.au3>
#include <Word.au3>
#include <WordConstants.au3>
#include <Clipboard.au3>
#include <Misc.au3>
#include <MsgBoxConstants.au3>
#include <ComboConstants.au3>
#include <StaticConstants.au3>
#include <ButtonConstants.au3>
#include <IE.au3>
#include <Process.au3>
#include <WinAPIFiles.au3>
#include <WinAPISys.au3>
#include <WinAPI.au3>
#include <date.au3>
#include <String.au3>
#include <StringConstants.au3>
#include <MenuConstants.au3>
#include <AVIConstants.au3>
#include <ProgressConstants.au3>
#include <EditConstants.au3>
#Region ### START Koda GUI section ### Form=E:\Arbeit\Batchdateien\Scripte\BatteryLifeTest\Form1.kxf
$Form1 = GUICreate("Test by HaSc (C) 2018", @DesktopWidth, @DesktopHeight, -1, -1, BitOR($GUI_SS_DEFAULT_GUI,$WS_MAXIMIZEBOX,$WS_SIZEBOX,$WS_THICKFRAME,$WS_MAXIMIZE,$WS_TABSTOP))
GUICtrlSetResizing(-1, $GUI_DOCKAUTO)
GUISetBkColor(0xFFFFFF)
$Startbutton = GUICtrlCreateButton("Start", 264, 856, 249, 57)
GUICtrlSetFont(-1, 12, 800, 0, "Arial")
GUICtrlSetResizing(-1, $GUI_DOCKAUTO)
$oWMP = ObjCreate("WMPLayer.ocx") ;mediaplayer-objekt erstellen -> für die Einstellungen: new-object -comobject Wmplayer.ocx | get-member in Powershell ausführen
GUICtrlCreateObj($oWMP,768, 8, 1120, 921) ;objekt ins gui setzen und grösse angeben
GUICtrlSetResizing(-1, $GUI_DOCKAUTO)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Startbutton
Batterytest()
EndSwitch
WEnd
Func Batterytest()
While 1
$oWMP.URL = @ScriptDir & "\Wildlife.wmv" ;url/link zur avi/mp3/wma/wmv/... datei
$oWMP.uiMode = "full" ;videos anzeigen lassen und andere funktionen ausblenden (auf "full" setzen für alles anzeigen)
$oWMP.settings.mute = True
$oWMP.controls.play() ;abspielen (Play Taste)
WEnd
EndFunc
Alles anzeigen
Wie kann ich die While-Schleife pausieren lassen bis das Video abgelaufen ist? Versuche mit ProzessWaitClose schlugen fehl
Achja, das Video dauert 30 Sekunden aber Sleep(30000) finde ich keine gute Lösung. Das video ist 25MB groß und lässt sich nicht als Dateianhang hochladen
Den VideoStatus kann ich mit $oWMP.playstate abfragen(https://msdn.microsoft.com/en-us/library/…5(v=vs.85).aspx). Nur mit welchen Code/Befehl pausiere ich die Dauerschleife?