Advanced Delphi

Moderators: None (Apply to moderate this forum)
Number of threads: 333
Number of posts: 743

This Forum Only
Post New Thread
Single Post View       Linear View       Threaded View      f

Report
DELPHI 7 program gets First chance exception on some machines. Posted by TERMAN on 13 Mar 2012 at 12:25 AM
Hi,
This is a very strange error. Hope that someone can give us a clue what is causing it.
We have a DELPHI 7 program that have been running for several years without problems.
Now on certain new machines we get a "First chance exception" when calling a SOAP function on an J-boss server.
The program works fine on older machines but not on some newer.
Traces have been made, both with Depends and Procmon on machines that are working and not. On the not working machines the trace just stop after the exception.
The running production environment are Windows Server 2003 SP1. The servers have exactly the same plattform versions.
We have written test programs in DELPHI 7 (same environment as production) and also in .NET calling the same SOAP function. .NET test program works but not DELPHI 7.
Extraction from both traces are shown below for DELPHI test program.
DEPENDS TRACE.
Trace from working machine:
RegCloseKey HKCU\Software\Microsoft\Internet Explorer\Main\FeatureControl SUCCESS
ReadFile E:\SoapClientTest\SOAPClient.exe SUCCESS Offset: 1 020 928, Length: 8 192, I/O Flags: Non-cached, Paging I/O, Synchronous Paging I/O
RegOpenKey HKLM\Software\Microsoft\COM3 SUCCESS
RegQueryValue HKLM\SOFTWARE\Microsoft\COM3\Com+Enabled SUCCESS Type: REG_DWORD, Length: 4, Data: 1
RegCloseKey HKLM\SOFTWARE\Microsoft\COM3 SUCCESS

Trace from not working machine on the same spot in the trace file:
RegCloseKey HKCU\Software\Microsoft\Internet Explorer\Main\FeatureControl SUCCESS
ReadFile C:\WINDOWS\system32\user32.dll SUCCESS Offset: 353 280, Length: 4 096, I/O Flags: Non-cached, Paging I/O, Synchronous Paging I/O
ReadFile C:\WINDOWS\system32\user32.dll SUCCESS Offset: 197 632, Length: 4 096, I/O Flags: Non-cached, Paging I/O, Synchronous Paging I/O
NOTE! Here the exception happens.

PROCMON TRACE
Trace from working machine:
00:00:18.578: GetProcAddress(0x71C00000 [c:\windows\system32\WS2_32.DLL], "GetNameInfoW") called from "c:\windows\system32\WS2_32.DLL" at address 0x71C04F13 and returned 0x71C09A4E by thread 1.
00:00:18.578: GetProcAddress(0x71C00000 [c:\windows\system32\WS2_32.DLL], "freeaddrinfo") called from "c:\windows\system32\WS2_32.DLL" at address 0x71C04F13 and returned 0x71C033E7 by thread 1.
ON NEXT ROW THE ERROR Occurs on the NOT working machine.
00:00:18.578: LoadLibraryA("CLBCatQ.DLL") called from "c:\windows\system32\OLE32.DLL" at address 0x776AEBC4 by thread 1.
00:00:18.578: Loaded "c:\windows\system32\CLBCATQ.DLL" at address 0x777B0000 by thread 1. Successfully hooked module.
00:00:18.594: Loaded "c:\windows\system32\COMRES.DLL" at address 0x77010000 by thread 1. Successfully hooked module.
00:00:18.594: DllMain(0x77010000, DLL_PROCESS_ATTACH, 0x00000000) in "c:\windows\system32\COMRES.DLL" called by thread 1.
00:00:18.594: DllMain(0x77010000, DLL_PROCESS_ATTACH, 0x00000000) in "c:\windows\system32\COMRES.DLL" returned 1 (0x1) by thread 1.
00:00:18.594: DllMain(0x777B0000, DLL_PROCESS_ATTACH, 0x00000000) in "c:\windows\system32\CLBCATQ.DLL" called by thread 1.
00:00:18.594: LoadLibraryA("ole32.dll") called from "c:\windows\system32\CLBCATQ.DLL" at address 0x777B71B5 by thread 1.

Trace from not working machine:
00:00:19.078: GetProcAddress(0x71C00000 [c:\windows\system32\WS2_32.DLL], "GetNameInfoW") called from "c:\windows\system32\WS2_32.DLL" at address 0x71C04F13 and returned 0x71C09A4E by thread 1.
00:00:19.078: GetProcAddress(0x71C00000 [c:\windows\system32\WS2_32.DLL], "freeaddrinfo") called from "c:\windows\system32\WS2_32.DLL" at address 0x71C04F13 and returned 0x71C033E7 by thread 1.
00:00:19.078: First chance exception 0xC0000005 (Access Violation) occurred at address 0x00C27E2E by thread 1.

We can also mention that the machines are created from the same image as the old ones.
It must have something to do with the DELPHI environment versus the machine configuration though the .NET test progam works.

We are looking forward to some theories/solutions that can help us forward.

Everything else are working on the mahcines. It is just the SOAP calls to the J-BOSS server that fails ...




 

Recent Jobs

Official Programmer's Heaven Blogs
Web Hosting | Browser and Social Games | Gadgets

Popular resources on Programmersheaven.com
Assembly | Basic | C | C# | C++ | Delphi | Flash | Java | JavaScript | Pascal | Perl | PHP | Python | Ruby | Visual Basic
© Copyright 2011 Programmersheaven.com - All rights reserved.
Reproduction in whole or in part, in any form or medium without express written permission is prohibited.
Violators of this policy may be subject to legal action. Please read our Terms Of Use and Privacy Statement for more information.
Operated by CommunityHeaven, a BootstrapLabs company.