Code Comments
Programming Forum and web based access to our favorite programming groups.I have a VB 6 application that uses TCP control to receives request from use r and send strings to users. Users login and logout of the appl. often. Everytime after running the appl. for about 2 hours, the appl. just dies/terminates. I found out I got a Dr. Watson error (access violation) like the following: Application exception occurred: App: (pid=336) When: 5/9/2005 @ 10:43:56.154 Exception number: c0000005 (access violation) *----> System Information <----* Number of Processors: 2 Processor Type: x86 Family 6 Model 7 Stepping 3 Windows 2000 Version: 5.0 Current Build: 2195 Service Pack: 4 Current Type: Multiprocessor Free *----> Task List <----* 336 BD.exe : State Dump for Thread Id 0x6bc function: <nosymbols> *----> Stack Back Trace <----* FramePtr ReturnAd Param#1 Param#2 Param#3 Param#4 Function Name 0012F3B4 6C3EBE0A 6C41DC10 00000000 0102FF40 0102C8CC <nosymbols> 0012F3CC 6C3FA994 6C41DC10 0012F458 01223A18 00000001 !Ordinal3258 779DB790 0000C766 0004C200 90909090 748B5653 66570C24 !Ordinal3237 *----> Raw Stack Dump <----* 0012f3b8 0a be 3e 6c 10 dc 41 6c - 00 00 00 00 40 ff 02 01 ..>l..Al....@.. . 0012f3c8 cc c8 02 01 90 b7 9d 77 - 94 a9 3f 6c 10 dc 41 6c .......w..?l..A l 0012f3d8 58 f4 12 00 18 3a 22 01 - 01 00 00 00 58 f4 12 00 X....:".....X.. . 0012f3e8 cc c8 02 01 40 f4 12 00 - 48 f6 12 00 c8 f8 12 00 ....@...H...... . 0012f3f8 58 4f 22 01 00 00 00 00 - ab 8e 52 73 00 85 22 01 XO".......Rs.." . 0012f408 00 00 00 00 58 f4 12 00 - 00 00 00 00 00 f9 12 00 ....X.......... . 0012f418 8c f9 12 00 01 00 00 00 - 30 f4 12 00 28 60 38 01 ........0...(`8 . 0012f428 07 00 00 00 00 f9 12 00 - 00 00 00 00 00 00 00 00 ............... . 0012f438 00 00 00 00 00 00 00 00 - 68 f4 12 00 86 8f 52 73 ........h.....R s 0012f448 48 f6 12 00 58 f4 12 00 - 8c f9 12 00 01 00 00 00 H...X.......... . 0012f458 09 00 00 00 00 00 00 00 - 7a 12 52 73 84 f4 12 00 ........z.Rs... . 0012f468 84 f4 12 00 37 90 52 73 - 48 f6 12 00 80 f4 12 00 ....7.RsH...... . 0012f478 8c f9 12 00 01 00 00 00 - 00 00 00 00 e8 f8 12 00 ............... . 0012f488 f2 9f 40 00 28 4b 40 00 - 48 f6 12 00 b8 f8 12 00 ..@.(K@.H...... . 0012f498 00 f9 12 00 8c f9 12 00 - 01 00 00 00 00 00 00 00 ............... . 0012f4a8 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ............... . 0012f4b8 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ............... . 0012f4c8 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ............... . 0012f4d8 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ............... . 0012f4e8 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ............... . State Dump for Thread Id 0x6c8 eax=00000001 ebx=0014ad20 ecx=00000000 edx=00000000 esi=74fea3a0 edi=0000000 0 eip=77f8289c esp=0136ff84 ebp=0136ffb4 iopl=0 nv up ei pl nz na pe n c cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000 efl=0000020 2 function: ZwRemoveIoCompletion 77f82891 b8a8000000 mov eax,0xa8 77f82896 8d542404 lea edx,[esp+0x4] ss:01b89e6b=???????? 77f8289a cd2e int 2e 77f8289c c21400 ret 0x14 *----> Stack Back Trace <----* FramePtr ReturnAd Param#1 Param#2 Param#3 Param#4 Function Name 0136FFB4 7C57B388 74FDA57D 0000075E 00010000 0014AD20 ntdll!ZwRemoveIoCompletion 0136FFEC 00000000 74FD6311 0014AD20 00000000 00000008 kernel32!lstrcmpiW *----> Raw Stack Dump <----* 0136ff84 63 63 fd 74 20 01 00 00 - bc ff 36 01 b0 ff 36 01 cc.t .....6...6 . 0136ff94 a4 ff 36 01 08 64 fd 74 - 5e 07 00 00 00 00 01 00 ..6..d.t^...... . 0136ffa4 00 00 00 00 1c 00 00 00 - 00 00 fd 74 08 f0 23 01 ...........t..# . 0136ffb4 ec ff 36 01 88 b3 57 7c - 7d a5 fd 74 5e 07 00 00 ..6...W|}..t^.. . 0136ffc4 00 00 01 00 20 ad 14 00 - 00 d0 fd 7f 0a 00 00 00 .... .......... . 0136ffd4 c0 ff 36 01 0a 00 00 00 - ff ff ff ff 44 1f 5c 7c ..6.........D.\ | 0136ffe4 08 2b 57 7c 00 00 00 00 - 00 00 00 00 00 00 00 00 .+W|........... . 0136fff4 11 63 fd 74 20 ad 14 00 - 00 00 00 00 08 00 00 00 .c.t .......... . 01370004 01 01 00 00 ee ff ee ff - 00 00 00 00 00 00 02 01 ............... . 01370014 00 a0 0d 00 00 00 37 01 - 00 01 00 00 40 00 37 01 ......7.....@.7 . 01370024 00 00 47 01 da 00 00 00 - 01 00 00 00 98 05 02 01 ..G............ . 01370034 00 00 00 00 d0 3c 39 01 - 00 00 00 00 83 10 08 00 .....<9........ . 01370044 01 01 08 00 00 00 00 00 - 01 00 00 00 b5 01 00 00 ............... . 01370054 00 02 00 00 44 31 39 32 - 35 7c 38 30 31 7c 4e 51 ....DDDDD|111|N Q 01370064 4d 35 2c 4e 51 4d 35 2c - 5a 42 4d 35 2c 5a 42 4d M5,NQM5,ZBM5,ZB M 01370074 35 2c 5a 42 4d 35 2c 5a - 42 4d 35 2c 5a 42 4d 35 5,ZBM5,ZBM5,ZBM 5 01370084 2c 5a 42 4d 35 2c 5a 42 - 4d 35 2c 5a 42 4d 35 2c ,ZBM5,ZBM5,ZBM5 , 01370094 5a 42 4d 35 2c 5a 42 4d - 35 2c 5a 42 4d 35 2c 5a ZBM5,ZBM5,ZBM5, Z 013700a4 42 4d 35 2c 5a 42 4d 35 - 2c 5a 42 4d 35 2c 5a 42 BM5,ZBM5,ZBM5,Z B 013700b4 4d 35 2c 5a 42 4d 35 2c - 5a 42 4d 35 2c 5a 42 4d M5,ZBM5,ZBM5,ZB M How can I found out what the error mean, and where the error happen ? Thank you very much.
Post Follow-up to this messageI can only give some general recommendations: 1) Check if you have "leftover" objects. To do so, count the number of active instances for each class/form/usercontrol type you have. This works by declaring a public variable in a BAS module, incrementing this variable in the Class_Initialize (or Form_Initialize, Usercontrol_Initialize)-Event and decrementing it in the _Terminate-Event. If the numbers do not match the number of instances you think you should have (e.g. you created 10 instances, then destroyed 8 of them, but the counter says you still have 10 instances), then there may be a fault in your object termination strategy (circular references that are not resolved, for example). This MAY or MAY NOT cause the behaviour you describe - but it's good to check it, anyway. 2) Log to a file. Write a logging entry whenever you pass an important line of your code. That way, you have a chance to find out what happened just before the crash. Maybe that can give you a clue. Robert "Paul fpvt2" <Paulfpvt2@discussions.microsoft.com> wrote in message news:15C944F5-291E-4245-8F0A-F206552542A0@microsoft.com... > I have a VB 6 application that uses TCP control to receives request from user > and send strings to users. Users login and logout of the appl. often. > Everytime after running the appl. for about 2 hours, the appl. just > dies/terminates. I found out I got a Dr. Watson error (access violation) > like the following: > > Application exception occurred: > App: (pid=336) > When: 5/9/2005 @ 10:43:56.154 > Exception number: c0000005 (access violation) > > *----> System Information <----* > Number of Processors: 2 > Processor Type: x86 Family 6 Model 7 Stepping 3 > Windows 2000 Version: 5.0 > Current Build: 2195 > Service Pack: 4 > Current Type: Multiprocessor Free > > *----> Task List <----* > 336 BD.exe > : > State Dump for Thread Id 0x6bc > > function: <nosymbols> > > *----> Stack Back Trace <----* > > FramePtr ReturnAd Param#1 Param#2 Param#3 Param#4 Function Name > 0012F3B4 6C3EBE0A 6C41DC10 00000000 0102FF40 0102C8CC <nosymbols> > 0012F3CC 6C3FA994 6C41DC10 0012F458 01223A18 00000001 !Ordinal3258 > 779DB790 0000C766 0004C200 90909090 748B5653 66570C24 !Ordinal3237 > > *----> Raw Stack Dump <----* > 0012f3b8 0a be 3e 6c 10 dc 41 6c - 00 00 00 00 40 ff 02 01 ..>l..Al....@... > 0012f3c8 cc c8 02 01 90 b7 9d 77 - 94 a9 3f 6c 10 dc 41 6c .......w..?l..Al > 0012f3d8 58 f4 12 00 18 3a 22 01 - 01 00 00 00 58 f4 12 00 X....:".....X... > 0012f3e8 cc c8 02 01 40 f4 12 00 - 48 f6 12 00 c8 f8 12 00 ....@...H....... > 0012f3f8 58 4f 22 01 00 00 00 00 - ab 8e 52 73 00 85 22 01 XO".......Rs..". > 0012f408 00 00 00 00 58 f4 12 00 - 00 00 00 00 00 f9 12 00 ....X........... > 0012f418 8c f9 12 00 01 00 00 00 - 30 f4 12 00 28 60 38 01 ........0...(`8. > 0012f428 07 00 00 00 00 f9 12 00 - 00 00 00 00 00 00 00 00 ................ > 0012f438 00 00 00 00 00 00 00 00 - 68 f4 12 00 86 8f 52 73 ........h.....Rs > 0012f448 48 f6 12 00 58 f4 12 00 - 8c f9 12 00 01 00 00 00 H...X........... > 0012f458 09 00 00 00 00 00 00 00 - 7a 12 52 73 84 f4 12 00 ........z.Rs.... > 0012f468 84 f4 12 00 37 90 52 73 - 48 f6 12 00 80 f4 12 00 ....7.RsH....... > 0012f478 8c f9 12 00 01 00 00 00 - 00 00 00 00 e8 f8 12 00 ................ > 0012f488 f2 9f 40 00 28 4b 40 00 - 48 f6 12 00 b8 f8 12 00 ..@.(K@.H....... > 0012f498 00 f9 12 00 8c f9 12 00 - 01 00 00 00 00 00 00 00 ................ > 0012f4a8 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ................ > 0012f4b8 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ................ > 0012f4c8 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ................ > 0012f4d8 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ................ > 0012f4e8 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ................ > > State Dump for Thread Id 0x6c8 > > eax=00000001 ebx=0014ad20 ecx=00000000 edx=00000000 esi=74fea3a0 edi=00000000 > eip=77f8289c esp=0136ff84 ebp=0136ffb4 iopl=0 nv up ei pl nz na pe nc > cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000 efl=00000202 > > > function: ZwRemoveIoCompletion > 77f82891 b8a8000000 mov eax,0xa8 > 77f82896 8d542404 lea edx,[esp+0x4] > ss:01b89e6b=???????? > 77f8289a cd2e int 2e > 77f8289c c21400 ret 0x14 > > *----> Stack Back Trace <----* > > FramePtr ReturnAd Param#1 Param#2 Param#3 Param#4 Function Name > 0136FFB4 7C57B388 74FDA57D 0000075E 00010000 0014AD20 > ntdll!ZwRemoveIoCompletion > 0136FFEC 00000000 74FD6311 0014AD20 00000000 00000008 kernel32!lstrcmpiW > > *----> Raw Stack Dump <----* > 0136ff84 63 63 fd 74 20 01 00 00 - bc ff 36 01 b0 ff 36 01 cc.t .....6...6. > 0136ff94 a4 ff 36 01 08 64 fd 74 - 5e 07 00 00 00 00 01 00 ..6..d.t^....... > 0136ffa4 00 00 00 00 1c 00 00 00 - 00 00 fd 74 08 f0 23 01 ...........t..#. > 0136ffb4 ec ff 36 01 88 b3 57 7c - 7d a5 fd 74 5e 07 00 00 ..6...W|}..t^... > 0136ffc4 00 00 01 00 20 ad 14 00 - 00 d0 fd 7f 0a 00 00 00 .... ........... > 0136ffd4 c0 ff 36 01 0a 00 00 00 - ff ff ff ff 44 1f 5c 7c ..6.........D.\| > 0136ffe4 08 2b 57 7c 00 00 00 00 - 00 00 00 00 00 00 00 00 .+W|............ > 0136fff4 11 63 fd 74 20 ad 14 00 - 00 00 00 00 08 00 00 00 .c.t ........... > 01370004 01 01 00 00 ee ff ee ff - 00 00 00 00 00 00 02 01 ................ > 01370014 00 a0 0d 00 00 00 37 01 - 00 01 00 00 40 00 37 01 ......7.....@.7. > 01370024 00 00 47 01 da 00 00 00 - 01 00 00 00 98 05 02 01 ..G............. > 01370034 00 00 00 00 d0 3c 39 01 - 00 00 00 00 83 10 08 00 .....<9......... > 01370044 01 01 08 00 00 00 00 00 - 01 00 00 00 b5 01 00 00 ................ > 01370054 00 02 00 00 44 31 39 32 - 35 7c 38 30 31 7c 4e 51 ....DDDDD|111|NQ > 01370064 4d 35 2c 4e 51 4d 35 2c - 5a 42 4d 35 2c 5a 42 4d M5,NQM5,ZBM5,ZBM > 01370074 35 2c 5a 42 4d 35 2c 5a - 42 4d 35 2c 5a 42 4d 35 5,ZBM5,ZBM5,ZBM5 > 01370084 2c 5a 42 4d 35 2c 5a 42 - 4d 35 2c 5a 42 4d 35 2c ,ZBM5,ZBM5,ZBM5, > 01370094 5a 42 4d 35 2c 5a 42 4d - 35 2c 5a 42 4d 35 2c 5a ZBM5,ZBM5,ZBM5,Z > 013700a4 42 4d 35 2c 5a 42 4d 35 - 2c 5a 42 4d 35 2c 5a 42 BM5,ZBM5,ZBM5,ZB > 013700b4 4d 35 2c 5a 42 4d 35 2c - 5a 42 4d 35 2c 5a 42 4d M5,ZBM5,ZBM5,ZBM > > How can I found out what the error mean, and where the error happen ? > Thank you very much.
Post Follow-up to this messageThank you for your suggestions. I changed the TCP control to MS Winsock control, and I don't have the problem anymore. Thanks. "Robert" wrote: > I can only give some general recommendations: > > 1) Check if you have "leftover" objects. To do so, count the number of > active instances for each class/form/usercontrol type you have. This works > by declaring a public variable in a BAS module, incrementing this variable > in the Class_Initialize (or Form_Initialize, Usercontrol_Initialize)-Event > and decrementing it in the _Terminate-Event. If the numbers do not match t he > number of instances you think you should have (e.g. you created 10 > instances, then destroyed 8 of them, but the counter says you still have 1 0 > instances), then there may be a fault in your object termination strategy > (circular references that are not resolved, for example). This MAY or MAY > NOT cause the behaviour you describe - but it's good to check it, anyway. > 2) Log to a file. Write a logging entry whenever you pass an important lin e > of your code. That way, you have a chance to find out what happened just > before the crash. Maybe that can give you a clue. > > Robert > > "Paul fpvt2" <Paulfpvt2@discussions.microsoft.com> wrote in message > news:15C944F5-291E-4245-8F0A-F206552542A0@microsoft.com... > user > ...>l..Al....@... > ........w..?l..Al > X....:".....X... > .....@...H....... > XO".......Rs..". > .....X........... > .........0...(`8. > ................. > .........h.....Rs > H...X........... > .........z.Rs.... > .....7.RsH....... > ................. > ...@.(K@.H....... > ................. > ................. > ................. > ................. > ................. > ................. > edi=00000000 > nc > efl=00000202 > ......6...6. > ...6..d.t^....... > ............t..#. > ...6...W|}..t^... > ............ > ...6.........D.\| > ..+W|............ > ............ > ................. > .......7.....@.7. > ...G............. > ......<9......... > ................. > .....DDDDD|111|NQ > M5,NQM5,ZBM5,ZBM > 5,ZBM5,ZBM5,ZBM5 > ,ZBM5,ZBM5,ZBM5, > ZBM5,ZBM5,ZBM5,Z > BM5,ZBM5,ZBM5,ZB > M5,ZBM5,ZBM5,ZBM > > >
Post Follow-up to this message
Show a Printable Version
Email This Page to Someone!
Receive updates to this thread
Powered by vBulletin
Copyright 2000-2006 Jelsoft Enterprises Limited.