Aplicación contenedora

14/03/2005 - 18:19 por Víctor | Informe spam
¿Conoce alguien la forma de crear una especie de formulario MDI en el que
poder "empotrar" aplicaciones externas (Word, Excel, etc.)?

He pensado hacerlo con un componente tipo Browser, pero el problema es que
no funcionará correctamente con todas las extensiones.

Y rizando el rizo ¿puede alguien ayudarme a controlar el escritorio mediante
programación?. Concretamente, me gustaría utilizarlo como un formulario en
el que colocar botones, listas desplegables, etc. He conseguido dibujar
botones mediante ControlPaint.DrawButton(...), pero sólo puedo dibujarlos y
no añadirles interacción.

Muchas gracias.
Víctor

Preguntas similare

Leer las respuestas

#1 Marino Posadas
15/03/2005 - 01:09 | Informe spam
Hola víctor

Curioso... Lo primero se puede hacer capturando el manejador de ventana y
asignándolo a la ventana que quieras mediante el API
SetParent()

Lo segundo, es otra historia. No adelantas nada con dibujar. El objeto no
"existe" realmente. No obstante podrías usar la configuración del directorio
activo, para mostrar cosas en el escritorio como parte de una página HTML
que ocupe una parte de él.

Mírate lo del Directorio Activo.



Saludos cordiales
Marino Posadas
MVP Visual C#

www.ElAveFenix.net

"Víctor" escribió en el mensaje
news:
¿Conoce alguien la forma de crear una especie de formulario MDI en el que
poder "empotrar" aplicaciones externas (Word, Excel, etc.)?

He pensado hacerlo con un componente tipo Browser, pero el problema es que
no funcionará correctamente con todas las extensiones.

Y rizando el rizo ¿puede alguien ayudarme a controlar el escritorio
mediante
programación?. Concretamente, me gustaría utilizarlo como un formulario en
el que colocar botones, listas desplegables, etc. He conseguido dibujar
botones mediante ControlPaint.DrawButton(...), pero sólo puedo dibujarlos
y
no añadirles interacción.

Muchas gracias.
Víctor


Respuesta Responder a este mensaje
#2 Víctor
15/03/2005 - 09:33 | Informe spam
Muchas gracias Marino,

pero ¿como puedo obtener el manejador de ventana de una aplicación de
terceros?, es decir, cualquier aplicación susceptible de ser abierta por el
usuario.

Y sobre lo de pintar en el escritorio, ¿te refieres al Escritorio Activo
mediante IActiveDesktop?. Es que sobre el Active Desktop sí he podido
encontrar varias cosas, pero de manejar el escritorio desde Active Directory
como me comentas no lo había escuchado nunca.

En cualquier caso, muchisimas gracias y un saludo.
Víctor.

"Marino Posadas" escribió en el mensaje
news:%
Hola víctor

Curioso... Lo primero se puede hacer capturando el manejador de ventana y
asignándolo a la ventana que quieras mediante el API
SetParent()

Lo segundo, es otra historia. No adelantas nada con dibujar. El objeto no
"existe" realmente. No obstante podrías usar la configuración del


directorio
activo, para mostrar cosas en el escritorio como parte de una página HTML
que ocupe una parte de él.

Mírate lo del Directorio Activo.



Saludos cordiales
Marino Posadas
MVP Visual C#

www.ElAveFenix.net

"Víctor" escribió en el mensaje
news:
> ¿Conoce alguien la forma de crear una especie de formulario MDI en el


que
> poder "empotrar" aplicaciones externas (Word, Excel, etc.)?
>
> He pensado hacerlo con un componente tipo Browser, pero el problema es


que
> no funcionará correctamente con todas las extensiones.
>
> Y rizando el rizo ¿puede alguien ayudarme a controlar el escritorio
> mediante
> programación?. Concretamente, me gustaría utilizarlo como un formulario


en
> el que colocar botones, listas desplegables, etc. He conseguido dibujar
> botones mediante ControlPaint.DrawButton(...), pero sólo puedo


dibujarlos
> y
> no añadirles interacción.
>
> Muchas gracias.
> Víctor
>
>


Respuesta Responder a este mensaje
#3 Marino Posadas
15/03/2005 - 21:38 | Informe spam
Hola Victor

Puedes usar el API FindWindow() o FindWindowEx() para buscar un manejador
por el título de la ventana.

Respecto a lo segundo, pues sí, exacto. Por ejemplo, tiene un método con
ésta sigunatura:
HRESULT AddDesktopItem( LPCOMPONENT pcomp,
DWORD dwReserved
);que habla por sí mismo. De hecho es lo que he visto más potente para
manipular el Desktop.-- Saludos cordialesMarino PosadasMVP Visual
C#www.ElAveFenix.net"Víctor" escribió en el mensaje
news:
Muchas gracias Marino,

pero ¿como puedo obtener el manejador de ventana de una aplicación de
terceros?, es decir, cualquier aplicación susceptible de ser abierta por
el
usuario.

Y sobre lo de pintar en el escritorio, ¿te refieres al Escritorio Activo
mediante IActiveDesktop?. Es que sobre el Active Desktop sí he podido
encontrar varias cosas, pero de manejar el escritorio desde Active
Directory
como me comentas no lo había escuchado nunca.

En cualquier caso, muchisimas gracias y un saludo.
Víctor.

"Marino Posadas" escribió en el mensaje
news:%
Hola víctor

Curioso... Lo primero se puede hacer capturando el manejador de ventana y
asignándolo a la ventana que quieras mediante el API
SetParent()

Lo segundo, es otra historia. No adelantas nada con dibujar. El objeto no
"existe" realmente. No obstante podrías usar la configuración del


directorio
activo, para mostrar cosas en el escritorio como parte de una página HTML
que ocupe una parte de él.

Mírate lo del Directorio Activo.



Saludos cordiales
Marino Posadas
MVP Visual C#

www.ElAveFenix.net

"Víctor" escribió en el mensaje
news:
> ¿Conoce alguien la forma de crear una especie de formulario MDI en el


que
> poder "empotrar" aplicaciones externas (Word, Excel, etc.)?
>
> He pensado hacerlo con un componente tipo Browser, pero el problema es


que
> no funcionará correctamente con todas las extensiones.
>
> Y rizando el rizo ¿puede alguien ayudarme a controlar el escritorio
> mediante
> programación?. Concretamente, me gustaría utilizarlo como un formulario


en
> el que colocar botones, listas desplegables, etc. He conseguido dibujar
> botones mediante ControlPaint.DrawButton(...), pero sólo puedo


dibujarlos
> y
> no añadirles interacción.
>
> Muchas gracias.
> Víctor
>
>






email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida