3270 Applet Causes Access Violation Error Message in Win3270.exe (261290)
The information in this article applies to:
- Microsoft SNA Server 4.0
- Microsoft SNA Server 4.0 SP1
- Microsoft SNA Server 4.0 SP2
- Microsoft SNA Server 4.0 SP3
This article was previously published under Q261290 SYMPTOMS
When you start the 3270 applet (Win3270.exe), included with the SNA Server client for Windows NT, with the SnaBase service configured to run under a user account, an Access Violation error message may occur. If the Drwtsn32.exe file is configured as the default debugger on the system, a Drwtsn32.log file similar to the following is generated:
Application exception occurred:
App: exe\win3270.dbg (pid=229)
When: 2/1/2000 @ 9:56:14.629
Exception number: c0000005 (access violation)
*----> Task List <----*
229 WIN3270.exe
(01000000 - 0101f000) C:\WINNT\Symbols\exe\win3270.dbg
function: RtlpWaitForCriticalSection
77f6cdc2 e920010000 jmp RtlpWaitForCriticalSection+0x196 (77f6cee7) 77f6cdc7 803d8859fa7701
ds:77fa5988=01 cmp byte ptr [fltused+0xca8 (77fa5988)],0x1
77f6cdce 1bc0 sbb eax,eax
77f6cdd0 25d05afa77 and eax,0x77fa5ad0
77f6cdd5 837e1000 cmp dword ptr [esi+0x10],0x0 ds:682feb26=????????
77f6cdd9 8945fc mov [ebp-0x4],eax ss:0337e6b6=????????
77f6cddc 7506 jnz RtlpWaitForCriticalSection+0x93 (77f6cde4)
77f6cdde 56 push esi
77f6cddf e8b6fdffff call RtlSetCriticalSectionSpinCount+0x70 (77f6cb9a)
77f6cde4 8b06 mov eax,[esi] ds:67270120=????????
FAULT ->77f6cde6 ff4010 inc dword ptr [eax+0x10] ds:0108ea06=????????
77f6cde9 8b06 mov eax,[esi] ds:67270120=????????
77f6cdeb ff75fc push dword ptr [ebp-0x4] ss:0337e6b6=????????
77f6cdee 6a00 push 0x0
77f6cdf0 ff4014 inc dword ptr [eax+0x14] ds:0108ea06=????????
77f6cdf3 ff7610 push dword ptr [esi+0x10] ds:682feb26=????????
77f6cdf6 e855b4ffff call NtWaitForSingleObject (77f68250)
77f6cdfb 3d02010000 cmp eax,0x102
77f6ce00 0f85b2000000 jne RtlpWaitForCriticalSection+0x167 (77f6ceb8)
77f6ce06 57 push edi
77f6ce07 68bcccf677 push 0x77f6ccbc
77f6ce0c e873940000 call DbgPrint (77f76284)
*----> Stack Back Trace <----*
FramePtr ReturnAd Param#1 Param#2 Param#3 Param#4 Function Name
022efcb0 77f67506 67270120 67222d22 67270120 00000000 ntdll!RtlpWaitForCriticalSection
00000000 00000000 00000000 00000000 00000000 00000000 ntdll!RtlEnterCriticalSection
CAUSE
The SNA Server client dynamic address module (DMOD) is loaded by an emulator to retrieve a list of 3270 LUs that have been assigned to the user. Many 3270 emulators, including the 3270 applet, unload the DMOD after the list of 3270 LUs has been obtained. A small timing window exists that allows the DMOD's event-logging thread to make an attempt at logging an event while the DMOD's main application thread is unloading the DMOD (after the list of 3270 LUs is retrieved). The Access Violation error message occurs when the logging thread tries to access a critical section that is no longer initialized because the DMOD is unloaded by the main thread.
RESOLUTIONTo resolve this problem, obtain the latest service pack for SNA Server 4.0. For additional information, click the following article number to view the article in the
Microsoft Knowledge Base:
215838 How to Obtain the Latest SNA Server Version 4.0 Service Pack
WORKAROUND
To work around this problem, use the local system account, or install the SNA 4.0 Windows 95 or Windows 98 client.
STATUSMicrosoft has confirmed that this is a problem in SNA Server 4.0.
This problem was first corrected in SNA Server 4.0 Service Pack 4.MORE INFORMATION
This is a timing-related issue. If the local system account is used for the SNABASE service or if tracing has been enabled, the problem does not occur.
NOTE: This problem can also occur with third-party emulators as well.
Modification Type: | Major | Last Reviewed: | 11/25/2003 |
---|
Keywords: | kbbug kbfix kbQFE kbSNA400PreSP4fix kbSNA400sp4fix KB261290 |
---|
|