4

Windows XP 開発マシンから Windows 8 開発マシンに移行しようとしている従来の ASP で作成された Web サイトがあり、Windows Server 2003 マシンから Server 2012 に本番環境で移行しようとしています。Crystal Reports Report Application Server 9 を使用して生成します報告します。

Windows 8 では、IIS 8 をインストールし、32 ビット アプリケーションを使用するように .NET 2 クラシック アプリケーション プールを構成し、ID を Network Service に設定しました。CR9 RAS と 64 ビット ランタイムをインストールしました。Web サイトでレポートを印刷しようとすると、CR オブジェクトを作成する最初の行で次のエラーが表示されます。

An unhandled win32 exception occured in w3wp.exe

DebugDiag を実行したところ、次のようにクラッシュ ダンプを取得できました。

In w3wp__.NET v2.0 Classic__PID__2220__Date__10_03_2013__Time_12_59_55PM__954__Second_Chance_Exception_C000041D.dmp the module C:\Windows\System32\user32.dll has caused an access violation exception (0xC0000005) when trying to write to memory location 0x03f77de0 on thread 35

Thread 29 - System ID 2736
Entry point   cachemanager!DllUnregisterServer+accd 
Create time   9/26/2013 12:30:24 PM 
Time spent in user mode   0 Days 0:0:0.0 
Time spent in kernel mode   0 Days 0:0:0.0 

Full Call Stack

Function     Arg 1     Arg 2     Arg 3     Arg 4   Source 
cachemanager!DllUnregisterServer+78c5     029e8a63     000e00be     00000081     00000000    
user32!UserCallWinProcCheckWow+100     029e8a63     029e8a63     00000000     000e00be    
user32!DispatchClientMessage+15d     012a2170     00000000     00000081     00000000    
user32!__fnINLPCREATESTRUCT+8d     03fdf6f4     00000000     03fdfc10     770e2bf0    
ntdll!KiUserCallbackDispatcher+2e     00000000     0000c083     0000c083     00000000    
user32!VerNtUserCreateWindowEx+238     00000000     00000000     80000000     00000000    
user32!CreateWindowInternal+26b     0000c083     00000000     80000000     00000000    
user32!CreateWindowExW+37     00000000     0000c083     00000000     80000000    
cachemanager!DllUnregisterServer+7a3d     00000000     03fdfba8     00000000     80000000    
cachemanager!DllUnregisterServer+75d9     00000000     05335d98     05335d98     00000000    
cachemanager!DllUnregisterServer+6e94     05335688     00000000     00000000     05335d98    
cachemanager!DllUnregisterServer+ad2c     05335d98     03fdfc70     770fbf39     05335d98    
kernel32!BaseThreadInitThunk+e     05335d98     8eb1ec43     00000000     00000000    
ntdll!__RtlUserThreadStart+72     029ebeab     05335d98     ffffffff     77171df7    
ntdll!_RtlUserThreadStart+1b     029ebeab     05335d98     00000000     00000000    


Exception Information
In w3wp__.NET v2.0 Classic__PID__356__Date__09_26_2013__Time_12_30_24PM__637__Second_Chance_Exception_C000041D.dmp the module C:\Windows\System32\user32.dll has caused an access violation exception (0xC0000005) when trying to write to memory location 0x04443000 on thread 29

Module Information 
Image Name: C:\Windows\System32\user32.dll   Symbol Type:  PDB 
Base address: 0x00905a4d   Time Stamp:  Thu Sep 20 00:10:05 2012  
Checksum: 0x00000000   Comments:   
COM DLL: False   Company Name:  Microsoft Corporation 
ISAPIExtension: False   File Description:  Multi-User Windows USER API Client DLL 
ISAPIFilter: False   File Version:  6.2.9200.16420 (win8_gdr.120919-1813) 
Managed DLL: False   Internal Name:  user32 
VB DLL: False   Legal Copyright:  © Microsoft Corporation. All rights reserved. 
Loaded Image Name:  user32.dll   Legal Trademarks:   
Mapped Image Name:     Original filename:  user32 
Module name:  user32   Private Build:   
Single Threaded:  False   Product Name:  Microsoft® Windows® Operating System 
Module Size:  1.09 MBytes   Product Version:  6.2.9200.16420 
Symbol File Name:  c:\symcache\wuser32.pdb\81836B9A16A64DBBB5209E254A61DD072\wuser32.pdb   Special Build:  & 

おそらくネットワークサービスが何かにアクセスできないようですので、CRがインストールされているディレクトリ、Cドライブ全体、Windows一時フォルダー、および私のWebサイトフォルダーに移動し、変更なしでネットワークサービスからすべてを完全に制御できるようにしました.

Crystal Reports をアンインストールし、そのページにアクセスして別のエラーを表示しようとしましたが、それでも同じクラッシュが発生したため、実際のインストールの問題なのか、IIS または IIS 用の従来の ASP の構成方法に関してより深刻な問題なのかわかりません。 8.

現在sysinternalsプロセスモニターを試していますが、バッファオーバーフローが見られますが、プログラムの使用方法がわからないため、このdllによるものなのか、iisによるものなのかわかりません。

この問題をさらにデバッグまたは解決するにはどうすればよいですか?

アップデート:

IO は sysinternals プロセス モニターを実行し、ASP ページがヒットしたときにバッファー オーバーフローが発生することを確認できました。これが発生した後、Crystal Reports DLL が呼び出されると、FILE LOCKED WITH ONLY READERSと表示されます。

CRに到達する前に、何かがファイルをロックしているようです。これらの ASP ページにアクセスすると、何がバッファ オーバーフローを引き起こす可能性がありますか?

4

0 に答える 0