04-08-2017, Saat: 11:12
TClientDataset'den türettiğim bir component'de bir MemoryLeak sorunu yaşıyorum ve çözemedim bir türlü. FastMM'in verdiği log dosyası aşağıdaki gibi ama açıkçası FastMM'in sanırım tam kullanımını bilmediğimden için olabilir hatayı ürettiğini söylediğini düşündüğüm kısımdan bir şey anlamadım (bir sorun göremedim).
Anladığım kadarıyla hatanın FindVariables metodundan geldiğini söylüyor ve onun da içeriği şu şekilde:
Sorunla ilgili fikir verebilecek, yol gösterebilecek arkadaşlara şimdiden teşekkür ederim.
Kod: (Select All)
--------------------------------2017/8/4 11:05:07--------------------------------
A memory block has been leaked. The size is: 36
This block was allocated by thread 0x2D2C, and the stack trace (return addresses) at the time was:
41A93A [FastMM4.pas][FastMM4][DebugReallocMem$qqrpvi][9816]
40730F [System.pas][System][@ReallocMem$qqrrpvi][4736]
40B91D [System.pas][System][@UStrSetLength$qqrr20System.UnicodeStringi][29336]
40B99E [System.pas][System][@UStrCat$qqrr20System.UnicodeStringx20System.UnicodeString][29449]
B6871D [myCompany.JsonFunctions.pas][myCompany.JsonFunctions][Jsonfunctions.FindVariables$qqrx20System.UnicodeStringo][71]
B694AB [myCompany.JsonQuery.pas][myCompany.JsonQuery][Jsonquery.TEJsonQuery.FindVariables$qqrv][253]
B6A541 [myCompany.JsonDataset.pas][myCompany.JsonDataset][Jsondataset.TEJsonDataset.PostInsert$qqrv][165]
B6ACBD [myCompany.JsonDataset.pas][myCompany.JsonDataset][Jsondataset.TEJsonDataset.DoBeforePost$qqrv][238]
690264 [Data.DB.pas][Data.DB][Db.TDataSet.Post$qqrv][14369]
93BB96 [Datasnap.DBClient.pas][Datasnap.DBClient][Dbclient.TCustomClientDataSet.Post$qqrv][3352]
DE40E0 [cxDBData.pas][cxDBData][TcxDBDataController.CheckBrowseMode$qqrv][4541]
The block is currently used for an object of class: UnicodeString
The allocation number is: 141448
Current memory dump of 256 bytes starting at pointer address 7EBD27E0:
B0 04 02 00 01 00 00 00 05 00 00 00 72 00 6F 00 77 00 69 00 64 00 00 00 91 49 2B 75 80 80 80 80
80 80 80 80 80 80 80 80 00 00 00 00 21 2A BD 7E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FA 48 02 00 D2 72 40 00 DF A5 40 00 6C AA 40 00 D2 58 AB 00 FE 80 AB 00 39 6E AE 00 42 E6 AD 00
24 E6 AD 00 36 8B AB 00 9B 6E AE 00 E1 22 AF 00 2C 2D 00 00 2C 2D 00 00 99 A6 40 00 1D C2 40 00
41 C1 40 00 65 C2 40 00 9B D5 40 00 86 C2 40 00 41 C1 40 00 05 88 40 00 EA 85 40 00 45 8E 40 00
3D E7 AD 00 22 00 00 00 B0 04 02 00 A1 8D 22 88 E4 6B 1B 01 80 80 80 80 80 80 80 80 80 80 80 80
80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 5E 72 DD 77 80 80 00 00 00 00 D1 2A BD 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 37 54 02 00 D2 72 40 00 DF A5 40 00 D3 AB 40 00
° . . . . . . . . . . . r . o . w . i . d . . . ‘ I + u € € € €
€ € € € € € € € . . . . ! * ½ ~ . . . . . . . . . . . . . . . .
ú H . . Ò r @ . ß ¥ @ . l ª @ . Ò X « . ş € « . 9 n ® . B æ .
$ æ . 6 ‹ « . › n ® . á " ¯ . , - . . , - . . ™ ¦ @ . . Â @ .
A Á @ . e  @ . › Õ @ . †  @ . A Á @ . . ˆ @ . ê … @ . E @ .
= ç . " . . . ° . . . ¡ " ˆ ä k . . € € € € € € € € € € € €
€ € € € € € € € € € € € € € € € € € ^ r İ w € € . . . . Ñ * ½ ~
. . . . . . . . . . . . . . . . 7 T . . Ò r @ . ß ¥ @ . Ó « @ .
--------------------------------2017/8/4 11:05:07--------------------------------
A memory block has been leaked. The size is: 52
This block was allocated by thread 0x2D2C, and the stack trace (return addresses) at the time was:
4072D2 [System.pas][System][@GetMem$qqri][4614]
40A5DF [System.pas][System][@NewUnicodeString$qqri][24052]
40A810 [System.pas][System][@UStrFromPWCharLen$qqrr20System.UnicodeStringpbi][24730]
438500 [System.SysUtils.pas][System.SysUtils][Sysutils.TStringBuilder.ToString$qqrv][27061]
94A1E5 [System.JSON.pas][System.JSON][Json.TJSONString.AsTValue$qqrp24System.Typinfo.TTypeInfor18System.Rtti.TValue][1392]
B69784 [System.JSON.pas][myCompany.JsonQuery][Json.TJSONValue.%Cast$20System.UnicodeString%$qqrv$20System.UnicodeString][1303]
4072EE [System.pas][System][@FreeMem$qqrpv][4662]
4085F1 [System.pas][System][TObject.FreeInstance$qqrv][16461]
408E45 [System.pas][System][@ClassDestroy$qqrxp14System.TObject][17833]
408766 [System.pas][System][TObject.$bdtr$qqrv][16521]
9492CA [System.JSON.pas][System.JSON][Json.FindJSONValue$qqrxp22System.Json.TJSONValuex20System.UnicodeString][941]
The block is currently used for an object of class: UnicodeString
The allocation number is: 142771
Current memory dump of 256 bytes starting at pointer address 7EC09C10:
B0 04 02 00 01 00 00 00 12 00 00 00 41 00 41 00 45 00 6D 00 58 00 64 00 41 00 41 00 45 00 41 00
41 00 41 00 31 00 58 00 6D 00 41 00 41 00 49 00 00 00 29 C0 D9 76 80 80 00 00 00 00 D1 A0 C0 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9D 48 02 00 D2 72 40 00 D3 85 40 00 FA 8D 40 00
AB 03 4E 00 DD 13 4C 00 A4 1A 4C 00 EE EE A2 00 9B 1C A5 00 20 6E AF 00 4A FE B4 00 57 FE B4 00
2C 2D 00 00 2C 2D 00 00 F1 85 40 00 45 8E 40 00 B4 05 4E 00 73 87 40 00 3A 14 4C 00 73 87 40 00
4B EF A2 00 99 20 A5 00 73 87 40 00 45 87 4D 00 E4 81 4D 00 34 00 00 00 E0 B0 4A 00 F8 FC D6 87
E4 6B 1B 01 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 07 03 29 78 00 00 00 00 51 A8 C0 7E
° . . . . . . . . . . . A . A . E . m . X . d . A . A . E . A .
A . A . 1 . X . m . A . A . I . . . ) À Ù v € € . . . . Ñ À ~
. . . . . . . . . . . . . . . . H . . Ò r @ . Ó … @ . ú @ .
« . N . İ . L . ¤ . L . î î ¢ . › . ¥ . n ¯ . J ş ´ . W ş ´ .
, - . . , - . . ñ … @ . E @ . ´ . N . s ‡ @ . : . L . s ‡ @ .
K ï ¢ . ™ ¥ . s ‡ @ . E ‡ M . ä M . 4 . . . à ° J . ø ü Ö ‡
ä k . . € € € € € € € € € € € € € € € € € € € € € € € € € € € €
€ € € € € € € € € € € € € € € € € € € € . . ) x . . . . Q ¨ À ~
--------------------------------2017/8/4 11:05:07--------------------------------
A memory block has been leaked. The size is: 84
This block was allocated by thread 0x2D2C, and the stack trace (return addresses) at the time was:
4072D2 [System.pas][System][@GetMem$qqri][4614]
4085D3 [System.pas][System][TObject.NewInstance$qqrv][16452]
408DFA [System.pas][System][@ClassCreate$qqrpvzc][17790]
688872 [Data.DB.pas][Data.DB][Db.TParam.$bctr$qqrp26System.Classes.TCollection][11125]
41A8B1 [FastMM4.pas][FastMM4][DebugFreeMem$qqrpv][9781]
4C1462 [System.Classes.pas][System.Classes][Classes.TCollection.Add$qqrv][5795]
687E74 [Data.DB.pas][Data.DB][Db.TParams.CreateParam$qqr18Data.Db.TFieldTypex20System.UnicodeString18Data.Db.TParamType][10860]
B69569 [myCompany.JsonQuery.pas][myCompany.JsonQuery][Jsonquery.TEJsonQuery.FindVariables$qqrv][266]
B6A541 [myCompany.JsonDataset.pas][myCompany.JsonDataset][Jsondataset.TEJsonDataset.PostInsert$qqrv][165]
B6ACBD [myCompany.JsonDataset.pas][myCompany.JsonDataset][Jsondataset.TEJsonDataset.DoBeforePost$qqrv][238]
690264 [Data.DB.pas][Data.DB][Db.TDataSet.Post$qqrv][14369]
The block is currently used for an object of class: TParam
The allocation number is: 141455
Current memory dump of 256 bytes starting at pointer address 7ECE3E20:
08 98 66 00 00 00 00 00 00 00 00 00 20 3E CE 7E 00 00 00 00 00 00 00 00 02 01 00 00 00 00 00 00
1C 9C C0 7E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 EC 27 BD 7E 18 01 00 00 00 00 00 00
C4 AC 66 00 00 00 00 00 00 00 00 00 43 99 D1 78 80 80 80 80 80 80 80 80 00 00 00 00 61 31 CE 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 88 4D 02 00 3A A9 41 00 0F 73 40 00 07 D3 40 00
4A D4 40 00 97 83 43 00 52 75 43 00 A6 84 43 00 80 A1 94 00 98 BD 94 00 16 B4 94 00 E7 B2 94 00
2C 2D 00 00 2C 2D 00 00 A4 D5 40 00 86 C2 40 00 41 C1 40 00 05 88 40 00 EA 85 40 00 45 8E 40 00
66 87 40 00 73 87 40 00 5B A1 94 00 73 87 40 00 C4 9D 94 00 48 00 00 00 00 00 00 00 F0 B8 60 86
E4 6B 1B 01 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
. ˜ f . . . . . . . . . > Î ~ . . . . . . . . . . . . . . . .
. œ À ~ . . . . . . . . . . . . . . . . ì ' ½ ~ . . . . . . . .
Ä ¬ f . . . . . . . . . C ™ Ñ x € € € € € € € € . . . . a 1 Î ~
. . . . . . . . . . . . . . . . ˆ M . . : © A . . s @ . . Ó @ .
J Ô @ . — ƒ C . R u C . ¦ „ C . € ¡ ” . ˜ ½ ” . . ´ ” . ç ² ” .
, - . . , - . . ¤ Õ @ . † Â @ . A Á @ . . ˆ @ . ê … @ . E @ .
f ‡ @ . s ‡ @ . [ ¡ ” . s ‡ @ . Ä ” . H . . . . . . . ğ ¸ ` †
ä k . . € € € € € € € € € € € € € € € € € € € € € € € € € € € €
--------------------------------2017/8/4 11:05:07--------------------------------
A memory block has been leaked. The size is: 68
This block was allocated by thread 0x2D2C, and the stack trace (return addresses) at the time was:
4DB29E54
4DB28419
4DB21AA9
4DB1FB5B
76CE7A0A [Unknown function at IsNLSDefinedString]
76CBF05F [VirtualQueryEx]
76CBF11C [VirtualQuery]
5C98FD9 [GetFrameBasedStackTrace]
77532FDD [Unknown function at RtlQueryPerformanceCounter]
5C99336 [GetRawStackTrace]
41976E [FastMM4.pas][FastMM4][CalculateHeaderCheckSum$qqrp29Fastmm4.TFullDebugBlockHeader][9080]
The block is currently used for an object of class: Unknown
The allocation number is: 48486
Current memory dump of 256 bytes starting at pointer address 7ECE9530:
3C 00 B4 4D 08 00 00 00 00 00 00 00 00 00 00 00 3F 00 00 00 00 80 80 80 80 80 80 80 80 80 80 80
80 80 80 80 80 80 80 80 43 00 80 80 80 80 80 80 80 80 80 80 80 80 80 80 01 00 00 00 0F 00 00 00
BF E1 0B 5D 80 80 80 80 00 00 00 00 71 84 CE 7E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
5F BD 00 00 36 AA 41 00 9E 72 40 00 D2 90 40 00 6E 94 40 00 08 AE 91 00 79 16 4C 00 0B B0 91 00
92 55 93 00 16 98 93 00 6C B6 B6 00 F1 B6 B6 00 2C 2D 00 00 2C 2D 00 00 EE 72 40 00 2A 91 40 00
01 91 40 00 12 88 40 00 EA 85 40 00 45 8E 40 00 66 87 40 00 73 87 40 00 66 B3 91 00 D4 9F 40 00
4F 3E 19 01 40 00 00 00 00 00 00 00 D8 90 C6 87 E4 6B 1B 01 80 80 80 80 80 80 80 80 80 80 80 80
80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
< . ´ M . . . . . . . . . . . . ? . . . . € € € € € € € € € € €
€ € € € € € € € C . € € € € € € € € € € € € € € . . . . . . . .
¿ á . ] € € € € . . . . q „ Î ~ . . . . . . . . . . . . . . . .
_ ½ . . 6 ª A . r @ . Ò @ . n ” @ . . ® ‘ . y . L . . ° ‘ .
’ U “ . . ˜ “ . l ¶ ¶ . ñ ¶ ¶ . , - . . , - . . î r @ . * ‘ @ .
. ‘ @ . . ˆ @ . ê … @ . E @ . f ‡ @ . s ‡ @ . f ³ ‘ . Ô Ÿ @ .
O > . . @ . . . . . . . Ø Æ ‡ ä k . . € € € € € € € € € € € €
€ € € € € € € € € € € € € € € € € € € € € € € € € € € € € € € €
--------------------------------2017/8/4 11:05:07--------------------------------
A memory block has been leaked. The size is: 20
This block was allocated by thread 0x2D2C, and the stack trace (return addresses) at the time was:
4DB29E54
4DB28419
4DB21AA9
4DB1719F
4DB1A52D
4DB1A537
4DB248A8
775D09AE [Unknown function at RtlpNtEnumerateSubKey]
775D1958 [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
The block is currently used for an object of class: Unknown
The allocation number is: 48514
Current memory dump of 256 bytes starting at pointer address 7ED55D20:
E4 6B 1B 01 80 80 80 80 30 95 CE 7E 80 80 80 80 B2 99 EA 7E 80 80 80 80 00 00 00 00 21 69 D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 75 BD 00 00 54 9E B2 4D 19 84 B2 4D A9 1A B2 4D
E8 3C B2 4D AE 09 5D 77 58 19 5D 77 3C 19 5D 77 3C 19 5D 77 63 A8 58 77 DD 2F 53 77 06 34 53 77
2C 2D 00 00 2C 2D 00 00 3C 9E B2 4D 29 84 B2 4D 12 70 B1 4D E0 71 B1 4D 04 3C B2 4D 9B 31 B3 4D
B1 32 B3 4D A9 11 AE 4D 64 93 53 77 70 A8 55 77 4F A8 55 77 10 00 00 00 E4 6B 1B 01 36 57 BC CD
E4 6B 1B 01 80 80 80 80 80 80 80 80 80 80 80 80 C9 A8 43 32 80 80 80 80 00 00 00 00 61 9C D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 18 8F 00 00 D2 72 40 00 D3 85 40 00 FA 8D 40 00
EA F1 4D 00 C5 01 41 00 FA 8D 40 00 EB 03 4C 00 0C 6F D1 00 0C 1A D9 00 34 92 F4 00 A4 C7 DF 00
ä k . . € € € € 0 • Î ~ € € € € ² ™ ê ~ € € € € . . . . ! i Õ ~
. . . . . . . . . . . . . . . . u ½ . . T ² M . „ ² M © . ² M
è < ² M ® . ] w X . ] w < . ] w < . ] w c ¨ X w İ / S w . 4 S w
, - . . , - . . < ² M ) „ ² M . p ± M à q ± M . < ² M › 1 ³ M
± 2 ³ M © . ® M d “ S w p ¨ U w O ¨ U w . . . . ä k . . 6 W ¼ Í
ä k . . € € € € € € € € € € € € É ¨ C 2 € € € € . . . . a œ Õ ~
. . . . . . . . . . . . . . . . . . . Ò r @ . Ó … @ . ú @ .
ê ñ M . Å . A . ú @ . ë . L . . o Ñ . . . Ù . 4 ’ ô . ¤ Ç ß .
--------------------------------2017/8/4 11:05:07--------------------------------
A memory block has been leaked. The size is: 20
This block was allocated by thread 0x2D2C, and the stack trace (return addresses) at the time was:
4DB29E54
4DB28419
4DB21AA9
4DB1A52D
4DB1A537
4DB24059
775D09AE [Unknown function at RtlpNtEnumerateSubKey]
775D1958 [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
7758A863 [Unknown function at RtlUlonglongByteSwap]
The block is currently used for an object of class: Unknown
The allocation number is: 48504
Current memory dump of 256 bytes starting at pointer address 7ED55FA0:
E4 6B 1B 01 80 80 80 80 30 95 CE 7E 80 80 80 80 9B 68 43 55 80 80 80 80 00 00 00 00 00 41 D5 7E
00 00 00 00 00 00 00 00 50 A6 41 00 00 00 00 00 83 BD 00 00 54 9E B2 4D 19 84 B2 4D A9 1A B2 4D
9F 71 B1 4D 2D A5 B1 4D 37 A5 B1 4D 53 4D B2 4D AE 09 5D 77 58 19 5D 77 3C 19 5D 77 3C 19 5D 77
2C 2D 00 00 2C 2D 00 00 F1 85 40 00 45 8E 40 00 66 87 40 00 73 87 40 00 5B A1 94 00 73 87 40 00
C4 9D 94 00 73 87 40 00 30 AF 94 00 73 87 40 00 10 C2 94 00 10 00 00 00 44 6E 42 00 F0 91 C3 80
E4 6B 1B 01 80 80 80 80 30 95 CE 7E 80 80 80 80 0F 6E 3C 7F 80 80 80 80 00 00 00 00 E1 67 D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1A BF 00 00 3A A9 41 00 0F 73 40 00 07 D3 40 00
CC D3 44 00 F1 D3 44 00 4B C1 44 00 55 B0 94 00 0D B4 94 00 E7 B2 94 00 E4 B3 94 00 1D B6 94 00
ä k . . € € € € 0 • Î ~ € € € € › h C U € € € € . . . . . A Õ ~
. . . . . . . . P ¦ A . . . . . ƒ ½ . . T ² M . „ ² M © . ² M
Ÿ q ± M - ¥ ± M 7 ¥ ± M S M ² M ® . ] w X . ] w < . ] w < . ] w
, - . . , - . . ñ … @ . E @ . f ‡ @ . s ‡ @ . [ ¡ ” . s ‡ @ .
Ä ” . s ‡ @ . 0 ¯ ” . s ‡ @ . . Â ” . . . . . D n B . ğ ‘ Ã €
ä k . . € € € € 0 • Î ~ € € € € . n < € € € € . . . . á g Õ ~
. . . . . . . . . . . . . . . . . ¿ . . : © A . . s @ . . Ó @ .
Ì Ó D . ñ Ó D . K Á D . U ° ” . . ´ ” . ç ² ” . ä ³ ” . . ¶ ” .
--------------------------------2017/8/4 11:05:07--------------------------------
A memory block has been leaked. The size is: 20
This block was allocated by thread 0x2D2C, and the stack trace (return addresses) at the time was:
4DB29E54
4DB28419
4DB21AA9
4DB1719F
4DB1A52D
4DB1A537
4DB24D53
775D09AE [Unknown function at RtlpNtEnumerateSubKey]
775D1958 [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
The block is currently used for an object of class: Unknown
The allocation number is: 48515
Current memory dump of 256 bytes starting at pointer address 7ED56040:
E4 6B 1B 01 80 80 80 80 30 95 CE 7E 80 80 80 80 0F 6E 3C 7F 80 80 80 80 00 00 00 00 E1 67 D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1A BF 00 00 3A A9 41 00 0F 73 40 00 07 D3 40 00
CC D3 44 00 F1 D3 44 00 4B C1 44 00 55 B0 94 00 0D B4 94 00 E7 B2 94 00 E4 B3 94 00 1D B6 94 00
2C 2D 00 00 2C 2D 00 00 EE 72 40 00 A4 D5 40 00 CD D1 40 00 27 D5 94 00 73 87 40 00 4E AF 94 00
73 87 40 00 10 C2 94 00 45 8E 40 00 73 87 40 00 F0 9D 94 00 10 00 00 00 00 00 00 00 F6 76 66 87
E4 6B 1B 01 80 80 80 80 80 80 80 80 80 80 80 80 09 89 99 78 80 80 80 80 00 00 00 00 21 4B D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FC BE 00 00 D3 85 40 00 FA 8D 40 00 72 9C 94 00
02 B4 94 00 E7 B2 94 00 E4 B3 94 00 1D B6 94 00 FE AA 94 00 8E AB 94 00 3E AC 94 00 57 B3 B6 00
ä k . . € € € € 0 • Î ~ € € € € . n < € € € € . . . . á g Õ ~
. . . . . . . . . . . . . . . . . ¿ . . : © A . . s @ . . Ó @ .
Ì Ó D . ñ Ó D . K Á D . U ° ” . . ´ ” . ç ² ” . ä ³ ” . . ¶ ” .
, - . . , - . . î r @ . ¤ Õ @ . Í Ñ @ . ' Õ ” . s ‡ @ . N ¯ ” .
s ‡ @ . . Â ” . E @ . s ‡ @ . ğ ” . . . . . . . . . ö v f ‡
ä k . . € € € € € € € € € € € € . ‰ ™ x € € € € . . . . ! K Õ ~
. . . . . . . . . . . . . . . . ü ¾ . . Ó … @ . ú @ . r œ ” .
. ´ ” . ç ² ” . ä ³ ” . . ¶ ” . ş ª ” . « ” . > ¬ ” . W ³ ¶ .
--------------------------------2017/8/4 11:05:07--------------------------------
A memory block has been leaked. The size is: 20
This block was allocated by thread 0x2D2C, and the stack trace (return addresses) at the time was:
4DB29E54
4DB28419
4DB21AA9
4DB1719F
4DB1A52D
4DB1A537
4DB33770
4DB1B273
775D09AE [Unknown function at RtlpNtEnumerateSubKey]
775D1958 [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
The block is currently used for an object of class: Unknown
The allocation number is: 48497
Current memory dump of 256 bytes starting at pointer address 7ED567C0:
E4 6B 1B 01 80 80 80 80 30 95 CE 7E 80 80 80 80 4D E3 E6 A8 80 80 80 80 00 00 00 00 A1 61 D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 21 BF 00 00 D3 85 40 00 FA 8D 40 00 72 9C 94 00
02 B4 94 00 E7 B2 94 00 E4 B3 94 00 1D B6 94 00 F5 B4 94 00 2F B6 94 00 69 B4 94 00 E7 B2 94 00
2C 2D 00 00 2C 2D 00 00 F1 85 40 00 45 8E 40 00 06 9E 94 00 73 87 40 00 30 AF 94 00 73 87 40 00
10 C2 94 00 45 8E 40 00 73 87 40 00 F0 9D 94 00 73 87 40 00 14 00 00 00 48 3F 94 00 CF 81 3C 89
E4 6B 1B 01 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 30 7E C3 76 00 00 00 00 C1 69 D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 C9 86 00 00 D2 72 40 00 DF A5 40 00 6C AA 40 00
7C 1B 4C 00 2F 42 4C 00 E6 9D 67 00 D7 BF 68 00 EC 53 93 00 04 AC 4C 00 31 AE 4C 00 EE 72 40 00
ä k . . € € € € 0 • Î ~ € € € € M ã æ ¨ € € € € . . . . ¡ a Õ ~
. . . . . . . . . . . . . . . . ! ¿ . . Ó … @ . ú @ . r œ ” .
. ´ ” . ç ² ” . ä ³ ” . . ¶ ” . õ ´ ” . / ¶ ” . i ´ ” . ç ² ” .
, - . . , - . . ñ … @ . E @ . . ” . s ‡ @ . 0 ¯ ” . s ‡ @ .
. Â ” . E @ . s ‡ @ . ğ ” . s ‡ @ . . . . . H ? ” . Ï < ‰
ä k . . € € € € € € € € € € € € € € € € 0 ~ Ã v . . . . Á i Õ ~
. . . . . . . . . . . . . . . . É † . . Ò r @ . ß ¥ @ . l ª @ .
| . L . / B L . æ g . × ¿ h . ì S “ . . ¬ L . 1 ® L . î r @ .
--------------------------------2017/8/4 11:05:07--------------------------------
A memory block has been leaked. The size is: 20
This block was allocated by thread 0x2D2C, and the stack trace (return addresses) at the time was:
4DB29E54
4DB28419
4DB21AA9
4DB1719F
4DB1A52D
4DB1A537
4DB2440C
775D09AE [Unknown function at RtlpNtEnumerateSubKey]
775D1958 [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
The block is currently used for an object of class: Unknown
The allocation number is: 48513
Current memory dump of 256 bytes starting at pointer address 7ED56AE0:
E4 6B 1B 01 80 80 80 80 30 95 CE 7E 80 80 80 80 8C 6C 3C 7F 80 80 80 80 00 00 00 00 C1 6E D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6D 95 00 00 D2 72 40 00 D3 85 40 00 FA 8D 40 00
44 87 40 00 4D 87 40 00 C3 BB D3 00 64 9F D3 00 BA AC D3 00 50 09 D3 00 88 09 D3 00 49 2A D3 00
2C 2D 00 00 2C 2D 00 00 EE 72 40 00 F1 85 40 00 45 8E 40 00 7D F5 4B 00 73 87 40 00 C5 B5 D3 00
73 87 40 00 BD 00 D4 00 F6 00 D4 00 D4 9F 40 00 4F 3E 19 01 14 00 00 00 E0 D1 D2 00 0D 28 44 8B
E4 6B 1B 01 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 F2 D7 BB 74 00 00 00 00 C1 55 D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 09 BF 00 00 D3 85 40 00 FA 8D 40 00 33 74 43 00
DC 85 40 00 FA 8D 40 00 18 A1 94 00 3F BC 94 00 16 B4 94 00 E7 B2 94 00 E4 B3 94 00 1D B6 94 00
ä k . . € € € € 0 • Î ~ € € € € Œ l < € € € € . . . . Á n Õ ~
. . . . . . . . . . . . . . . . m • . . Ò r @ . Ó … @ . ú @ .
D ‡ @ . M ‡ @ . Ã » Ó . d Ÿ Ó . º ¬ Ó . P . Ó . ˆ . Ó . I * Ó .
, - . . , - . . î r @ . ñ … @ . E @ . } õ K . s ‡ @ . Å µ Ó .
s ‡ @ . ½ . Ô . ö . Ô . Ô Ÿ @ . O > . . . . . . à Ñ Ò . . ( D ‹
ä k . . € € € € € € € € € € € € € € € € ò × » t . . . . Á U Õ ~
. . . . . . . . . . . . . . . . . ¿ . . Ó … @ . ú @ . 3 t C .
Ü … @ . ú @ . . ¡ ” . ? ¼ ” . . ´ ” . ç ² ” . ä ³ ” . . ¶ ” .
--------------------------------2017/8/4 11:05:07--------------------------------
A memory block has been leaked. The size is: 20
This block was allocated by thread 0x2D2C, and the stack trace (return addresses) at the time was:
4DB29E54
4DB28419
4DB21AA9
4DB1A52D
4DB1A537
4DB1B86F
775D09AE [Unknown function at RtlpNtEnumerateSubKey]
775D1958 [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
7758A863 [Unknown function at RtlUlonglongByteSwap]
The block is currently used for an object of class: Unknown
The allocation number is: 48499
Current memory dump of 256 bytes starting at pointer address 7ED56D60:
E4 6B 1B 01 80 80 80 80 30 95 CE 7E 80 80 80 80 CA E2 43 55 80 80 80 80 00 00 00 00 41 76 D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 64 93 00 00 D2 72 40 00 D3 85 40 00 FA 8D 40 00
8A 08 B6 00 15 F0 B5 00 9F 8A B5 00 B1 7B B5 00 88 6B AF 00 B7 80 A5 00 52 6D AF 00 80 23 A5 00
2C 2D 00 00 2C 2D 00 00 EE 72 40 00 F1 85 40 00 45 8E 40 00 66 87 40 00 73 87 40 00 8B 61 A6 00
73 87 40 00 A2 F6 A5 00 4C CD A5 00 8E C7 44 00 FC 0C CE 76 14 00 00 00 28 50 B6 00 8A C5 56 00
E4 6B 1B 01 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 75 3A A9 FF 00 00 00 00 01 7A D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1E 90 00 00 D2 72 40 00 D3 85 40 00 FA 8D 40 00
76 E4 DC 00 4E 0E DC 00 57 EB DB 00 1C CF E4 00 85 AA DB 00 D4 B1 E4 00 15 0B E5 00 9F 0E E5 00
ä k . . € € € € 0 • Î ~ € € € € Ê â C U € € € € . . . . A v Õ ~
. . . . . . . . . . . . . . . . d “ . . Ò r @ . Ó … @ . ú @ .
Š . ¶ . . ğ µ . Ÿ Š µ . ± { µ . ˆ k ¯ . · € ¥ . R m ¯ . € # ¥ .
, - . . , - . . î r @ . ñ … @ . E @ . f ‡ @ . s ‡ @ . ‹ a ¦ .
s ‡ @ . ¢ ö ¥ . L Í ¥ . Ç D . ü . Î v . . . . ( P ¶ . Š Å V .
ä k . . € € € € € € € € € € € € € € € € u : © ÿ . . . . . z Õ ~
. . . . . . . . . . . . . . . . . . . Ò r @ . Ó … @ . ú @ .
v ä Ü . N . Ü . W ë Û . . Ï ä . … ª Û . Ô ± ä . . . å . Ÿ . å .
--------------------------------2017/8/4 11:05:07--------------------------------
A memory block has been leaked. The size is: 20
This block was allocated by thread 0x2D2C, and the stack trace (return addresses) at the time was:
4DB29E54
4DB28419
4DB21AA9
4DB1A52D
4DB1A537
4DB1AEC1
775D09AE [Unknown function at RtlpNtEnumerateSubKey]
775D09AE [Unknown function at RtlpNtEnumerateSubKey]
775D1958 [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
The block is currently used for an object of class: Unknown
The allocation number is: 48488
Current memory dump of 256 bytes starting at pointer address 7ED57F80:
E4 6B 1B 01 80 80 80 80 30 95 CE 7E 80 80 80 80 44 79 3F 55 80 80 80 80 00 00 00 00 C1 5A D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 86 00 00 D2 72 40 00 D3 85 40 00 FA 8D 40 00
44 87 40 00 4E 01 4C 00 C9 81 8B 00 04 AC 4C 00 31 AE 4C 00 EE 72 40 00 99 A6 40 00 06 B1 4C 00
2C 2D 00 00 2C 2D 00 00 EE 72 40 00 F1 85 40 00 45 8E 40 00 7D F5 4B 00 73 87 40 00 A2 01 4C 00
73 87 40 00 4A 87 8B 00 45 87 4D 00 E4 81 4D 00 AA 8C 55 00 14 00 00 00 18 94 49 00 26 54 B7 85
E4 6B 1B 01 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 D9 AB 48 7A 00 00 00 00 E1 80 D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 15 90 00 00 D2 72 40 00 D3 85 40 00 FA 8D 40 00
44 87 40 00 67 B5 55 00 6B 81 55 00 9C E9 55 00 5D EA 55 00 B1 9E 55 00 EE 59 56 00 1D 3D E4 00
ä k . . € € € € 0 • Î ~ € € € € D y ? U € € € € . . . . Á Z Õ ~
. . . . . . . . . . . . . . . . . † . . Ò r @ . Ó … @ . ú @ .
D ‡ @ . N . L . É ‹ . . ¬ L . 1 ® L . î r @ . ™ ¦ @ . . ± L .
, - . . , - . . î r @ . ñ … @ . E @ . } õ K . s ‡ @ . ¢ . L .
s ‡ @ . J ‡ ‹ . E ‡ M . ä M . ª Œ U . . . . . . ” I . & T · …
ä k . . € € € € € € € € € € € € € € € € Ù « H z . . . . á € Õ ~
. . . . . . . . . . . . . . . . . . . Ò r @ . Ó … @ . ú @ .
D ‡ @ . g µ U . k U . œ é U . ] ê U . ± U . î Y V . . = ä .
--------------------------------2017/8/4 11:05:07--------------------------------
A memory block has been leaked. The size is: 20
This block was allocated by thread 0x2D2C, and the stack trace (return addresses) at the time was:
4DB29E54
4DB28419
4DB21AA9
4DB1719F
4DB1A52D
4DB1A537
4DB1BD19
775D09AE [Unknown function at RtlpNtEnumerateSubKey]
775D1958 [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
775D193C [Unknown function at RtlpNtEnumerateSubKey]
The block is currently used for an object of class: Unknown
The allocation number is: 48500
Current memory dump of 256 bytes starting at pointer address 7ED5A6E0:
E4 6B 1B 01 80 80 80 80 30 95 CE 7E 80 80 80 80 8C B7 3C 7F 80 80 80 80 00 00 00 00 C1 A5 D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 56 8F 00 00 D2 72 40 00 D3 85 40 00 FA 8D 40 00
02 E2 CE 00 72 C5 40 00 77 CD CE 00 EF 38 CF 00 0E 5D D3 00 1A 80 D9 00 CE 6E D9 00 1F C8 DF 00
2C 2D 00 00 2C 2D 00 00 EE 72 40 00 F1 85 40 00 45 8E 40 00 8B E2 CE 00 73 87 40 00 09 CE CE 00
73 87 40 00 63 3A CF 00 73 87 40 00 EA 6F D9 00 9C A8 41 00 14 00 00 00 80 C6 CE 00 CA C0 85 8B
E4 6B 1B 01 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 35 3F 7A 74 00 00 00 00 41 A8 D5 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3E 8F 00 00 D2 72 40 00 DF A5 40 00 6C AA 40 00
7C 1B 4C 00 41 15 58 00 A8 6E D9 00 1F C8 DF 00 70 BC FC 00 75 87 FA 00 C1 3B F8 00 37 10 0B 01
ä k . . € € € € 0 • Î ~ € € € € Œ · < € € € € . . . . Á ¥ Õ ~
. . . . . . . . . . . . . . . . V . . Ò r @ . Ó … @ . ú @ .
. â Î . r Å @ . w Í Î . ï 8 Ï . . ] Ó . . € Ù . Î n Ù . . È ß .
, - . . , - . . î r @ . ñ … @ . E @ . ‹ â Î . s ‡ @ . . Î Î .
s ‡ @ . c : Ï . s ‡ @ . ê o Ù . œ ¨ A . . . . . € Æ Î . Ê À … ‹
ä k . . € € € € € € € € € € € € € € € € 5 ? z t . . . . A ¨ Õ ~
. . . . . . . . . . . . . . . . > . . Ò r @ . ß ¥ @ . l ª @ .
| . L . A . X . ¨ n Ù . . È ß . p ¼ ü . u ‡ ú . Á ; ø . 7 . . .
--------------------------------2017/8/4 11:05:07--------------------------------
A memory block has been leaked. The size is: 212
This block was allocated by thread 0x2D2C, and the stack trace (return addresses) at the time was:
4DB29E54
4DB28419
4DB2C134
4DB2B02D
4DB2C08F
4DB3319B
4DB332B1
4DAE11A9
77539364 [Unknown function at RtlQueryEnvironmentVariable]
7755A870 [Unknown function at LdrRemoveLoadAsDataTable]
7755A84F [Unknown function at LdrRemoveLoadAsDataTable]
The block is currently used for an object of class: Unknown
The allocation number is: 154459
Current memory dump of 256 bytes starting at pointer address 7EF42890:
F4 B2 B4 4D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 A1 75 BE A9 80 80 80 80 80 80 80 80 80 80 80 80 00 00 00 00 D1 1F F4 7E
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 C6 00 00 54 9E B2 4D 19 84 B2 4D 3B F1 B0 4D
ô ² ´ M . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . ¡ u ¾ © € € € € € € € € € € € € . . . . Ñ . ô ~
. . . . . . . . . . . . . . . . 5 Æ . . T ² M . „ ² M ; ñ ° M
--------------------------------2017/8/4 11:05:07--------------------------------
This application has leaked memory. The small block leaks are (excluding expected leaks registered by pointer):
13 - 20 bytes: Unknown x 8
21 - 36 bytes: UnicodeString x 1
37 - 52 bytes: UnicodeString x 1
53 - 68 bytes: Unknown x 1
69 - 84 bytes: TParam x 1
181 - 212 bytes: Unknown x 1
Note: Memory leak detail is logged to a text file in the same folder as this application. To disable this memory leak check, undefine "EnableMemoryLeakReporting".
Anladığım kadarıyla hatanın FindVariables metodundan geldiğini söylüyor ve onun da içeriği şu şekilde:
function FindVariables(const SQL: string; IncludeDuplicates: Boolean): TStringList; var s: string; //s: widestring; i: Integer; Mode: char; //VarName, EndC, x: WideString; VarName, EndC, x: string; VarPos: Integer; begin Result := TStringList.Create; s := SQL + #13#10; Mode := 'S'; EndC := ''; VarPos := 0; for i := 1 to Length(s) do begin case Mode of 'S': begin if s[i] = ':' then begin Mode := 'V'; VarName := ''; VarPos := i; end; if (s[i] = '''') then begin Mode := 'Q'; EndC := ''''; end; if (s[i] = '/') and (s[i + 1] = '*') then begin Mode := 'C'; EndC := '*/'; end; if (s[i] = '-') and (s[i + 1] = '-') then begin Mode := 'C'; EndC := #13#10; end; end; 'V': begin //if (s[i] <= #255) and not(char(s[i]) in ['a' .. 'z', 'A' .. 'Z', '0' .. '9', '_', '#', '$', #128 .. #255]) then if (s[i] <= #255) and (not CharInSet(s[i], ['a' .. 'z', 'A' .. 'Z', '0' .. '9', '_', '#', '$', #128 .. #255])) then begin //VarName := UpperCase(VarName); //VarName := AnsiUpperCase(VarName); if (VarName <> '') and (IncludeDuplicates or (Result.IndexOf(VarName) < 0)) then Result.Add(VarName); //Result.AddObject(VarName, TObject(VarPos)); Mode := 'S'; end else begin x := s[i]; VarName := VarName + x; end; end; 'C': if (s[i] = EndC[1]) and (s[i + 1] = EndC[2]) then Mode := 'S'; 'Q': if (s[i] = EndC[1]) then Mode := 'S'; end; end; end;
Sorunla ilgili fikir verebilecek, yol gösterebilecek arkadaşlara şimdiden teşekkür ederim.