off-topic: hb_out.log

off-topic: hb_out.log

Postby RenOmaS » Fri Aug 24, 2012 4:42 pm

Buenas, alguien me puede decir como interpretar el fichero hb_out. para encontrar el modulo que esta dar um GPF, se que tengo que procurar en el fichero MAP, pero no se cual hex procurar

Code: Select all  Expand view
Called from DBCLOSEALL(0)
Called from TAPLICATION:END(382) in c:\sistemas\fastgest\Source\Aplicattion.prg
Called from SYSFACTUR(115) in c:\sistemas\fastgest\Source\FastGest.prg
------------------------------------------------------------------------
Application Internal Error - c:\sistemas\fastgest\ser\fastgest.exe
Terminated at: 2012.08.24 14:53:28
Erro irrecuper vel 6005: Exception error:

    Exception Code:C0000005
    Exception Address:121DED50
    EAX:03C2E998  EBX:00000000  ECX:00000000  EDX:00000000
    ESI:03C2E998  EDI:00000000  EBP:0018FC50
    CS:EIP:0023:121DED50  SS:ESP:002B:0018FB4C
    DS:002B  ES:002B  FS:0053  GS:002B
    Flags:00010206
    CS:EIP: 80 78 14 41 75 11 80 78 15 44 75 0B 80 78 16 53
    SS:ESP: 121DEF87 12189D78 00000000 00000007 04553F44 00000000 00000000 00150010 000000C4 0018FC7C 0069532B 00000000 00680473 00000000 0067D9EC FFFFFFFF

    C stack:
    EIP:     EBP:       Frame: OldEBP, RetAddr, Params...
    121DED50 0018FC50   0018FC64 0052EC80 03C2E998 00000007 008801B0
    0052EC80 0018FC64   0018FC70 005314D1 04553F44
    005314D1 0018FC70   0018FCA8 0051767C 04553F44 00000000 00680496 00000000 00880164 00508619 0049DCF0 00000005
    0051767C 0018FCA8   0018FDB4 00497DF7 00000000 0055167E 00000000 0055121C 0018FD44 0000000E 89D5D5A0 00000BD0
    00497DF7 0018FDB4   0018FDE0 0041595C 00680394 0067D3DC 0049DEAD 00880164 00000001 00000000 00000000 009F0004
    0041595C 0018FDE0   0018FEEC 00497F34 00000000 00000002 00000002 00880A68 00313A04 003139F4 004B1B47 002FD938
    00497F34 0018FEEC   0018FF14 0040C4A8 00551510 005510DC 0049DCF0 00000000 00000000 00000000 00000000 00000073
    0040C4A8 0018FF14   0018FF30 00497152 002F0001 00000000 00AB08B8 00A9482B 00000001
    00497152 0018FF30   0018FF50 004C47DE 00000001 00551034 00A94822 00A90000 00000000 00AB08B8
    004C47DE 0018FF50   0018FF80 0054CDC7 00400000 00000000 00A94822 0000000A 00000000 00000000 7EFDE000 00000000
    0054CDC7 0018FF80   0018FF94 00000000 00551034 77313677 7EFDE000
    00000000 0018FF94   0018FFD4 77929D42 7EFDE000 45AE720A 00000000 00000000 7EFDE000 00000000 00000000 00000000
    77929D42 0018FFD4   0018FFEC 77929D15 004017B8 7EFDE000 00000000 00000000
 
Saludos/regards
RenOmaS

skype: americo.balboa
User avatar
RenOmaS
 
Posts: 205
Joined: Fri Oct 07, 2005 5:07 pm

Re: off-topic: hb_out.log

Postby Antonio Linares » Fri Aug 24, 2012 7:21 pm

El error se produce desde DbCloseAll(), tendras que revisar su codigo en Harbour y ver en donde falla.

Que RDD estas usando ?

Que versión de Harbour ?
regards, saludos

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

Re: off-topic: hb_out.log

Postby RenOmaS » Fri Aug 24, 2012 7:34 pm

Boas.
Este e a version de Harbour
Harbour 3.2.0dev (Rev. 17475)
Copyright (c) 1999-2012, http://harbour-project.org/


o RDD que utilizo es DBFCDX y
ADSCDX - Advantage Client Engine DLL 10.10.028

Tambien utilizo Avantage OLE DB Provider. 10.10.0.28

Si tiro el dbcloseall() o GPF continua, esto solo al cerrar la aplicacion.

Code: Select all  Expand view
Application Internal Error - c:\sistemas\fastgest\ser\fastgest.exe
Terminated at: 2012.08.24 18:32:58
Erro irrecuper vel 6005: Exception error:

    Exception Code:C0000005
    Exception Address:121DED50
    EAX:03CCE998  EBX:00000000  ECX:00000000  EDX:00000000
    ESI:03CCE998  EDI:00000000  EBP:0018FEF8
    CS:EIP:0023:121DED50  SS:ESP:002B:0018FDF4
    DS:002B  ES:002B  FS:0053  GS:002B
    Flags:00010206
    CS:EIP: 80 78 14 41 75 11 80 78 15 44 75 0B 80 78 16 53
    SS:ESP: 121DEF87 12189D78 00000000 00A00007 0454FF7C E300E003 000000A4 00000000 04420048 0101FD50 0018FD54 0018FEA8 03220808 00000000 032207D0 FFFFFFFE

    C stack:
    EIP:     EBP:       Frame: OldEBP, RetAddr, Params...
    121DED50 0018FEF8   0018FF0C 0052EC80 03CCE998 00A00007 0088017C
    0052EC80 0018FF0C   0018FF18 005314D1 0454FF7C
    005314D1 0018FF18   0018FF50 0051767C 0454FF7C 00000000 00000000 00A008B8 009E482B 0049718F 004C47E4 00551034
    0051767C 0018FF50   0018FF80 0054CDC7 00400000 00000000 009E4822 0000000A 00000000 00000000 7EFDE000 00000000
    0054CDC7 0018FF80   0018FF94 00000000 00551034 77313677 7EFDE000
    00000000 0018FF94   0018FFD4 77929D42 7EFDE000 45754DBB 00000000 00000000 7EFDE000 00000000 00000000 00000000
    77929D42 0018FFD4   0018FFEC 77929D15 004017B8 7EFDE000 00000000 00000000


Modules:
0x00400000 0x0050A000 c:\sistemas\fastgest\ser\fastgest.exe
0x778F0000 0x00180000 C:\Windows\SysWOW64\ntdll.dll
0x77300000 0x00100000 C:\Windows\syswow64\kernel32.dll
0x76280000 0x00046000 C:\Windows\syswow64\KERNELBASE.dll
0x12170000 0x0018E000 C:\Windows\system32\ACE32.DLL
0x73B20000 0x00009000 C:\Windows\system32\VERSION.dll
0x75EF0000 0x000AC000 C:\Windows\syswow64\msvcrt.dll
0x72EB0000 0x00012000 C:\Windows\system32\MPR.dll
0x739E0000 0x00007000 C:\Windows\system32\WSOCK32.dll
0x75CF0000 0x00035000 C:\Windows\syswow64\WS2_32.dll
0x75A00000 0x000F0000 C:\Windows\syswow64\RPCRT4.dll
0x75460000 0x00060000 C:\Windows\syswow64\SspiCli.dll
0x75450000 0x0000C000 C:\Windows\syswow64\CRYPTBASE.dll
0x76030000 0x00019000 C:\Windows\SysWOW64\sechost.dll
0x76060000 0x00006000 C:\Windows\syswow64\NSI.dll
0x756E0000 0x00100000 C:\Windows\syswow64\USER32.dll
0x77400000 0x00090000 C:\Windows\syswow64\GDI32.dll
0x76050000 0x0000A000 C:\Windows\syswow64\LPK.dll
0x761E0000 0x0009D000 C:\Windows\syswow64\USP10.dll
0x758B0000 0x000A0000 C:\Windows\syswow64\ADVAPI32.dll
0x76070000 0x0011C000 C:\Windows\syswow64\CRYPT32.dll
0x778C0000 0x0000C000 C:\Windows\syswow64\MSASN1.dll
0x75950000 0x0002D000 C:\Windows\syswow64\WINTRUST.dll
0x72ED0000 0x00051000 C:\Windows\system32\WINSPOOL.DRV
0x72520000 0x0019E000 C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7600.16385_none_421189da2b7fabfc\COMCTL32.DLL
0x77490000 0x00057000 C:\Windows\syswow64\SHLWAPI.dll
0x75980000 0x0007B000 C:\Windows\syswow64\COMDLG32.DLL
0x764A0000 0x00C49000 C:\Windows\syswow64\SHELL32.dll
0x723C0000 0x00005000 C:\Windows\system32\MSIMG32.DLL
0x73970000 0x00032000 C:\Windows\system32\WINMM.DLL
0x754C0000 0x0015C000 C:\Windows\syswow64\OLE32.DLL
0x757E0000 0x0008F000 C:\Windows\syswow64\OLEAUT32.DLL
0x6D8E0000 0x0001C000 C:\Windows\system32\OLEDLG.DLL
0x75870000 0x00005000 C:\Windows\syswow64\PSAPI.DLL
0x75620000 0x00060000 C:\Windows\system32\IMM32.DLL
0x770F0000 0x000CC000 C:\Windows\syswow64\MSCTF.dll
0x72E00000 0x00080000 C:\Windows\system32\uxtheme.dll
0x72E80000 0x00008000 c:\PROGRA~2\mcafee\SITEAD~1\saHook.dll
0x19600000 0x00013000 C:\Program Files (x86)\TeamViewer\Version7\tv_w32.dll
0x6C240000 0x00027000 C:\Windows\system32\CRTDLL.dll
0x72DE0000 0x00013000 C:\Windows\system32\dwmapi.dll
0x75D30000 0x00083000 C:\Windows\syswow64\CLBCatQ.DLL
0x66F20000 0x000F1000 C:\Program Files (x86)\Common Files\System\ado\msado15.dll
0x68F60000 0x0001F000 C:\Windows\system32\MSDART.DLL
0x72DC0000 0x00016000 C:\Windows\system32\CRYPTSP.dll
0x72D80000 0x0003B000 C:\Windows\system32\rsaenh.dll
0x72E90000 0x0000E000 C:\Windows\system32\RpcRtRemote.dll
0x685A0000 0x000D4000 C:\Program Files (x86)\Common Files\System\Ole DB\oledb32.dll
0x72BE0000 0x00017000 C:\Windows\system32\bcrypt.dll
0x690D0000 0x00014000 C:\Program Files (x86)\Common Files\System\Ole DB\OLEDB32R.DLL
0x62BA0000 0x00136000 C:\Windows\system32\comsvcs.dll
0x724F0000 0x00014000 C:\Windows\system32\ATL.DLL
0x72BA0000 0x0003D000 C:\Windows\SysWOW64\bcryptprimitives.dll
0x68D10000 0x000A4000 C:\Windows\SysWOW64\adsoledb.dll
0x75880000 0x0002A000 C:\Windows\syswow64\imagehlp.dll
0x1E940000 0x001E9000 C:\Windows\system32\adsloc32.dll
0x4A800000 0x001F2000 C:\Windows\system32\aicu32.dll
0x68510000 0x0008A000 C:\Program Files (x86)\Common Files\System\msadc\msadce.dll
0x70C90000 0x00002000 C:\Program Files (x86)\Common Files\System\msadc\msadcer.dll
0x68B50000 0x00014000 C:\Program Files (x86)\Common Files\System\ado\msadrh15.dll
0x67560000 0x00098000 C:\Windows\system32\mswstr10.dll

------------------------------------------------------------------------
 
Saludos/regards
RenOmaS

skype: americo.balboa
User avatar
RenOmaS
 
Posts: 205
Joined: Fri Oct 07, 2005 5:07 pm

Re: off-topic: hb_out.log

Postby Antonio Linares » Fri Aug 24, 2012 8:11 pm

Avantage OLE DB Provider


Como lo estas usando ? Creas algun objeto OLE ? Estas asignandole nil al finalizar su uso ?
regards, saludos

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

Re: off-topic: hb_out.log

Postby RenOmaS » Fri Aug 24, 2012 8:54 pm

Sim, si asigno nil tanto al recordset como a la conexion

Code: Select all  Expand view

...
METHOD CloseConnection() CLASS TAdo
   Local oError

   If ::oConn != Nil
      TRY
         ::oConn:Close()
       CATCH oError
      // procurar errores de conexion
         MsgAlert( "Error: " + oError:Operation + " -> " + oError:Description )
      //EndIf
      END
     ::oConn := Nil
   EndIf

   Return Nil
.....

METHOD Close() CLASS TRs
   Local oAdo := ::oAdo
   Local oError
   Local lReturn := .T. //ojo que tem que devolver um logical

   !Empty( ::oRs ) // esta open

      TRY
         ::oRs:Close()
         ::oRs := Nil
         #ifdef __XHARBOUR__
         CATCH
             FOR EACH oError IN oAdo:oConn:Errors
                  ShowError( oError )
             NEXT
         #else
         CATCH oError
            oAdo:Error( oError )
         #endif
         ::oRs := Nil
         lReturn := .F.
      END

   Endif

   Return lReturn
.....
 
Saludos/regards
RenOmaS

skype: americo.balboa
User avatar
RenOmaS
 
Posts: 205
Joined: Fri Oct 07, 2005 5:07 pm

Re: off-topic: hb_out.log

Postby Patricio Avalos Aguirre » Fri Aug 24, 2012 9:04 pm

Hola Renomas:

Estaba buscando justamente conectarme a ADS via ADO,

podrias compartir como haces para conectarte al ads via ADO,

ya que lo quiero implementar asi para cuando tenga que cambiar de base de datos no sea modificar mucho codigo


desde ya gracias
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
User avatar
Patricio Avalos Aguirre
 
Posts: 1059
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile

Re: off-topic: hb_out.log

Postby RenOmaS » Sat Aug 25, 2012 12:10 pm

Boas tengo una clase que maneja la conexion, en base a los mucho ejemplos que hay aqui,
Utilizo tanto XHarbour como Harbour, por eso hay esos "ifdef".
Este es el metodo que realiza la conexion:

Code: Select all  Expand view
METHOD OpenConnection( nType, cDataSource, cUser, cPass, cLocation ) CLASS TAdo
   Local oConn
   Local lReturn := .F., oError
   Local cString := ''
   Local lConnect := .F.

   SWITCH nType
   CASE 1 // ADS
        //TODO: preguntar si existe provedor ado oledb
        cString := "Provider=Advantage OLE DB Provider;" + ;
                   "Data Source=" + cFilePath( cDataSource ) + ";" + ;
                   "ServerType=ADS_LOCAL_SERVER;TableType=ADS_CDX;ShowDeleted=FALSE;DbfsUseNulls=TRUE"
        EXIT
   CASE 2 // Paradox

        cString := "Provider=Microsoft.Jet.OLEDB.4.0;" + ;
                   "User ID=Admin;Data Source=" + cFilePath( cDataSource ) + ";" + ;
                   "Mode=Read;Extended Properties=Paradox 5.x;" + ;
                   "Jet OLEDB:System database='';Jet OLEDB:Registry Path='';" + ;
                   "Jet OLEDB:Engine Type=82;Jet OLEDB:Database Locking Mode=0;" + ;
                   "Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;" + ;
                   "Jet OLEDB:New Database Password='';Jet OLEDB:Create System Database=False;" + ;
                   "Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;" + ;
                   "Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False"
        EXIT
   CASE 3 //Access
        cString := "Provider= MicroSoft.Jet.OLEDB.4.0;" + ;
                   "Data Source= " + cDataSource + ";" + ;
                   "Jet OLEDB:DataBase" + If( Empty( cDataSource ), '', " Password = " + cPass )
        EXIT
   CASE 5 //Postgres
        cString := "Provider=PostgreSQL.1;" + ;
                   "Data Source=" + lower(cDataSource) + ";" + ;
                   "Location=" + lower(cLocation) + ";" + ;
                   "User ID=" + lower(cUser) + ";" + ;
                   "Password=" + lower(cPass)
        EXIT
   END

   //preguntado si la conexion existe y si es o mesmo string de conexion
   If !Empty( ::oConn )
      If ::oConn:ConnectionString == cString
         lConnect := .T.
         oConn := ::oConn
      Else
         //cerrando la conexion, para despues abrir
         ::CloseConnection()
      EndIf
   EndIf

   If !lConnect

      TRY
         #ifdef __XHARBOUR__
         oConn := CreateObject( "ADODB.Connection" )

         #else
         oConn := win_OleCreateObject( "ADODB.Connection" )
         #endif
         oConn:Open( cString )
         ::oConn := oConn
      CATCH oError
         //TODO: procurar errores de conexion
         MsgAlert( "Error: " + oError:Operation + " -> " + oError:Description + CRLF + ;
                   "ADO String: " + cString )

      END
   EndIf

   Return oConn


// y para crear el recordeset
Code: Select all  Expand view
METHOD RecordSet( cSQL, nCursorLocation, nCursorType, nLockType ) CLASS TAdo
   Local oRs
   Local oError
   Local oConn := ::oConn
   Local n, nTot

   DEFAULT nCursorLocation := adUseClient, ;
           nCursorType     := adOpenStatic, ; // adOpenKeyset , ; //
           nLockType       := adLockReadOnly  // adLockOptimistic //

  TRY
     #ifdef __XHARBOUR__
     oRs := CreateObject( 'ADODB.RecordSet' ) //TOleAuto():New( 'ADODB.RecordSet' )
     #else
     oRs:= win_OleCreateObject( "ADODB.Recordset" ) //
     #endif
     oRs:CursorLocation  := nCursorLocation
     oRs:CursorType      := nCursorType
     oRs:LockType        := nLockType

     #ifdef __XHARBOUR__
     oRs:ActiveConnection( oConn )
     oRs:Source := cSQL
     oRs:Open()
     #else
     oRs:Open( cSql, oConn )
     #endif
  CATCH
     #ifdef __XHARBOUR__
     FOR EACH oError IN oConn:Errors
              ShowError( oError )
     NEXT
     #else
     nTot := oConn:Errors:Count-1
     For n := 0 To nTot
         oError := oConn:Errors( n )
         ShowError( oError )
     Next
     #endif
     oRs := Nil
   END

   Return oRs

....
Static Function ShowError( oError )

       MsgInfo( "Descrição : "   + oError:Description      + CRLF + ;
                "Erro Nativo : " + Str( oError:NativeError ) + CRLF + ;
                "Número Erro : " + Str( oError:Number )      + CRLF + ;
                "Origem : "      + oError:Source           + CRLF + ;
                "Estado SQL : "  + oError:SQLState         + CRLF + ;
                "Função  : "  + procname( 1 ), 'Ado Class'  )
Return nil

 
Saludos/regards
RenOmaS

skype: americo.balboa
User avatar
RenOmaS
 
Posts: 205
Joined: Fri Oct 07, 2005 5:07 pm

Re: off-topic: hb_out.log

Postby Patricio Avalos Aguirre » Sat Aug 25, 2012 9:37 pm

Muchas gracias Renomas
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
User avatar
Patricio Avalos Aguirre
 
Posts: 1059
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 31 guests