Limite de controles (Antonio Linares)

Post Reply
luisduque
Posts: 133
Joined: Mon May 12, 2008 4:13 pm
Location: Venezuela
Contact:

Limite de controles (Antonio Linares)

Post by luisduque »

Saludos

Necesito hacer una cuadricula con Get o Say, sin embargo hay un limite, necesito como 2000 Say o Get y da error

Al hacerlo con For nI := 1 To 1000 Si funciona

Muestro un ejemplo simple testget2.prg
Coloqué a manera de ejemplo un For

Code: Select all

#Include "FiveWin.Ch"


Function Main()
   Local oDlg
   Local oGet,nI
   local cVar := space( 10 )

   DEFINE DIALOG oDlg from 0,0 to 400,400 pixel

    For nI := 1 To 1500
       @ 15,15 get oGet var cVar picture "@!" size 120,12 of oDlg pixel
   Next

   ACTIVATE DIALOG oDlg 
 
 return nil

 
Error
Application Internal Error - C:\fwh\samples\testget2.exe
Terminated at: 2017-05-07 23:29:34
Unrecoverable error 6005: Exception error:

Exception Code:C0000005 ACCESS_VIOLATION
Exception Address:76CEFDA8
EAX:0000000B EBX:00000000 ECX:00A67000 EDX:000003F4
ESI:00000000 EDI:00A627D8 EBP:005EF9AC
CS:EIP:0023:76CEFDA8 SS:ESP:002B:005EF998
DS:002B ES:002B FS:0053 GS:002B
Flags:00010202
Exception Parameters: 00000000 00A67000
CS:EIP: 66 8B 01 83 C1 02 66 85 C0 75 F5 8B C1 C3 8D 41
SS:ESP: 76CEFD49 011C7E75 00000000 00000000 C6C1B486 005EF9B4 76CEBD70 005EF9D4 76D26FAB 01050000 00A627D8 00000000 01051C20 00000000 00000002 005EFA0C

C stack:
EIP: EBP: Frame: OldEBP, RetAddr, Params...
76CEFDA8 005EF9AC 005EF9B4 76CEBD70
76CEBD70 005EF9B4 005EF9D4 76D26FAB 01050000 00A627D8 00000000 01051C20 00000000 00000002
76D26FAB 005EF9D4 005EFA0C 0106B448 01050000 00A627D8 00000000 01051C20 00000000 00000000 00010007 035ECA8C
0106B448 005EFA0C 01303930 0110E77D 00000007 00000000 00A0B2AC 00000000 00000000 0110C7F9 00000004 011C6FFA


Modules:
01050000 0038E000 C:\fwh\samples\testget2.exe
775B0000 00183000 C:\WINDOWS\SYSTEM32\ntdll.dll
75040000 000E0000 C:\WINDOWS\System32\KERNEL32.DLL
742F0000 001A1000 C:\WINDOWS\System32\KERNELBASE.dll
76CD0000 0015F000 C:\WINDOWS\System32\USER32.dll
77490000 00015000 C:\WINDOWS\System32\win32u.dll
751D0000 0002B000 C:\WINDOWS\System32\GDI32.dll
74190000 0015B000 C:\WINDOWS\System32\gdi32full.dll
76EB0000 000E5000 C:\WINDOWS\System32\COMDLG32.dll
74CA0000 000BE000 C:\WINDOWS\System32\msvcrt.dll
73330000 0006A000 C:\WINDOWS\SYSTEM32\WINSPOOL.DRV
74DC0000 00211000 C:\WINDOWS\System32\combase.dll
6CFB0000 0020A000 C:\WINDOWS\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.14393.953_none_89c2555adb023171\COMCTL32.dll
77140000 000E0000 C:\WINDOWS\System32\ucrtbase.dll
74AE0000 000C1000 C:\WINDOWS\System32\RPCRT4.dll
736E0000 0001B000 C:\WINDOWS\SYSTEM32\bcrypt.dll
74070000 0001E000 C:\WINDOWS\System32\SspiCli.dll
74060000 0000A000 C:\WINDOWS\System32\CRYPTBASE.dll
76680000 0005A000 C:\WINDOWS\System32\bcryptPrimitives.dll
74D60000 00041000 C:\WINDOWS\System32\sechost.dll
75120000 00088000 C:\WINDOWS\System32\shcore.dll
74C50000 00046000 C:\WINDOWS\System32\SHLWAPI.dll
75200000 013D9000 C:\WINDOWS\System32\SHELL32.dll
765E0000 00036000 C:\WINDOWS\System32\cfgmgr32.dll
76760000 0056E000 C:\WINDOWS\System32\windows.storage.dll
766E0000 00045000 C:\WINDOWS\System32\powrprof.dll
744A0000 00077000 C:\WINDOWS\System32\advapi32.dll
74DB0000 0000D000 C:\WINDOWS\System32\kernel.appcore.dll
75030000 0000F000 C:\WINDOWS\System32\profapi.dll
74090000 000EA000 C:\WINDOWS\System32\ole32.dll
774B0000 00094000 C:\WINDOWS\System32\OLEAUT32.dll
76E30000 0007B000 C:\WINDOWS\System32\msvcp_win.dll
73BC0000 00008000 C:\WINDOWS\SYSTEM32\VERSION.dll
72ED0000 00006000 C:\WINDOWS\SYSTEM32\MSIMG32.dll
73B10000 0001F000 C:\WINDOWS\SYSTEM32\oledlg.dll
72C00000 00169000 C:\WINDOWS\WinSxS\x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.14393.953_none_baad48403594ab3f\gdiplus.dll
76730000 00025000 C:\WINDOWS\System32\IMM32.DLL
72D90000 00075000 C:\WINDOWS\system32\uxtheme.dll
749A0000 00135000 C:\WINDOWS\System32\MSCTF.dll
73290000 0007B000 C:\Program Files (x86)\Common Files\Microsoft Shared\Ink\tiptsf.dll

Called from DIALOGBOXINDIRECT(0)
Called from TDIALOG:ACTIVATE(296) in .\source\classes\DIALOG.PRG
Called from MAIN(15) in testget2.prg
------------------------------------------------------------------------
User avatar
Carles
Posts: 937
Joined: Fri Feb 10, 2006 2:34 pm
Location: Barcelona
Contact:

Re: Limite de controles (Antonio Linares)

Post by Carles »

Hi,

You can try

Code: Select all

#Include "FiveWin.Ch"


Function Main()
   Local oDlg, oGet, nI
   local nTotal := 1500
   local aGet := array( nTotal )
   local aVar := array( nTotal )

   DEFINE DIALOG oDlg from 0,0 to 400,400 pixel 

    For nI := 1 To (nTotal - 1)
       @( nI * 20),15 GET aGet[nI] var aVar[nI] size 120,20 of oDlg pixel
    Next

   ACTIVATE DIALOG oDlg
 
 return nil
Salutacions, saludos, regards

"...programar es fácil, hacer programas es difícil..."

https://modharbour.app
https://modharbour.app/compass
https://forum.modharbour.app
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Limite de controles (Antonio Linares)

Post by Antonio Linares »

Luis,

Arreglado. Es un bug de FWH en el código de la función DialogBoxIndirect()

Aunque con el ejemplo de Carles el error no se manifiesta, con tu ejemplo si aparece.

Por favor indícame que librerias de FWH necesitas para que te las envíe por email

Este fix se incluirá en FWH 17.05
regards, saludos

Antonio Linares
www.fivetechsoft.com
luisduque
Posts: 133
Joined: Mon May 12, 2008 4:13 pm
Location: Venezuela
Contact:

Re: Limite de controles (Antonio Linares)

Post by luisduque »

Saludos

La solución no sirve try catch porque preciso quiero que salga la cuadricula, y la solución es el bug que dice el maestro Antonio

Por otro lado Maestro yo me he actualizado por el error de los iconos que a partir de la version 16.11 no me sirve, pero si es muy importante
estar actualizado, no se que hacer en ese caso.

Muchas gracias
Fivewin 16.11
Harbour 3.2.0
Visual Studio 2015 community
MariaDb/MySql

Ing. MSc. Luis Duque
http://www.accasoft.net
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: Limite de controles (Antonio Linares)

Post by Silvio.Falconi »

a question
why U use 1500 get on dialog ..I not Understood ....

but many years ago a I had this same error with btnbmp control when I made beach applications....
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
luisduque
Posts: 133
Joined: Mon May 12, 2008 4:13 pm
Location: Venezuela
Contact:

Re: Limite de controles (Antonio Linares)

Post by luisduque »

Saludos

Lo de mas 1500 controles es por lo siguiente:

Nosotros trabajamos con software de producción para calzado y marroquineria

y lo que hacemos es scanerar cada pieza y se marca la pieza y con eso se calcula el consumo en centimetros, pies, decimetros

eso lo hago desde hace 2 años pero ahora se no presentó un caso con fabrica de ropa que son bastantes grandes las piezas y hay que colocas mas
controles para marcar solo la pieza
Fivewin 16.11
Harbour 3.2.0
Visual Studio 2015 community
MariaDb/MySql

Ing. MSc. Luis Duque
http://www.accasoft.net
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: Limite de controles (Antonio Linares)

Post by Silvio.Falconi »

nice
can see a sample ?
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
luisduque
Posts: 133
Joined: Mon May 12, 2008 4:13 pm
Location: Venezuela
Contact:

Re: Limite de controles (Antonio Linares)

Post by luisduque »

Fivewin 16.11
Harbour 3.2.0
Visual Studio 2015 community
MariaDb/MySql

Ing. MSc. Luis Duque
http://www.accasoft.net
Post Reply