EDITAR: Dado que mi problema original se debió a mi error, volveré a formular esta pregunta.Copiar contenido de Hosted Silverlight Control
Alojo un Silverlight en una ventana dentro de mi aplicación C++ según el código encontrado here.
Ahora me gustaría copiar el contenido del control en la memoria para usar el contenido dentro de mi propio procesador. El problema que tengo es que cuando configuro "EnableGPUAcceleration" en true, entonces BitBlt deja de funcionar, todo lo que obtengo es blackness.
Creo que en teoría debería haber una forma de copiar el contenido de un control Silverlight acelerado por la GPU con su alfa, p. con algo como glReadPixels.
¿Alguien tiene alguna idea de cómo copiar el contenido con alfa de un control Silverlight acelerado por gpu que no tiene ventanas?
Otro problema es que la ventana debe estar visible y ninguna otra ventana puede solaparse, de lo contrario no obtendré el contenido adecuado. Me gustaría que la ventana de alojamiento sea invisible.
El código de muestra de trabajo se puede encontrar en here (aunque sin el "ting" real de BitBlt que estoy tratando de poner en práctica).
¿Tiene un código de muestra que realmente demuestre su problema alfa? Porque el control Silverlight alojado en CodeProject se puede copiar con éxito con BitBlt, ¿verdad? ¿O me estoy perdiendo algo? –
@Simon: Estás en lo correcto. Mi código de prueba fue incorrecto. – ronag