![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Sí y no. Si no recuerdo mal, ActiveX y COM son versiones más avanzadas de OLE, o sea, que están basados o inspirados en OLE. Por otro lado, los tres protocolos te permiten usar componentes de otras aplicaciones o controlar otras aplicaciones.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi! - BAScript - Multi Language Scriptable Development Environment |
|
#2
|
||||
|
||||
|
entonces doy por hecho que FindControl no funciona con objetos OLE y supongo que FindComponent tampoco servirá. ¿Que se usa entonces para los ActiveX? He estado leyendo que CoCreateInstance crea una instancia y nos da el puntero a la instancia pero la aplicacion no la usa y supongo que es porque se crea en tiempo de diseño ya que es un componente visual. El nombre del componente en la otra aplicacion no lo tengo pero si en mi aplicacion de prueba asi que podria probarlo en la mia solo. Ni spy++, ni Resource tuner ni nada me dan el nombre del componente asi que no puedo ni intentarlo. Sabeis alguna manera de conseguir el puntero pero para un ActiveX?
Encontre esto: http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx ¿Es lo que necesito? Y si es asi ¿Podeis ayudarme a entender como usarla? Es que mi ingles es malisimo y ademas hay cosas que no se ni a que se refieren. Última edición por aguml fecha: 29-12-2014 a las 17:40:51. |
|
#3
|
||||
|
||||
|
problema solucionado amigos. Explico la solucion. Me cree una dll en c++builder con las funciones necesarias y luego la cargué en el proceso. La aplicacion usa QueryInterface asi que con poner un bp ahi obtengo el puntero al objeto el cual almaceno. Luego llamo a las funciones de la dll y funciona asi que pruebo con la aplicacion echa en vb y veo que da errores y no sirve por lo que empiezo apensar que no se puede usar esta dll en vb y pido a un amigo que me cree una dll en vb con las mismas funciones y la pruebo y funciona sin problemas. Ahora me encontraba con otro problema, la imposibilidad de usar LoadLibrary, GetModuleHandle, y GetProcAddress para cargar mi dll dinamicamente. Entonces miré las funciones de la dll en un depurador y veo que las unicas constantes que habria que modificar serian la llamada a una funcion de vb que viene en la iat y el puntero a ruta del proceso. Entonces pensé ¿Que pasaria si usase VirtualAllocEx para solicitar la memoria necesaria y luego copio las funciones a esa zona, redirijo el puntero de la ruta del archivo y inyecto codigo para ejecutar cada funcion.
|
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Handle de objetos | juank1971 | OOP | 2 | 09-06-2012 19:10:54 |
| Asignando procedemientos a eventos. | yapt | Lazarus, FreePascal, Kylix, etc. | 2 | 28-05-2010 12:23:11 |
| TComponent y Handle | ixMike | OOP | 5 | 12-10-2007 13:45:52 |
| Problemas asignando passwords a usuarios | kman | Varios | 2 | 16-07-2006 20:53:16 |
| Obtener Handle de un objeto | senpiterno | Varios | 6 | 22-04-2004 15:21:40 |
|