NetTalk Central
NetTalk Web Server => Web Server - Ask For Help => Topic started by: Alberto on February 25, 2015, 02:42:56 PM
-
Hi, I have an app compiled with 8.34 and it works ok.
When I update to 8.35, 8.36 ... or even 8.38 I get a gpf whith the following data
If I go back to 8.34 all is ok.
I double check the dlls, etc
Any Idea?
The app only uses NT to read some web pages.
Thanks
Exception occurred at address 0101BDB6
Exception code C0000005: Access Violation
Process PID=49756 Image: C:\Clarion9.1\_Apps\PortIt\Plus\PortIt.exe
Thread 2 Handle=00000274 TID=48348
Exception parameters:
00000001
04654000
EAX=00000000 EBX=014E01CA ECX=0000016F EDX=00000000
ESI=014E08BA EDI=04654000 EBP=018DFB64 ESP=018DFB00
EIP=0101BDB6 FLG=00010246
Call Stack:
0101BDB6 ClaRUN.dll:0001BDB6
004592FF
004B6A6C
0044F9A9
004B753D
004277A9
00427030
010CC223 ClaRUN.dll:000CC223
010CBD0D ClaRUN.dll:000CBD0D
77C09F72
Clarion modules:
01000000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaRUN.dll
007E0000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaASC.dll
00810000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaBAS.dll
007C0000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaDOS.dll
001C0000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaOLE.dll
00830000 09.00:10376 C:\Clarion9.1\_Apps\PortIt\Plus\claevo.dll
00790000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaTPS.dll
12200000 09.01:10638 C:\Clarion9.1\_Apps\PortIt\Plus\CLAFM3.dll
02330000 09.01:11014 C:\Clarion9.1\_Apps\PortIt\Plus\ClaMEM.dll
13000000 09.01:10638 C:\Clarion9.1\_Apps\PortIt\Plus\CLAnet.dll
00700000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaODB.dll
04800000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\cwhhla.dll
00400000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\PortIt.exe
-
I recommend you run your program with the debug version of the clarion runtime (ie \clarion9\bin\debug\clarun.dll)
Indeed I recommend you copy the clarun.dll from \bin\debug to \bin so it's always just used.
Once you have that in, post your report again - this time it will contain line numbers etc.
cheers
Bruce
-
With NT 8.38 and debug clarun.dll
Exception occurred at address 0101BDB6
Exception code C0000005: Access Violation
Process PID=8232 Image: C:\Clarion9.1\_Apps\PortIt\Plus\PortIt.Exe
Thread 2 Handle=00000274 TID=8408
Exception parameters:
00000001
04674000
EAX=00000000 EBX=00FA01CA ECX=000002DC EDX=00000000
ESI=00FA1422 EDI=04674000 EBP=0216FB64 ESP=0216FB00
EIP=0101BDB6 FLG=00010246
Call Stack:
0101BDB6 ClaRUN.dll:0001BDB6
004592FF
004B6A54
0044F9A9
004B7525
004277A9
00427030
010CC223 ClaRUN.dll:000CC223
010CBD0D ClaRUN.dll:000CBD0D
77779F72
Clarion modules:
01000000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaRUN.dll
007E0000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaASC.dll
00810000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaBAS.dll
007C0000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaDOS.dll
003D0000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaOLE.dll
00830000 09.00:10376 C:\Clarion9.1\_Apps\PortIt\Plus\claevo.dll
00790000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaTPS.dll
12200000 09.01:10638 C:\Clarion9.1\_Apps\PortIt\Plus\CLAFM3.dll
02330000 09.01:11014 C:\Clarion9.1\_Apps\PortIt\Plus\ClaMEM.dll
13000000 09.01:10638 C:\Clarion9.1\_Apps\PortIt\Plus\CLAnet.dll
00700000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\ClaODB.dll
04800000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\cwhhla.dll
00400000 09.01:11529 C:\Clarion9.1\_Apps\PortIt\Plus\PortIt.Exe
Thread stack:
0216FB00: C8 1D 00 00 90 FB 16 02 64 FB 16 02 20 FB 16 02
0216FB10: CA 01 FA 00 C8 1D 00 00 C8 1D 00 00 A8 2D 67 04
0216FB20: 63 BE 01 01 50 BF 63 04 90 FB 16 02 64 FB 16 02
0216FB30: 44 FB 16 02 C8 1D 00 00 C8 1D 00 00 CA 01 FA 00
0216FB40: A8 2D 67 04 F8 1D 45 00 08 BB F2 00 08 00 FA 00
0216FB50: 00 00 00 00 DC DF 55 00 DC DF 55 00 64 FB 16 02
0216FB60: 90 FB 16 02 90 FB 16 02 FF 92 45 00 08 00 FA 00
0216FB70: B0 80 57 00 D8 00 00 00 00 00 00 00 00 00 00 00
0216FB80: 00 20 20 20 20 20 20 20 08 00 FA 00 90 FB 16 02
0216FB90: AC FB 16 02 54 6A 4B 00 D8 FB 16 02 08 00 FA 00
0216FBA0: B0 80 57 00 AC FB 16 02 CC FE 16 02 F4 FB 16 02
0216FBB0: A9 F9 44 00 CE B7 F2 00 08 BB F2 00 F4 FB 16 02
0216FBC0: D4 FB 16 02 CC FE 16 02 40 C4 63 04 B0 80 57 00
0216FBD0: 08 00 FA 00 50 BF 63 04 1C FC 16 02 A8 BE 63 04
0216FBE0: 19 00 00 00 40 C4 63 04 2C 80 57 00 08 00 FA 00
0216FBF0: F4 FB 16 02 1C FC 16 02 25 75 4B 00 CE B7 F2 00
0216FC00: CE B7 F2 00 40 C4 63 04 2C 80 57 00 00 00 00 00
0216FC10: 50 00 00 00 1C FC 16 02 CC FE 16 02 40 FD 16 02
0216FC20: A9 77 42 00 14 FD 16 02 4C FC 16 02 30 A3 0E 01
0216FC30: CE B7 F2 00 40 C4 63 04 00 00 00 00 75 B7 F2 00
0216FC40: 40 C4 63 04 CE B7 F2 00 75 B7 F2 00 14 FD 16 02
0216FC50: 61 83 0E 01 28 B7 F2 00 00 00 00 00 00 00 00 00
0216FC60: CE B7 F2 00 40 C4 63 04 28 B7 F2 00 40 C4 63 04
0216FC70: A3 7E 0E 01 CE B7 F2 00 00 00 00 00 F0 28 14 01
0216FC80: 00 00 00 00 28 B7 F2 00 28 B7 F2 00 00 00 00 00
0216FC90: 7A 71 A7 75 A0 58 0E 01 17 59 0E 01 00 AF F2 00
0216FCA0: B0 38 F2 00 00 00 00 00 14 FD 16 02 9C 77 42 00
0216FCB0: 00 00 00 00 28 B7 F2 00 00 00 00 00 00 00 00 00
0216FCC0: 00 00 00 00 00 00 00 00 EC FC 16 02 00 00 00 00
0216FCD0: BC 09 2B 00 01 B0 00 00 00 00 00 00 00 00 00 00
0216FCE0: 2D BA A9 00 5E 01 00 00 4B 02 00 00 BC 09 2B 00
0216FCF0: 1B B0 00 00 00 00 00 00 40 C4 63 04 3D BA A9 00
0216FD00: 5E 01 00 00 4B 02 00 00 42 9D 10 01 00 00 00 00
0216FD10: 14 FD 16 02 40 FD 16 02 C7 77 42 00 00 AF F2 00
0216FD20: B0 38 F2 00 40 FD 16 02 3C FD 16 02 08 BB F2 00
0216FD30: D0 A0 F1 00 2C 80 57 00 08 BB F2 00 08 BB F2 00
0216FD40: CC FE 16 02 30 70 42 00 00 00 00 00 2C 80 57 00
0216FD50: 08 BB F2 00 C5 9F 4B 00 C4 FF 16 02 0D BD 0C 01
0216FD60: CC FE 16 02 78 FD 16 02 34 FF 16 02 00 00 00 00
0216FD70: 34 FF 16 02 8C 00 F9 00 00 00 5C 25 FD 00 B0 25
0216FD80: FD 00 88 B0 F2 00 10 B4 F2 00 20 B5 F2 00 C4 D9
0216FD90: FD 00 08 46 FD 00 20 20 20 20 20 20 20 20 20 20
0216FDA0: 20 20 20 20 20 20 20 20 20 20 00 AF F2 00 F0 7F
0216FDB0: 57 00 00 00 00 00 7C 01 00 00 96 FD 16 02 0C 80
0216FDC0: 57 00 00 00 00 00 14 00 00 00 38 36 55 00 F8 67
0216FDD0: 01 08 78 BF F2 00 00 00 00 00 60 23 66 01 28 B7
0216FDE0: F2 00 08 39 F2 00 E0 B0 F2 00 08 BB F2 00 80 22
0216FDF0: F2 00 88 26 F2 00 A8 37 F2 00 F0 B1 F2 00 D8 9A
0216FE00: F2 00 18 4A F2 00 00 00 00 00 00 00 00 00 00 00
0216FE10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 F0 AB
0216FE20: F2 00 48 AC F2 00 00 00 00 00 20 5A F2 00 78 5A
0216FE30: F2 00 E8 9B F2 00 00 00 00 00 00 B3 F2 00 0A 00
0216FE40: 00 00 FF FF FF FF 7C 01 00 00 CB 01 00 00 00 00
0216FE50: 00 00 A8 AD F2 00 8C 01 00 00 04 D6 05 00 90 36
0216FE60: F2 00 D0 5A F2 00 E8 BB F1 00 08 00 FA 00 10 3A
0216FE70: F2 00 08 00 FB 00 8A 31 03 00 60 37 F2 00 01 00
0216FE80: 00 00 00 00 60 CC F1 00 68 D0 F1 00 F0 CB F1 00
0216FE90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0216FEA0: 20 20 20 20 A0 AC F2 00 90 1E F2 00 08 00 17 02
0216FEB0: 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0216FEC0: 20 20 20 20 08 00 5B 01 CC FE 16 02 E8 FE 16 02
0216FED0: 23 C2 0C 01 D8 54 14 01 62 67 12 01 34 FF 16 02
0216FEE0: 4C F6 16 02 9C F6 16 02 94 FF 16 02 0D BD 0C 01
0216FEF0: C4 FF 16 02 C4 FF 16 02 78 67 12 01 34 FF 16 02
0216FF00: 34 FF 16 02 00 00 00 00 8C 00 F9 00 0D BD 0C 01
0216FF10: 34 FF 16 02 00 00 00 00 70 FF 16 02 94 FF 16 02
0216FF20: 34 FF 16 02 8C 00 F9 00 00 00 00 00 09 2E AB 73
0216FF30: 8C 00 F9 00 D8 54 14 01 E0 FE 16 02 04 00 00 00
0216FF40: 58 55 14 01 8C 00 F9 00 38 91 13 01 4C 91 13 01
0216FF50: 68 91 13 01 5C 91 13 01 84 91 13 01 78 91 13 01
0216FF60: 00 00 00 00 8C BF 0C 01 00 00 00 00 8C 00 F9 00
0216FF70: 00 00 00 00 14 B0 00 00 00 00 00 00 00 00 00 00
0216FF80: A8 4F A9 00 7E 01 00 00 3F 00 00 00 8A 33 1A 75
0216FF90: 8C 00 F9 00 D4 FF 16 02 72 9F 77 77 8C 00 F9 00
0216FFA0: 38 94 3B 75 00 00 00 00 00 00 00 00 8C 00 F9 00
0216FFB0: 00 00 00 00 00 00 00 00 00 00 00 00 A0 FF 16 02
0216FFC0: 00 00 00 00 FF FF FF FF F5 71 7B 77 BC AE 5B 00
0216FFD0: 00 00 00 00 EC FF 16 02 45 9F 77 77 00 BF 0C 01
0216FFE0: 8C 00 F9 00 00 00 00 00 00 00 00 00 00 00 00 00
0216FFF0: 00 00 00 00 00 BF 0C 01 8C 00 F9 00 00 00 00 00
Back to 8.34 all is ok
Thanks
-
Hi Alberto,
ok I forgot to mention this, but you need to be compiling your program in debug mode. If you compile your program in debug mode, and then use the debug runtime DLL, then this part of the call stack (which is the bit that is interesting) contains more useful information.
Call Stack:
0101BDB6 ClaRUN.dll:0001BDB6
004592FF
004B6A54
0044F9A9
004B7525
004277A9
00427030
010CC223 ClaRUN.dll:000CC223
010CBD0D ClaRUN.dll:000CBD0D
77779F72
As a general tip, while developing you should aim to have debug mode turned on. It tells you lots of things that might be wrong with your code, especially if you use the debug runtime dll as a matter of habit.
cheers
Bruce
-
Ok, thnks, here it goes...
Index out of range
Error point: 00463DA7
Process PID=6284 Image: C:\Clarion9.1\_Apps\PortIt\Plus\PortIt.Exe
Thread 2 Handle=00000274 TID=1836
Stack frame: 01A4FAF8
Call Stack:
00463DA7 NetWww.Clw:1360 - R$STOREDATA
0046C412 NetWww.Clw:1285 - NETWEBCLIENT.PROCESS
004CEA3D PortIt027.clw:5653 - THISWEBCLIENT.PROCESS
004614E0 NetSimp.Clw:2974 - NETSIMPLE.TAKEEVENT
004CF5BB PortIt027.clw:5449 - THISWINDOW.TAKEEVENT
0043354E ABWINDOW.CLW:782 - WINDOWMANAGER.ASK
00432AD1 ABWINDOW.CLW:941 - WINDOWMANAGER.RUN
004D2229 PortIt027.clw:329 - LEERWEBS
010CC223 ClaRUN.dll:000CC223
This is the code in LEERWEBS ans the last line is 329
ThisWebClientBolsar CLASS(NetWebClient) ! Generated by NetTalk Extension (Class Definition)
ErrorTrap PROCEDURE(string errorStr,string functionName),DERIVED
Init PROCEDURE(uLong Mode=NET:SimpleClient),DERIVED
PageReceived PROCEDURE(),DERIVED
Process PROCEDURE(),DERIVED
Send PROCEDURE(),DERIVED
SetAllHeadersDefault PROCEDURE(),DERIVED
END
CODE
? DEBUGHOOK(Cauciones:Record)
? DEBUGHOOK(Cotiza:Record)
? DEBUGHOOK(EquivAcciones:Record)
? DEBUGHOOK(EquivOpciones:Record)
? DEBUGHOOK(EquivOpciones_1:Record)
? DEBUGHOOK(Metastock:Record)
? DEBUGHOOK(Posiciones_1:Record)
GlobalResponse = ThisWindow.Run() ! Opens the window and starts an Accept Loop
-
ok, thanks. I've added some code for the 8.39 build to avoid this problem.
cheers
Bruce
-
Thanks, and when will it be available?
Regards
-
Same with 8.39...
Index out of range
Error point: 00463DB7
Process PID=19952 Image: C:\Clarion9.1\_Apps\PortIt\Plus\PortIt.Exe
Thread 2 Handle=00000250 TID=23328
Stack frame: 016FFAF8
Call Stack:
00463DB7 NetWww.Clw:1361 - R$STOREDATA
0046C422 NetWww.Clw:1285 - NETWEBCLIENT.PROCESS
004CEA4D PortIt027.clw:5653 - THISWEBCLIENT.PROCESS
004614E0 NetSimp.Clw:2974 - NETSIMPLE.TAKEEVENT
004CF5CB PortIt027.clw:5449 - THISWINDOW.TAKEEVENT
0043354E ABWINDOW.CLW:782 - WINDOWMANAGER.ASK
00432AD1 ABWINDOW.CLW:941 - WINDOWMANAGER.RUN
004D2239 PortIt027.clw:329 - LEERWEBS
010CC223 ClaRUN.dll:000CC223
-
Hi Alberto,
an example would be the ideal so I can duplicate here.
But I'm guessing you just need to extend the test in netwww.clw on line 1360.
Perhaps do that and give us some feedback.
Or, as I say, an example would be most useful.
cheers
Bruce
-
Bruce..
I was looking at the code in 8.34 and 8.39 and they are very different.
In 8.39 the error happens in line 1361, please see images
I run my trace proc and realized it happens the second time I read a big web page.
This is what happens first time I read it:
Fetch de: http://200.68.94.242/xoc?F=S&S=O&M=PES&Z=1
Fetch ok
Procesa lectura... 4
PortIt / Opciones 4 http://200.68.94.242/xoc?F=S&S=O&M=PES&Z=1 PageLen : 384342
Termina Proceso lectura... 4 , segundos: 0.15
500000is the length of the PageString var in the web reading proc
When I read it again
Fetch de: http://200.68.94.242/xoc?F=S&S=O&M=PES&Z=1
==>Msg: Index out of range
Error point: 00463DB7
Process PID=20760 Image: C:\Clarion9.1\_Apps\PortIt\Plus\PortIt.Exe
Thread 2 Handle=00000274 TID=22896
Stack frame: 018AFAF8
Call Stack:
00463DB7 NetWww.Clw:1361 - R$STOREDATA
As you can see there no Fetch OK and the GPF appears instead.
Ive added some lines in the Netwww.clw StoreData ROTUINE like:
StoreData Routine
setclipboard(clip(self._LastURLRequested)&'|'&self.PageLen &' + '& self.packet.binDataLen &' > '& self._AllocatedPageLen&'|'&|
'['&(self.pagelen + 1)&' : '&(self.PageLen + self.packet.BinDataLen)&'] = self.packet.binData [1 : '&self.packet.binDataLen&']')
Then, when the GPS appears I get:
http://200.68.94.242/xoc?F=S&S=O&M=PES&Z=1
211208 + 1460 > 384632
[211209 : 212668] = self.packet.binData [1 : 1460]
but...212668-211209=1459 , which is OK, then What happened?!?!?
Any other code to add to debug it?
Thanks
[attachment deleted by admin]
-
Your debug code was exactly what I would have done - and it shows that the statement should definitely not be producing a problem.
Unless the number in self._AllocatedPageLen was incorrect for some reason. I found a recent change to the Unicode stuff which may have resulted in this value being wrong, so I've tweaked that to cope. So hopefully this is sorted in 8.40
cheers
Bruce
-
Hi Bruce, same thing with 8.40
Now in another line
Index out of range
Error point: 00463DB7
Process PID=3700 Image: C:\Clarion9.1\_Apps\PortIt\Plus\PortIt.Exe
Thread 2 Handle=00000254 TID=5480
Stack frame: 0185FAF8
Call Stack:
00463DB7 NetWww.Clw:1324 - R$STOREDATA
0046C3D6 NetWww.Clw:1248 - NETWEBCLIENT.PROCESS
004CEF95 PortIt027.clw:5717 - THISWEBCLIENT.PROCESS
004614E0 NetSimp.Clw:2974 - NETSIMPLE.TAKEEVENT
004CFB13 PortIt027.clw:5513 - THISWINDOW.TAKEEVENT
0043354E ABWINDOW.CLW:782 - WINDOWMANAGER.ASK
00432AD1 ABWINDOW.CLW:941 - WINDOWMANAGER.RUN
004D2781 PortIt027.clw:329 - LEERWEBS
010CC223 ClaRUN.dll:000CC223
And here goes my setcliboard...
self.page [(208289) : (208288 + 1460)] = self.packet.binData [1 : 1460]
len(self.page)=209287
self.page len is not enought, you need at least 208288 + 1460=209748