#Include "windows.bi" #include "win\tlhelp32.bi" Declare Sub TastenSim(taste As String = "") Declare Sub abspielen(datei As String) Type IINPUT itype As Integer Union mi As MOUSEINPUT ki As KEYBDINPUT hi As HARDWAREINPUT End Union End Type Dim Shared As HWND hWndDiesesFenster, hWndVLC Dim As String g, datei hWndDiesesFenster = GetForegroundWindow() Shell "start C:\Programme\VideoVLC\vlc.exe" 'VLC-Player starten Sleep 1000 'warten bis VLC-Player sicher gestartert ist hWndVLC = GetForegroundWindow() 'fensterhandle vom VLC-Player ermitteln SetForegroundWindow(hWndDiesesFenster) Print "1 - Video 1" Print "2 - Video 2" Print "3 - Video 3" Do g = InKey Select Case g Case "1" datei = "D:\videos\video1.avi" Exit Do Case "2" datei = "D:\videos\video2.avi" Exit Do Case "3" datei = "D:\videos\video3.avi" Exit Do End Select Loop abspielen(datei) SetForegroundWindow(hWndDiesesFenster) Cls Print "F1 = Pause/weiter" Print "F2 = Beenden" Do g = InKey Select Case g Case Chr(255,59) 'F1 SetForegroundWindow(hWndVLC) 'VLC-player in den vordergrund holen Sleep 100 TastenSim(" ") 'druck auf 'SPACE' simulieren ( = pause/weiter) SetForegroundWindow(hWndDiesesFenster) 'konsolenfenster in den vordergrund Sleep 100 Case Chr(255,60) 'F2 SetForegroundWindow(hWndVLC) 'VLC-player in den vordergrund holen Sleep 100 TastenSim("ctrl + q") 'VLC-player beenden End End Select Loop Sub TastenSim(taste As String = "") Dim As IINPUT ip Dim As String ut Dim As UByte ta ta = Asc(UCase(Right(taste,1))) 'taste als großbuchstabe If Len(taste) > 1 Then ut = LCase(Left(taste,InStr(taste, Any " +") - 1)) 'umschalttaste isolieren Else ut = "" 'keine umschalttaste EndIf ip.itype = INPUT_KEYBOARD With ip.ki .wScan = 0 .dwFlags = 0 If ut <> "" Then Select Case ut 'umschalttaste drücken Case "shift" .wVk = VK_SHIFT Case "alt" .wVk = VK_MENU Case "altgr" .wVk = VK_RMENU Case "ctrl" .wVk = VK_CONTROL End Select SendInput(1,Cast(LPINPUT,@ip),SizeOf(ip)) EndIf .wVk = ta SendInput(1,Cast(LPINPUT,@ip),SizeOf(ip)) 'taste drücken .dwFlags = KEYEVENTF_KEYUP SendInput(1,Cast(LPINPUT,@ip),SizeOf(ip)) 'taste loslassen If ut <> "" Then Select Case ut 'umschalttaste loslassen Case "shift" .wVk = VK_SHIFT Case "alt" .wVk = VK_MENU Case "altgr" .wVk = VK_RMENU Case "ctrl" .wVk = VK_CONTROL End Select SendInput(1,Cast(LPINPUT,@ip),SizeOf(ip)) EndIf End With End Sub Sub abspielen(datei As String) Dim As Integer y, kc Dim As String f SetForegroundWindow(hWndVLC) Sleep 100 TastenSim("ctrl + o") 'datei öffnen - menü 'abzuspielende datei eingeben TastenSim("shift + 2") 'anführungszeichen vorne For y = 0 To Len(datei) - 1 'dateinamen kc = VkKeyScan(datei[y]) 'in scancodes umwandeln Select Case HiByte(kc) 'umschalttasten Case 1 f = "shift+" Case 2 f = "ctrl+" Case 6 f = "altgr+" Case Else f = "" End Select TastenSim(f + Chr(LoByte(kc))) 'tastendruck simulieren Next TastenSim("shift + 2") 'anführungszeichen hinten TastenSim(Chr(VK_RETURN)) 'return Sleep 1000 'warten, bis video abgespielt wird End Sub