ActiveX en Harbour + Visual Studio 2012 (SOLUCIONADO)

ActiveX en Harbour + Visual Studio 2012 (SOLUCIONADO)

Postby fgondi » Thu Jul 04, 2013 4:45 pm

Estoy migrando mis aplicaciones desde xharbour+Bcc582 a Harbour+Visual Studio 2012

Tengo problemas con algunos ActiveX, en concreto con Crystal Report y con LeadTool.
El problema es que no visualiza nada. Abre la ventana mdichild pero no muestra nada.

Además me pasa en los equipos con Windows 7, Windows 8, Windows 2008 server.
El mismo ejecutable en XP o 2000 server. funciona correctamente.

La misma aplicación compilada con xHarbour+Bcc582 y con Harbour+Bcc582 funciona en todos los operativos.

También he probado a cambiar el código y usar THActiveX pero sucede lo mismo.

Code: Select all  Expand view
DEFINE Window oVentHija MDICHILD "Reporte" OF oWndPrincipal
 oActiveX := TActiveX():New( oVentHija, "CrystalReports11.ActivexReportViewer.1" )  
 oVentHija:oClient := oActiveX
 oActivex:SetProp( "ReportSource", oCRReport )
 oActiveX:SetProp( "EnableStopButton",     1  )
 oActiveX:SetProp( "EnableAnimationCtrl",  0  )
 oActiveX:SetProp( "EnableCloseButton",    1  )
 oActiveX:SetProp( "EnableExportButton",   1  )
 oActiveX:SetProp( "EnablePopupMenu",      0  )  // revisar, es interesante pero da error
 oActiveX:SetProp( "EnableRefreshButton",  0  )
 oActiveX:bOnEvent = { | event, aParams | EventInfo( event, aParams, oCRReport, oActivex  ) }

 ACTIVATE WINDOW oVentHija  ON INIT ( oActiveX:Do( "Viewreport" )  )

function EventInfo( event, aParams, oCRReport, oActivex )
   local cMsg := cValToChar( event ) //+ CRLF
return cMsg
 
Last edited by fgondi on Mon Jul 08, 2013 4:28 pm, edited 1 time in total.
Un saludo
Fernando González Diez
ALSIS Sistemas Informáticos
User avatar
fgondi
 
Posts: 694
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España

Re: ActiveX en Harbour + Visual Studio 2012

Postby Antonio Linares » Thu Jul 04, 2013 5:57 pm

Fernando,

No te genera error ? No lo muestra y no da error ?

Prueba tambien a hacer:

oActiveX:Show()
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42079
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: ActiveX en Harbour + Visual Studio 2012

Postby fgondi » Thu Jul 04, 2013 6:15 pm

No, no genera ningún error.
Sólo abre la ventana MDI y dentro esta vacia (fondo blanco).

oActiveX:Show() -> No funciona.

No parece que sea un tema de FWH o de Harbour, ya que cuando compilo con FHW+Harbour+BCC582 funciona bien.
Mas parece un tema de las librerías que se incluyen de Visual Studio, que hace que esos 2 controles no se muestren.
El control del PDF, si funciona.

¿Podría ser problema de la versión de los viewer?, aunque con BCC582 funciona
Un saludo
Fernando González Diez
ALSIS Sistemas Informáticos
User avatar
fgondi
 
Posts: 694
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España

Re: ActiveX en Harbour + Visual Studio 2012

Postby nnicanor » Thu Jul 04, 2013 7:21 pm

Buenas tardes,

Yo tuve ese problema con MSVC 2010, prueba registrando los controles y/o DLL asociados.

Slds
Nicanor Martinez M.
Auditoria y Sistemas Ltda.
MicroExpress Ltda.
FW + FWH + XHARBOUR + HARBOUR + PELLES C + XDEVSTUDIO + XEDIT + BCC + VC_X86 + VCC_X64 + MINGW + R&R Reports + FastReport + Tdolphin + ADO + MYSQL + MARIADB + ORACLE
nnicanor@yahoo.com
nnicanor
 
Posts: 302
Joined: Fri Apr 23, 2010 4:30 am
Location: Colombia

Re: ActiveX en Harbour + Visual Studio 2012

Postby fgondi » Thu Jul 04, 2013 8:23 pm

Muchas gracias por responder,

Tampoco funciona

Información de dll's a registrar para crystal report
REGSVR32 CRVIEWER.DLL
REGSVR32 REPORTPARAMETERDIALOG.DLL
REGSVR32 SVIEWHLP.DLL
REGSVR32 SWEBRS.DLL
Un saludo
Fernando González Diez
ALSIS Sistemas Informáticos
User avatar
fgondi
 
Posts: 694
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España

Re: ActiveX en Harbour + Visual Studio 2012

Postby Antonio Linares » Fri Jul 05, 2013 2:06 am

Fernando,

Podrias proporcionar el código fuente de un ejemplo muy simple para poder reproducirlo aqui ?

Asi puedo hacer pruebas aqui, gracias :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42079
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: ActiveX en Harbour + Visual Studio 2012

Postby fgondi » Fri Jul 05, 2013 8:28 am

Antonio, gracias por tu tiempo.

Preparo un ejemplo y te lo envío
Un saludo
Fernando González Diez
ALSIS Sistemas Informáticos
User avatar
fgondi
 
Posts: 694
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España

Re: ActiveX en Harbour + Visual Studio 2012

Postby fgondi » Fri Jul 05, 2013 9:45 am

he modificado el archivo tutor02.prg con lo siguiente:

Code: Select all  Expand view
// Our first Window in FiveWin !!!

#include "FiveWin.ch"

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

function Main()

   local oWnd, oActiveX, oCRApp, oRpt

   oCRApp := CreateObject("CrystalRuntime.Application.11")
   oRpt   := oCRApp:OpenReport("Blanc.rpt")
   
   DEFINE WINDOW oWnd FROM 3, 6 TO 20, 70 ;
      TITLE "Welcome to " + FWDESCRIPTION COLOR "W/B"

//   @ 2, 2 SAY "Hello world!"
   oActiveX := TActiveX():New( oWnd, "CrystalReports11.ActivexReportViewer.1" )  
   oWnd:oClient := oActiveX
   oActivex:SetProp( "ReportSource", oRpt )
   oActiveX:SetProp( "EnableStopButton",     1  )
   oActiveX:SetProp( "EnableAnimationCtrl",  0  )
   oActiveX:SetProp( "EnableCloseButton",    1  )
   oActiveX:SetProp( "EnableExportButton",   1  )
   oActiveX:SetProp( "EnablePopupMenu",      0  )  // revisar, es interesante pero da error
   oActiveX:SetProp( "EnableRefreshButton",  0  )
   oActiveX:bOnEvent = { | event, aParams | EventInfo( event, aParams, oRpt, oActivex  ) }
   
   oActiveX:Do( "Viewreport" )
   
   ACTIVATE WINDOW oWnd ;
      VALID MsgYesNo( "Are you sure?", "Do you want to exit?" )

return nil
 


function EventInfo( event, aParams, oRpt, oActivex )
   local cMsg := cValToChar( event ) //+ CRLF
return cMsg

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

el rpt "blanc.rpt" lo subo rapidshare
http://rapidshare.com/files/3559180351/Blanc.rar

El rpt esta vacio, pero carga una ventana donde se ve el menu superior.
En windows 7, windows 8, etc sólo carga la ventana y dentro no se ve nada.

Lo compilo con builh32.bat, donde lo único que he cambiado son las llamadas a VC y SDK, porque yo lo tengo instalado en otro sitio
set vcdir="C:\Microsoft Visual Studio 11.0\VC"
set sdkdir="C:\Microsoft Visual Studio 11.0\SDK\v7.1A" //Tambien he probado con "C:\Microsoft Visual Studio 11.0\SDK\v7.0A"
Un saludo
Fernando González Diez
ALSIS Sistemas Informáticos
User avatar
fgondi
 
Posts: 694
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España

Re: ActiveX en Harbour + Visual Studio 2012

Postby Antonio Linares » Fri Jul 05, 2013 11:24 am

Fernando,

Donde se consiguen esas DLLs ? Son redistribuibles ?

gracias
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42079
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: ActiveX en Harbour + Visual Studio 2012

Postby fgondi » Fri Jul 05, 2013 7:57 pm

Antonio,

Te ha llegado lo que te he enviado
Un saludo
Fernando González Diez
ALSIS Sistemas Informáticos
User avatar
fgondi
 
Posts: 694
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España

Re: ActiveX en Harbour + Visual Studio 2012

Postby Antonio Linares » Fri Jul 05, 2013 8:07 pm

Fernando,

Si, y te acabo de responder por email, gracias :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42079
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: ActiveX en Harbour + Visual Studio 2012

Postby Antonio Linares » Sat Jul 06, 2013 9:15 pm

Fernando,

he probado de todo lo que se me ha ocurrido sin ningún resultado positivo por el momento.

Falla tanto con TActiveX como con THActiveX por el simple hecho de usar MSVC. Con Borland, funciona perfectamente.

En el caso de THActiveX somos un simple wrapper de la implementación de Harbour. Como THActiveX deriva de TControl he probado a declarar como VIRTUAL los métodos Display(), Paint(), Link(), EraseBkGnd() y nada, el mismo resultado.

Si hago oActiveX:Hide() el control se oculta, luego está ahí, pero por que no se muestra ? A ver si se nos ocurre algo...

A este problema es al que me refiero tantas veces: el problema del uso de ActiveX y componentes externos. Ahora ante este problema que podemos hacer ? Sencillamente ir dando palos de ciego y ver si suena la flauta... y sino se arregla: estamos jodidos. Imposible pasar a MSVC, por usar componentes externos... :-(
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42079
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: ActiveX en Harbour + Visual Studio 2012

Postby fgondi » Sat Jul 06, 2013 9:51 pm

Muchas gracias Antonio.
Las nuevas versiones están desarrolladas en framework. Se puede implementar?
Un saludo
Fernando González Diez
ALSIS Sistemas Informáticos
User avatar
fgondi
 
Posts: 694
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España

Re: ActiveX en Harbour + Visual Studio 2012

Postby Antonio Linares » Sun Jul 07, 2013 12:58 pm

Fernando,

Te refieres a .NET ?

Por supuesto lo más importante en esto es ayudarte a solucionar el problema técnico de alguna forma, pero para mi es mucho más interesante que compartieses con nosotros el por que usas Crystal Reports ? Que usas de Crystal Reports ? Que es lo bueno que tiene y que le sobra ?

En breve me pondré a construir (ó a sintetizar todo lo hecho) para tener nuestro propio diseñador de reportes. Por esto te pregunto esto, asi tendré la información necesaria para construirlo y asi nos libramos de CR para siempre :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42079
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: ActiveX en Harbour + Visual Studio 2012

Postby Armando » Sun Jul 07, 2013 3:55 pm

Antonio:

Me alegra leer tu decisión de desarrollar un diseñador de reporte propio de FW y te felicito por esto creo
que esto solidificará más a FW.

Sugiero echarle una mirada, si es que no lo haz hecho, a FastReport, teniendo lo que FR aporta
tendríamos un excelente diseñador.

Te ánimo a hacerlo a la brevedad posible.

Saludos, ánimo
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3209
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Willi Quintana and 42 guests