Ich benötige eine Lösung, mit der ich das bekannte SWF der Seite http://leekspin.com/ in einer Endlosschleife und möglichst in einem Kiosk ausführen kann.
Den Kiosk habe ich hier im Board auch gefunden:
Code: Alles auswählen
#WINSTA_ALL = #WINSTA_ACCESSCLIPBOARD | #WINSTA_ACCESSGLOBALATOMS | #WINSTA_CREATEDESKTOP | #WINSTA_ENUMDESKTOPS | #WINSTA_ENUMERATE | #WINSTA_EXITWINDOWS | #WINSTA_READATTRIBUTES | #WINSTA_READSCREEN | #WINSTA_WRITEATTRIBUTES | #DELETE | #READ_CONTROL | #WRITE_DAC | #WRITE_OWNER
#DESKTOP_ALL = #DESKTOP_READOBJECTS | #DESKTOP_CREATEWINDOW | #DESKTOP_CREATEMENU | #DESKTOP_HOOKCONTROL | #DESKTOP_JOURNALRECORD | #DESKTOP_JOURNALPLAYBACK | #DESKTOP_ENUMERATE | #DESKTOP_WRITEOBJECTS | #DESKTOP_SWITCHDESKTOP | #STANDARD_RIGHTS_REQUIRED
#UOI_NAME = $2
Global m_sDesktop.s,hDesk,hDesk_2
m_sDesktop = Space(128)
Global cmdline$
cmdline$="spin.exe"
Procedure.s GetDesktopName()
Protected hDesktop, lR, lSize, sBuff.s, iPos
hDefaultDesk = OpenInputDesktop_(0, #False, #DESKTOP_READOBJECTS)
If hDefaultDesk
lSize = (Len(m_sDesktop) + 1) * 2
sBuff=Space(lSize+1)
lR = GetUserObjectInformation_(hDefaultDesk, #UOI_NAME, @sBuff, lSize, @lSize)
CloseHandle_(hDesktop)
EndIf
ProcedureReturn sBuff
EndProcedure
;hWinSta = OpenWindowStation_("WinSta0", 0, #WINSTA_ALL)
;hDefaultDesk = OpenDesktop_("Default", #DF_ALLOWOTHERACCOUNTHOOK, 0, #DESKTOP_SWITCHDESKTOP)
;Chk(hDefaultDesk, "Failed to open default desktop")
hDesk = CreateDesktop_("My Desktop 2", 0, 0, #DF_ALLOWOTHERACCOUNTHOOK, #DESKTOP_ALL, 0)
SetThreadDesktop_(hDesk)
SwitchDesktop_(hDesk)
OpenWindow(1, 0, 0, 0, 0, "", #PB_Window_BorderLess )
m_sDesktop = GetDesktopName()
tSi.STARTUPINFO
tSi\lpTitle = @m_sDesktop
tSi\lpDesktop = @m_sDesktop
;
; tPi.PROCESS_INFORMATION
;
;
Result = CreateProcess_(#NUL,@cmdline$,#NUL,#NUL,#False,0,#NUL,#NUL,@tSi,@tPi)
Repeat
Delay(1)
Until GetAsyncKeyState_(#VK_ESCAPE) & $8000 = 32768
;TerminateThread_(GetThreadDesktop_(GetCurrentThreadId_()), 0)
hDesk_d = OpenDesktop_("Default", 0, #False, #DESKTOP_SWITCHDESKTOP)
SwitchDesktop_(hDesk_d)
SetThreadDesktop_(hDesk_d)
;CloseDesktop_(hDesk)
Die SWF in ein EXE zu packen (z. B. mit dem Flash-Projektor) bringt nichts, da die Datei bei Beginn nicht bildschirmfüllend angezeigt wird.
Kann PureBasic Filme bildschirmfüllend und in einer Loop darstellen? Das würde mein Problem lösen...
Vielen Dank,
Lateiner