Antonio Linares wrote:Joao,
Se ve bien, te compila correctamente ?
SI MAESTRO compila bi茅n! mas no tengo certezca que me va resolver el problema del programa parar sin motivo ninguno en WINDOWS XP.
salu2.
Antonio Linares wrote:Joao,
Se ve bien, te compila correctamente ?
Joao,
te sigue fallando en XP con esos cambios ?
Antonio Linares wrote:Joao,
te sigue fallando en XP con esos cambios ?
Antonio,
La aplicaci贸n que presenta problemas tiene una secci贸n (que es la que m谩s se usa), que presenta el problema descrito (fallar s贸lo en xp).
Como es la que m谩s se usa, no me di cuenta de probar otros preview que est谩n en otros sectores de la aplicaci贸n y, para mi sorpresa, en estos funciona bi茅n (salvo los mensajes que no tiene soft para usar ficheros DOC, error de plugin pdf, etc.).
Es muy raro porque adem谩s funciona en xp (esa parte del programa), tanto si le hago la reforma con la funci贸n que propones, como si no se la hago. Te recuerdo que en W7 funciona bien.
As铆 que voy a revisar y comparar mi c贸digo para ver si le encuentro el motivo. Luego comento.
Saludos.
Rolando ![]()
Rolando,
Hay que localizar en el c贸digo de la aplicaci贸n de donde procede el fallo.
Pudiera tratarse de algo que haya que modificar en FWH pero hasta que no sepamos que est谩 fallando, no podemos hacer nada. gracias
聽 聽 聽AEval( oDevice:aMeta, { | cMeta | oPdf:AddMeta( cMeta ) } )AEval( oDevice:aMeta, { | cMeta | Tracelog( "cMeta:" + cMeta ), oPdf:AddMeta( cMeta ) } )METHOD AddMeta( cMeta ) CLASS FWPDF
local nAt
::nPage++
::WritePage( Emf2Jpeg( cMeta ) )
return SelfProblemas con Windows XP (Terminal) y Windows Server 2008 (Server), contin煤a el programa para sin ninguna raz贸n.
Salu2.
Rolando,
Has comprobado que tengas en tu c贸digo el arreglo que he comentado en esta conversaci贸n ?
//-----------------------------------------------------------------------------------------
聽
#pragma BEGINDUMP
#include <windows.h>
#include <hbapi.h>
聽
#ifdef __XHARBOUR__
聽 #define hb_parvnl( x, y ) hb_parnl( x, y )
聽 #define hb_storvnl( v, x, y ) hb_stornl( v, x, y )
#endif
聽
HB_FUNC( DIBTOSTR ) 聽// ( hDib ) --> lSuccess
{
聽 聽long lSize;
聽 聽char * pDib;
聽
聽 聽#ifndef _WIN64
聽 聽 聽 pDib = DibToStr( ( HGLOBAL ) hb_parnl( 1 ), &lSize );
聽 聽#else 聽
聽 聽 聽 pDib = DibToStr( ( HGLOBAL ) hb_parnll( 1 ), &lSize );
聽 聽#endif
聽
聽 聽hb_retclen( pDib, lSize );
聽 聽hb_xfree( ( void * ) pDib ); // aqui !!!
}
聽
#pragma ENDDUMP
聽
//-----------------------------------------------------------------------------------------local cPrueba:=(" 聽 聽 聽 聽Por la reparaci贸n del "+alltrim(cArtefacto)+" modelo "+alltrim(cModelo)+", serie "+;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 alltrim(cSerie)+", perteneciente a "+alltrim(cNombre)+", con domicilio en "+alltrim(cDireccion)+;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 ", se presupuesta la suma de
"+NumToCadena(val(cPresu),"pesos",.t.)+"."+renglon+renglon+;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 " 聽 聽 聽 聽"+cDetalleTA+renglon+renglon+;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 " 聽 聽 聽 聽Falla debida, en un alto grado de posibilidad, a
una descarga atmosf茅rica."+renglon+renglon+;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 " 聽 聽 聽 聽Este presupuesto tiene validez por 72 horas y
mientras que el artefacto no sea retirado"+;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 " de nuestro taller y est谩 circunscripto al cambio de las
partes anteriormente mencionadas."+renglon+renglon+;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 " 聽 聽 聽 聽Ya que los repuestos a utilizar son de origen
extranjero, este presupuesto est谩 sujeto a"+;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 " variaci贸n de acuerdo a cotizaci贸n de los repuestos y
disponibilidad de los mismos por parte"+;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 " de la Empresa importadora, a utilizar en el momento
de aceptaci贸n del mismo."+renglon+renglon+;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 " 聽 聽 聽 聽Se extiende el presente a solicitud del propietario
del aparato, a los "+;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 NumToCadena(val(substr(dtoc(date()),1,2)),,.f.)+" d铆as
del mes de "+NumToMes(month(date()))+;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 " de
"+NumToAno(year(date()))+"."+renglon+renglon+renglon+;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 "SON: $"+alltrim(cPresu) )
oRichPRESUPUESTOS:LoadFromRTFFile(cLocalServer+"\rtf\presu.rtf")
聽 聽 聽 聽 oRichPRESUPUESTOS:GoToLine(2)
聽聽 聽聽 聽 oRichPRESUPUESTOS:SetAlign(3)
聽 聽 聽 聽 oRichPRESUPUESTOS:SetUnderline(.t.)
聽 聽 oRichPRESUPUESTOS:SetBold(.t.)
聽聽 聽聽 聽 oRichPRESUPUESTOS:SetFontSize(16)
聽 聽 聽 聽 oRichPRESUPUESTOS:InsertRTF("PRESUPUESTO - ref "+alltrim(cTalon)+renglon+renglon)
聽 聽 聽 聽 oRichPRESUPUESTOS:SetUnderline(.f.)
聽 聽 聽 聽 oRichPRESUPUESTOS:SetBold(.f.)
聽 聽 聽 聽 oRichPRESUPUESTOS:SetFontSize(11)
聽 聽 聽 聽 oRichPRESUPUESTOS:SetAlign(2)
聽 聽 聽 聽 oRichPRESUPUESTOS:InsertRTF("San Nicol谩s, "+dtoc(date())+renglon+renglon)
聽 聽 聽 聽 oRichPRESUPUESTOS:SetAlign(1)
聽 聽 聽 聽 oRichPRESUPUESTOS:GoToLine(7)
聽 聽 聽 聽 oRichPRESUPUESTOS:InsertRTF(cPrueba)AEval( oDevice:aMeta, { | cMeta | Tracelog( "cMeta:" + cMeta ) } ) 聽聽 聽 // by rolo
聽msginfo("Pasado al log")聽 聽// by rolo
聽AEval( oDevice:aMeta, { | cMeta | oPdf:AddMeta( cMeta ) } )Rolando,
Comprueba que est茅s enlazando tu PRG antes de las librer铆as de FWH, para que se enlace tu funci贸n en vez de la de FWH.
Aun no he visualizado tu video, lo miro y veo si hay algo m谩s que podamos hacer, gracias
Si en el c贸digo en C incluyes esta llamada:
MessageBeep (-1 );
贸
MessageBox( 0, "aqui", "ok", 0 );
te puedes asegurar de que se est茅 llamando tu funci贸n
Antonio,
Inclu铆 la llamada que sugieres y [u:77naxxqm]S脥 est谩 pasando por esa funci贸n[/u:77naxxqm].
Por favor, mira el video y notar谩s lo que explico. Gracias.
Rolando ![]()
Rolando,
En FWH/source/function/prv2pdf.prg esta el c贸digo fuente de la funci贸n:
static function Emf2Jpeg( cEMF )
al ser static no puedes modificar esa funci贸n desde tu PRG, asi que por favor modifica prv2pdf.prg e incluye algunas llamadas a MsgInfo( 1 ), MsgInfo( 2 ), etc para ver hasta que l铆nea llega y donde falla. Como puede pasar muchas veces por ahi puede ser m谩s facil si usas la funci贸n LogFile( cLogFile, { data, ... } ) 贸 OutputDebugString( cMensaje) y asi ver谩s en dbwin hasta donde llega antes de generarse el GPF, gracias