WMP / FFDshow "flip"
hi,
i wrote, with Xbase++, activex Player with WMP.
as Codec is use FFDshow.
sometimes i got "upside-down" Video so i use
FFDshow "flip" Option. FFDshow also have
a "remote Keyboard" Option so i can use "Crtl-Alt-F"
for "flip"
now i try to simulate "Crtl-Alt-F" from my activex WMPlayer.
*** snip ***
FUNCTION KEYSENDF
// Tasten drücken
keybd_event(VK_CONTROL,0,0,0)
keybd_event(VK_MENU,0,0,0)
keybd_event(ASC("F"),0,0,0)
// Tasten wieder loslassen
keybd_event(ASC("F"),0,KEYEVENTF_KEYUP,0)
keybd_event(VK_MENU,0,KEYEVENTF_KEYUP,0)
keybd_event(VK_CONTROL,0,KEYEVENTF_KEYUP,0)
RETURN NIL
FUNCTION keybd_event(nVk,nScan,nFlags,nExtraInfo)
STATIC keybd_event
IF keybd_event = NIL
keybd_event := DllPrepareCall("user32.dll",DLL_STDCALL,"keybd_event")
ENDIF
RETURN DllExecuteCall(keybd_event,nVk,nScan,nFlags,nExtraInfo)
.or.
FUNCTION FF_FLIP()
LOCAL cStr := ""
cStr := cGenKeyboardInput(VK_CONTROL)
cStr += cGenKeyboardInput(VK_MENU)
cStr += cGenKeyboardInput(ASC("F"))
cStr += cGenKeyboardInput(ASC("F") ,,KEYEVENTF_KEYUP)
cStr += cGenKeyboardInput(VK_MENU ,,KEYEVENTF_KEYUP)
cStr += cGenKeyboardInput(VK_CONTROL,,KEYEVENTF_KEYUP)
SendInput(cStr)
...
FUNCTION cGenKeyboardInput(vk,scan,flags,time,extra)
DEFAULT vk := 0
DEFAULT scan := 0
DEFAULT flags := 0
DEFAULT time := 0
DEFAULT extra := 0
RETURN
PADR(U2Bin(1)+W2Bin(vk)+W2Bin(scan)+U2Bin(flags)+U2Bin(time)+U2Bin(extra),28,CHR(0))
FUNCTION SendInput(cInput)
RETURN DllCall("user32",32,"SendInput",INT(LEN(cInput) / 28),cInput,28)
*** eof ***
but both do not work ? it does work from a small Demo without WMP
so im asking what can be the reason with activex WMP that "Crtl-Alt-F"
will not pass to FFDshow, any Idee ?
greetings by OHR
Jimmy
date: Wed, 13 Aug 2008 21:27:29 +0200
author: AUGE_OHR AUGE_OHR*