FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour Problems with FWH 8.10
Posts: 858
Joined: Fri Oct 07, 2005 12:00 PM
Problems with FWH 8.10
Posted: Sat Oct 18, 2008 06:15 PM

Hi all,
I'am trying the new FWH 8.10 and I have some problems expecially with thirth part classes that access to the windows registry or call external dll.

Pls. take a look at this self-contained sample on

www.softwarexp.co.uk/beta/test.zip

This sample simply check using the tmutex class if another application is running.

With FWH May 2008 all runs fine meanwhile with FWH October 2008 it doesn't runs.

Any ideas ?

Thanks in advance

Best Regards,



Marco Turco

SOFTWARE XP LLP
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problems with FWH 8.10
Posted: Sun Oct 19, 2008 08:40 PM

Marco,

All PRGs that use DLL FUNCTION ... have to be recompiled with 8.10 (as DLL.ch has changed).

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 858
Joined: Fri Oct 07, 2005 12:00 PM
Problems with FWH 8.10
Posted: Mon Oct 20, 2008 07:45 AM

Yes, I know
but I recompiled this self-contained sample using the buildx.bat you provided in the fwh\sample folder but it doesn't runs meanwhile all runs fine with FWH June 2008.

Are there any other changes to do ?

Marco

Best Regards,



Marco Turco

SOFTWARE XP LLP
Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Problems with FWH 8.10
Posted: Mon Oct 20, 2008 08:11 AM

You have to replace GetProcAddress() with GetProcAdd(). Look at FWH whatsnew.

EMG

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problems with FWH 8.10
Posted: Mon Oct 20, 2008 10:52 AM

Marco,

> but I recompiled this self-contained sample

You have to recompile the PRG where the DLL FUNCTION is defined, uisng the current 8.10 DLL.ch (please check that you are not using a previous one).

We had to do this change to keep Harbour/xHarbour compatibility.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Problems with FWH 8.10
Posted: Mon Oct 20, 2008 11:16 AM

In Marco's sample there is a preprocessor directive that redefines DLL command. There he has to replace GetProcAddress() with GetProcAdd(), or just remove that directive.

EMG

Posts: 858
Joined: Fri Oct 07, 2005 12:00 PM
Problems with FWH 8.10
Posted: Tue Oct 21, 2008 07:46 PM

Ok. Solved replacing GetProcAddress() with GetProcAdd(),
thanks for the suggests Enrico & Antonio.

However I have now another problem with folder,
the following error appairs.

Note that in this specific situation I create the folder at runtime with:
oFld:=tFolder():New(......
oFld:LoadPages(.......
oFld:SetPrompt(.....

Any ideas ?


Application

Path and name: K:\ACTIVEXP\ACTIVEXP.Exe (32 bits)
Size: 3,473,920 bytes
Time from start: 0 hours 0 mins 7 secs
Error occurred at: 21/10/2008, 21:33:41
Error description: Error BASE/1005 Class: 'NIL' has no property: NHELPID
Args:
[ 1] = U
[ 2] = U

Stack Calls

Called from: => _NHELPID(0)
Called from: .\source\classes\folder.PRG => TFOLDER:SETPROMPTS(0)
Called from: .\source\classes\folder.PRG => TFOLDER:NEW(0)
Called from: K:\pigc\ADDON32\UPDATED2\MODXP.PRG => MAKEWINDOW(341)
Called from: K:\ACTIVEXP\SOURCE\MODD1A.PRG => MODD1A(147)
Called from: K:\ACTIVEXP\SOURCE\ACTIVE.PRG => (b)MAIN(367)
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:CLICK(0)
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:LBUTTONUP(0)
Called from: => TWINDOW:HANDLEEVENT(0)
Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT(0)
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:HANDLEEVENT(0)
Called from: .\source\classes\WINDOW.PRG => _FWH(0)
Called from: => WINRUN(0)
Called from: .\source\classes\WINDOW.PRG => TMDIFRAME:ACTIVATE(0)
Called from: K:\ACTIVEXP\SOURCE\ACTIVE.PRG => MAIN(388)

System

CPU type: Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz 2000 Mhz
Hardware memory: 2038 megs

Free System resources: 90 %
GDI resources: 90 %
User resources: 90 %

Compiler version: xHarbour build 1.1.0 Intl. (SimpLex) (Rev. 6195)
Windows version: 6.0, Build 6000

Best Regards,



Marco Turco

SOFTWARE XP LLP
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problems with FWH 8.10
Posted: Tue Oct 21, 2008 10:27 PM
Marco,

Yes, it is a bug (introduced in 8.10) in Class TFolder Method SetPrompts() that we have also detected it today. This is the right code:
METHOD SetPrompts( aPrompts, aHelps ) CLASS TFolder 

   local n

   if ! Empty( aPrompts )
      ::aPrompts = aPrompts
   endif

   #ifndef __CLIPPER__
      TabDelAllItems( ::hWnd )

      for n = Len( ::aPrompts ) to 1 step -1
         TabCtrlAdd( ::hWnd, ::aPrompts[ n ], ::aEnable[ n ], n )
         if n <= Len( ::aDialogs )
            if ::aDialogs[ n ] != nil
               ::aDialogs[ n ]:nHelpid = If( Len( ::aHelps ) >= n, ::aHelps[ n ], nil ) 
            endif   
         endif   
      next

      SendMessage( ::hWnd, TCM_SETCURSEL, ::nOption - 1 )
      Super:Refresh()
   #endif

return nil
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1387
Joined: Fri May 23, 2008 01:33 PM
Problems with FWH 8.10
Posted: Wed Oct 22, 2008 07:37 AM
Hi Marco,

Does TMutex works in Vista?. I have compiled your test program with replacing GetProcAddress() to GetProcAdd() in line 211 as below

Return GetProcAdd( hDLL, cFunc, lType, nRetType, nPType1, nPType2,;


When i try to run test.exe. it gives Error code:0 loading Kernel32.dll
Function:OpenMutexA

Thanks,
Regards,



Hakan ONEMLI



Harbour & MSVC 2022 & FWH 23.06

Continue the discussion