Como hago para cargar este OCX.

Post Reply
User avatar
Andrés González
Posts: 625
Joined: Thu Jan 19, 2006 10:45 am
Location: Mallorca

Como hago para cargar este OCX.

Post by Andrés González »

Desde hace tiempo tengo ganas de poner un lector de TIFF a mis programas, que no es mas que un fichero conteniendo fotos (archivos graficos) pero que lo guarda en un solo fichero. He encontrado este control OCX que es gratis, pero los ejemplos que he encontrado en fivewin no veo como cargar este control viene con su registrador de la clase y todo.
Lo podeis descargas de http://www.alternatiff.com/
Alguna idea de como cargarlo, los ejemplos que hay en fivewin solo hablan de cargar el identificador del ocx y eso no se como se hace.

Un saludo
User avatar
Andrés González
Posts: 625
Joined: Thu Jan 19, 2006 10:45 am
Location: Mallorca

Post by Andrés González »

Coginedo el ejemplo de testocx y cambiando el identificador de la clase, me muestra el control pero en cuanto pulso algun boton me da un error en una ventana fivewin. El codigo que he hecho es el siguiente:

Code: Select all


#include "FiveWin.ch"

//---------------------------------------------------------------------------//

function Main()

   local oWnd, hOCX, n, oLbx
   local aProperties := {}

   DEFINE WINDOW oWnd TITLE "FiveWin ActiveX support"

   OcxInit()

   hOcx = OcxCreate( 1, 1, 550, 550, "{106E49CF-797A-11D2-81A2-00E02C015623}", oWnd:hWnd )
	
	
   ACTIVATE WINDOW oWnd

   OcxTerm()

return nil

//---------------------------------------------------------------------------//

DLL32 FUNCTION OCXInit() AS VOID LIB "FiveOCX"

DLL32 FUNCTION OCXTerm() AS VOID LIB "FiveOCX"

DLL32 FUNCTION OCXCreate( cy AS LONG, cx AS LONG, y AS LONG, x AS LONG,;
                        cClsID AS LPSTR, hWnd AS LONG ) AS LONG PASCAL LIB "FiveOCX"

DLL32 FUNCTION OCXGetPropName( hOCX AS LONG, nIndex AS LONG ) AS LPSTR PASCAL LIB "FiveOCX"

DLL32 FUNCTION OCXGetNumProps( hOCX AS LONG ) AS LONG PASCAL LIB "FiveOCX"

DLL32 FUNCTION OCXShowProperties( hOCX AS LONG, nX AS LONG, nY AS LONG, szTitle AS LPSTR ) ;
   AS VOID PASCAL LIB "FiveOCX"


Sabeis si necesito hacer algo mas para poder manejar el control, el control efectivamente aparece pero cuando pulso sobre el me da el error en la linea de ACTIVATE WINDOW oWnd, sabeis si tengo que poner algo mas.

Un saludo.
User avatar
Andrés González
Posts: 625
Joined: Thu Jan 19, 2006 10:45 am
Location: Mallorca

Post by Andrés González »

Voy congiendo el hilo, ahora resulta que si lo hago con un control activex funciona a las mil maravillas.

Code: Select all

// Using Microsoft Excel ActiveX

#include "FiveWin.ch"

function Main()

   local oWnd, oActiveX

   DEFINE WINDOW oWnd TITLE "FiveWin ActiveX Support"

   // Warning: You may need a different name based on your installed Office version
   oActiveX = TActiveX():New( oWnd, "Alttiff.AlttiffCtl" )

   oWnd:oClient = oActiveX // To fill the entire window surface

   ACTIVATE WINDOW oWnd

return nil
Que diferencia hay entre hacer una llamada entre OCX y ActiveX ?

Saludos.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Andrés,

Usalo como ActiveX. El soporte de OCX de TestOCX no es correcto.
regards, saludos

Antonio Linares
www.fivetechsoft.com
Post Reply