2011-06-19 24 views
2

最近我的记录窗体开始产生访问冲突,当我在关闭按钮上关闭它时。关闭窗口产生访问冲突00000258

使用madExcept,我找不到任何有用的(对我来说)在调用堆栈,或其他任何东西。

这是我的日志:

date/time   : 2011-06-19, 16:26:06, 851ms 
computer name  : JEFF-PC 
user name   : Jeff <admin> 
registered owner : Microsoft/Microsoft 
operating system : Windows 7 x64 Service Pack 1 build 7601 
system language : Danish 
system up time : 4 hours 27 minutes 
program up time : 13 seconds 
processors  : 8x Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz 
physical memory : 2852/6142 MB (free/total) 
free disk space : (C:) 321,83 GB 
display mode  : 1920x1080, 32 bit 
process id  : $1e70 
allocated memory : 77,05 MB 
executable  : xSky.exe 
exec. date/time : 2011-06-19 16:25 
version   : 1.4.25.1168 
compiled with  : Delphi 2010 
madExcept version : 3.0l 
contact name  : Jeff Hansen 
contact email  : [email protected] 
callstack crc  : $85c8cb0e, $11baad03, $46cd9070 
exception number : 1 
exception class : EAccessViolation 
exception message : Access violation at address 0052A237 in module 'xSky.exe'. Read of address 00000258. 

main thread ($7b0): 
0052a237 +0003 xSky.exe  Controls  11847 +1 TWinControl.HandleNeeded 
0052a25d +0005 xSky.exe  Controls  11856 +1 TWinControl.GetHandle 
006742c5 +6735 xSky.exe  sSkinProvider   TsSkinProvider.NewWndProc 
00526b2c +002c xSky.exe  Controls  9540 +3 TWinControl.MainWndProc 
004a3b28 +0014 xSky.exe  Classes  13014 +8 StdWndProc 
770c0117 +002b ntdll.dll        KiUserCallbackDispatcher 
76950d48 +0016 USER32.dll       CallWindowProcW 
0052758c +00d8 xSky.exe  Controls  9860 +30 TWinControl.DefaultHandler 
0054be0a +005a xSky.exe  Forms   5223 +11 TCustomForm.DefaultHandler 
00529177 +00a3 xSky.exe  Controls  11042 +20 TWinControl.WMSysCommand 
0054cedd +0055 xSky.exe  Forms   5832 +14 TCustomForm.WMSysCommand 
00522bc8 +02d4 xSky.exe  Controls  7062 +91 TControl.WndProc 
0052748c +0568 xSky.exe  Controls  9819 +144 TWinControl.WndProc 
00549b98 +0594 xSky.exe  Forms   3960 +191 TCustomForm.WndProc 
00673672 +5ae2 xSky.exe  sSkinProvider   TsSkinProvider.NewWndProc 
00526b2c +002c xSky.exe  Controls  9540 +3 TWinControl.MainWndProc 
004a3b28 +0014 xSky.exe  Classes  13014 +8 StdWndProc 
769496c0 +0047 USER32.dll       SendMessageW 
006712ed +375d xSky.exe  sSkinProvider   TsSkinProvider.NewWndProc 
00526b2c +002c xSky.exe  Controls  9540 +3 TWinControl.MainWndProc 
004a3b28 +0014 xSky.exe  Classes  13014 +8 StdWndProc 
769496c0 +0047 USER32.dll       SendMessageW 
0067f857 +073f xSky.exe  sSkinProvider   TacBorderForm.BorderProc 
00526b2c +002c xSky.exe  Controls  9540 +3 TWinControl.MainWndProc 
004a3b28 +0014 xSky.exe  Classes  13014 +8 StdWndProc 
76947885 +000a USER32.dll       DispatchMessageW 
00552d55 +011d xSky.exe  Forms   9784 +30 TApplication.ProcessMessage 
00552d9a +000a xSky.exe  Forms   9814 +1 TApplication.HandleMessage 
005530c5 +00c9 xSky.exe  Forms   9951 +26 TApplication.Run 
007e493b +008f xSky.exe  xSky    54 +10 initialization 
750f33c8 +0010 kernel32.dll       BaseThreadInitThunk 

thread $b8c: 
770d1f2f +0b ntdll.dll  NtWaitForWorkViaWorkerFactory 
750f33c8 +10 kernel32.dll BaseThreadInitThunk 

thread $129c: 
770d1f2f +0b ntdll.dll  NtWaitForWorkViaWorkerFactory 
750f33c8 +10 kernel32.dll BaseThreadInitThunk 

thread $1748: 
770d1f2f +0b ntdll.dll  NtWaitForWorkViaWorkerFactory 
750f33c8 +10 kernel32.dll BaseThreadInitThunk 

thread $1ac8: 
770d0146 +0e ntdll.dll  NtWaitForMultipleObjects 
750f33c8 +10 kernel32.dll BaseThreadInitThunk 

thread $a88 (TWorkerThread): 
770cf8ba +0e ntdll.dll        NtWaitForSingleObject 
74f20810 +92 KERNELBASE.dll      WaitForSingleObjectEx 
750f118f +3e kernel32.dll       WaitForSingleObjectEx 
750f1143 +0d kernel32.dll       WaitForSingleObject 
006d0129 +19 xSky.exe  VirtualTrees   TWorkerThread.Execute 
004666af +2b xSky.exe  madExcept    HookedTThreadExecute 
004a1656 +42 xSky.exe  Classes  11018 +8 ThreadProc 
00406cf0 +28 xSky.exe  System  13579 +33 ThreadWrapper 
00466591 +0d xSky.exe  madExcept    CallThreadProcSafe 
004665fb +37 xSky.exe  madExcept    ThreadExceptFrame 
750f33c8 +10 kernel32.dll       BaseThreadInitThunk 
>> created by main thread ($7b0) at: 
006d006e +16 xSky.exe  VirtualTrees   TWorkerThread.Create 

thread $1fb0: 
76947908 +26 USER32.dll GetMessageW 
750f33c8 +10 kernel32.dll BaseThreadInitThunk 

thread $1fc8: 
770d1f2f +0b ntdll.dll  NtWaitForWorkViaWorkerFactory 
750f33c8 +10 kernel32.dll BaseThreadInitThunk 

thread $15dc (TacTimerThread): 
770d0146 +0e ntdll.dll       NtWaitForMultipleObjects 
74f2095c +fa KERNELBASE.dll      WaitForMultipleObjectsEx 
750f1a27 +89 kernel32.dll      WaitForMultipleObjectsEx 
004a4e06 +56 xSky.exe  SyncObjs  339 +14 THandleObject.WaitFor 
005f54b0 +0c xSky.exe  acThdTimer 6852 +0 TacTimerThread.Execute 
004a1656 +42 xSky.exe  Classes 11018 +8 ThreadProc 
00406cf0 +28 xSky.exe  System  13579 +33 ThreadWrapper 
00466591 +0d xSky.exe  madExcept   CallThreadProcSafe 
004665fb +37 xSky.exe  madExcept   ThreadExceptFrame 
750f33c8 +10 kernel32.dll      BaseThreadInitThunk 
>> created by main thread ($7b0) at: 
005f55a1 +0d xSky.exe  acThdTimer 6852 +0 TacThreadedTimer.StartTimer 

我做我的项目,在此之前开始发生,是我添加了一个形式到我的项目,后来又删除它唯一的变化。它的所有痕迹已被删除,但我的日志形式仍然呕吐AV。

记录表格是一个自动创建表单。我所做的只是表明它是frmLog.Show;

它可能是一些非常愚蠢的,一如既往,但我只是无法弄清楚。

我没有做任何形式关闭事件。

编辑:当双击在疯狂的顶部调用堆栈的项目,它把我带到单位控件和行,如果WindowHandle = 0,那么在程序TWinControl.HandleNeeded;

+0

你可以在调试器的AV中断开吗?你能否使用你的版本控制系统来隔离导致问题的变化? –

+0

@David - 当双击Mad中顶部的Call Stack项时,它将我带入单元Controls,并在程序TWinControl.HandleNeeded中将'if WindowHandle = 0 then'一行。这有帮助吗?我没有版本控制:( – Jeff

+0

只是为了确保表格被完全删除:(1)从项目中删除它的pascal文件以及可以通过搜索路径找到的任何文件夹(2)清除构建中的所有DCU (3)选择不使用Delphi dcus编译,使用VCL源代码编译(4)Build All和Run,调用堆栈可能更有意义并且更有帮助 –

回答

3

关掉你的皮肤,看看它是否仍然爆炸。这可能不是根本原因,但在调用堆栈中使用皮肤可能会掩盖真正的问题。

+0

它确实是原因 – Jeff

+0

我讨厌皮肤...感谢接受。 –

+0

对不起,忘了它:P - 皮肤非常酷 - 我所要做的就是更新时间。 :) – Jeff