FIX: ADO 2.5 ½ºÆ®¸² ¹× Record °³Ã¼¸¦ »ç¿ëÇÏ¸é ¸®¼Ò½º ´©¼öµÈ´Ù

±â¼ú ÀÚ·á: 282177 - ÀÌ ¹®¼­°¡ Àû¿ëµÇ´Â Á¦Ç° º¸±â.
¸ðµÎ È®´ë | ¸ðµÎ Ãà¼Ò

ÀÌ ÆäÀÌÁö¿¡¼­

Çö»ó

¶§ ¸¶¼£¸µ µ¥ÀÌÅÍ ·¹ÄÚµå ADO (ActiveX µ¥ÀÌÅÍ °³Ã¼) »ç¿ëÇÏ¿© ÇÁ·Î¼¼½º ¶Ç´Â Stream °³Ã¼, ¸Þ¸ð¸® ´©¼ö°¡ ¹ß»ýÇÒ °á±¹ ¸Þ¸ð¸®°¡ ºÎÁ·ÇÏ¿© ÇÁ·Î¼¼½º¸¦ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸í·É ¹× Recordset °³Ã¼ µîÀÇ ´Ù¸¥ ADO °³Ã¼¿Í ÀÌ ´©¼ö°¡ ¹ß»ýÇÏÁö ¾Ê½À´Ï´Ù.

ÀÌ ´©¼ö´Â Microsoft µ¥ÀÌÅÍ ¾×¼¼½º ±¸¼º ¿ä¼Ò (MDAC) 2.5 ¹ß»ýÇÏÁö¸¸ MDAC 2.6 ¹ß»ýÇÏÁö ¾Ê½À´Ï´Ù.

¿øÀÎ

Record ¹× Stream °³Ã¼¸¦ ATL (¾×Ƽºê ÅÛÇø´ ¶óÀ̺귯¸®) AtlMarshalPtrInProc ÇÔ¼ö¸¦ ´Ù½Ã È£ÃâÀÚ¿¡°Ô ÇÁ·Ï½Ã Á¤º¸¸¦ º¸³»´Â µ¥ »ç¿ëµÇ´Â ½ºÆ®¸²À» ¸¸µé ¼ö ÀÖ½À´Ï´Ù. Record ¹× Stream °³Ã¼°¡ ÆÄ±«µÈ °æ¿ì ¸±¸®½º ÇÔ¼ö´Â »ç¿ëÇÏ¿© ½ºÆ®¸²¿¡¼­ ÀÌ ½ºÆ®¸²¿¡ ÇÒ´çµÈ ¸Þ¸ð¸®¸¦ ÇØÁ¦ÇÏ·Á°í AtlFreeMarshalStream ÇÔ¼ö¸¦ È£ÃâÇÏÁö ¾Ê°í Çʵå¶ó°í ÇÕ´Ï´Ù.

ÇØ°á ¹æ¹ý

MDAC

ÀÌ ¹®Á¦¸¦ ÇØ°áÇÏ·Á¸é Microsoft MDAC 2.5 Ãֽм­ºñ½º ÆÑÀ» ±¸ÇϽʽÿÀ. ÀÚ¼¼ÇÑ ³»¿ëÀº Microsoft ±â¼ú ÀÚ·áÀÇ ´ÙÀ½ ¹®¼­¸¦ ÂüÁ¶ÇϽʽÿÀ.
293312Á¤º¸: ÃֽŠMDAC 2.5 ±¸ÇÏ´Â ¹æ¹ý ¼­ºñ½º ÆÑ
ÀÌ ¼öÁ¤ÀÇ ¿µ¾î ¹öÀüÀº ´ÙÀ½ ÆÄÀÏ Æ¯¼ºÀ» °¡Áý´Ï´Ù ¶Ç´Â ³ªÁß¿¡:
   Date          Version        Size               File name
   ------------------------------------------------------------

   12/14/2000    2.53.6013.0    491,792 bytes      Msado15.dll	
	
				

Windows 2000

ÀÌ ¹®Á¦¸¦ ÇØ°áÇÏ·Á¸é Windows 2000¿ë Ãֽм­ºñ½º ÆÑÀ» ±¸ÇϽʽÿÀ. ÀÚ¼¼ÇÑ ³»¿ëÀº Microsoft ±â¼ú ÀÚ·áÀÇ ´ÙÀ½ ¹®¼­¸¦ ÂüÁ¶ÇϽʽÿÀ.
260910ÃֽŠWindows 2000 ¼­ºñ½º ÆÑÀ» ±¸ÇÏ´Â ¹æ¹ý
ÀÌ ¼öÁ¤ÀÇ ¿µ¾î ¹öÀüÀº ´ÙÀ½ ÆÄÀÏ Æ¯¼ºÀ» °¡Áý´Ï´Ù ¶Ç´Â ³ªÁß¿¡:
   Date        Time    Version       Size       File name
   ----------------------------------------------------------
   5/29/2001   02:56p  2.52.6019.1   487,696    Msado15.dll
				

ÇØ°á ¹æ¹ý

MDAC 2.5ÀÌ ÀÌ ¹®Á¦¿¡ ´ëÇÑ ÇØ°á ¹æ¹ýÀº ¾ø½À´Ï´Ù ÀÖ½À´Ï´Ù.

ÇöÀç »óÅÂ

MDAC

Microsoft´Â ÀÌ ¹®¼­ÀÇ ½ÃÀÛ ºÎºÐ¿¡ ³ª¿­ÇÑ Á¦Ç°¿¡¼­ ¹®Á¦¸¦ È®ÀÎÇß½À´Ï´Ù. ÀÌ ¹®Á¦´Â Microsoft MDAC 2.5 ¼­ºñ½º ÆÑ 3¿¡¼­ óÀ½ ÇØ°áµÇ¾ú½À´Ï´Ù.

MDAC 2.6ÀÌ ÀÌ ¹®Á¦°¡ ¹ß»ýÇÏÁö ¾Ê½À´Ï´Ù.

Windows 2000

Microsoft ¹®Á¦´Â ÀÌ ¹®¼­ÀÇ ½ÃÀÛ ºÎºÐ¿¡ ³ª¿­ÇÑ Á¦Ç°¿¡¼­ ¹®Á¦¸¦ È®ÀÎÇß½À´Ï´Ù. ÀÌ ¹®Á¦´Â Windows 2000 ¼­ºñ½º ÆÑ 3¿¡¼­ óÀ½ ÇØ°áµÇ¾ú½À´Ï´Ù.

Ãß°¡ Á¤º¸

·¹ÄÚµå ¶Ç´Â ½ºÆ®¸² °³Ã¼´Â ¸¶¼£¸µµÈ ÇÁ·Î¼¼½º, Microsoft ÀÎÅÍ³Ý Á¤º¸ ¼­¹ö (IIS) ¹× Microsoft Æ®·£Àè¼Ç ¼­¹ö (MTS) °°Àº À§Ä¡ ȯ°æ¿¡¼­´Â ÁÖ·Î ÀÌ ¸Þ¸ð¸® ´©¼ö°¡ ¹ß»ýÇÏ´Â/COM +. ¿©±â¼­ ÀÌ ¸¶¼£¸µ, µ¶¸³ ½ÇÇàÇü Microsoft Visual Basic ÀÀ¿ë ÇÁ·Î±×·¥ °°Àº ¹ß»ýÇÏÁö ȯ°æ¿¡¼­ ÀÌ ´©¼ö°¡ ¹ß»ýÇÏÁö ¾Ê½À´Ï´Ù.

¹®Á¦¸¦ ÀçÇöÇϱâ À§ÇÑ ´Ü°è

  1. ¾Æ·¡ÀÇ ¿¹Á¦ Äڵ带 ÅØ½ºÆ® ÆÄÀÏ¿¡ ºÙ¿© ¹× "ADODBMem.vbs" À̸§À¸·Î ÀúÀåÇϽʽÿÀ.
  2. ¸í·É ÇÁ·ÒÇÁÆ®¿¡¼­ Windows ½ºÅ©¸³Æ® È£½ºÆ® (CScript.exe°¡)¸¦ »ç¿ëÇÏ¿© ÀÌ ÆÄÀÏÀ» ½ÇÇàÇϽʽÿÀ. ¿¹¸¦ µé¸é:
    cscript ADODBMem.vbs
  3. ¸Þ½ÃÁö°¡ ³ªÅ¸³ª¸é ¼º´É ¸ð´ÏÅÍ (PerfMon)¸¦ ½ÃÀÛÇÏ°í ½ÇÇà CScript¿¡ ´ëÇÑ Àü¿ë ¹ÙÀÌÆ® Ä«¿îÅͰ¡ ¼±ÅÃÇϽʽÿÀ.
  4. ÇØ´ç ½ºÅ©¸³Æ®¿¡ ¹ÝȯÇÏ¿© Ç¥½ÃµÈ ´ë·Î ADO °³Ã¼ ¸¸µå´Â °úÁ¤À» ´Ü°èº°·Î. PerfMon Record ¹× Stream °³Ã¼°¡ ÇÒ´çµÈ ¸Þ¸ð¸® ¾çÀÌ Áõ°¡ÇÏ°í º¸¿© À¯ÀÇÇϽʽÿÀ.

¿¹Á¦ ÄÚµå

'//////////////////////////////////////////////////////////////////////////////////////////////// 
' +
'   File:       adodbmem.vbs
'
'   Copyright:  (c) 2000 Microsoft Corporation
'
'   Contents:   Creates/destroys ADODB objects and allows to see memory usage (leaks).
'
'   Comments:   CScript.exe v2.0 required (comes with Windows 2000; just copy to run under NT4)
'               WScript.exe will NOT work
'
'               Usage: cscript adodbmem.vbs
'               Use PerfMon to see the counter "Private Bytes" in process "cscript"
' -
'//////////////////////////////////////////////////////////////////////////////////////////////// 

Const REPT_CNT = 1000

Private Function CreateOnce(objName, bStop)
  Dim obj
  On Error Resume Next
  If bStop = True Then
    WScript.StdOut.Write  "Create an instance of " & objName & ">"
    WScript.StdIn.ReadLine
  End If
  Set obj = CreateObject(objName)
  If Err.Number <> 0 Then
    WScript.Echo "CreateObject(" & objName &") failed: " & Err.Description
    CreateOnce = False
    Exit Function
  End If
  If bStop = True Then
    WScript.StdOut.Write objName & " created. Destroy>"
    WScript.StdIn.ReadLine
  End If
  Set obj = Nothing
  If bStop = True Then
    WScript.Echo objName & " destroyed."
  End If
  CreateOnce = True
End Function

'//////////////////////////////////////////////////////////////////////////////////////////////// 

Private Sub TryObject(objName)
  Dim i
  WScript.StdOut.Write "Create and destroy " & objName & " " & REPT_CNT & " times>"
  WScript.StdIn.ReadLine
  For i = 1 To REPT_CNT
    If Not CreateOnce(objName, False) Then Exit For
  Next
  WScript.StdOut.Write "Done. "
End Sub

'//////////////////////////////////////////////////////////////////////////////////////////////// 

Private Sub ShowVersion
  Dim sVer
  Dim o
  Set o = CreateObject("ADODB.Connection")
  sVer = o.Version
  Set o = Nothing
  WScript.StdOut.Write "ADODB version " & sVer & " loaded. Hit Enter to start>"
  WScript.StdIn.ReadLine
End Sub

'//////////////////////////////////////////////////////////////////////////////////////////////// 

Public sub Main()
  WScript.StdOut.Write "ADODB memory leak test." & vbNewLine & _
                "Connect Perfmon: process - cscript, counters - Private Bytes." & vbNewLine & _
                "Hit Enter then ready>"
  WScript.StdIn.ReadLine
  ShowVersion

  TryObject "ADODB.Command"
  TryObject "ADODB.Stream"
  TryObject "ADODB.Recordset"
  TryObject "ADODB.Record"

  WScript.StdOut.Write "All Done. Hit Enter to exit>"
  WScript.StdIn.ReadLine
End sub

Call Main()
Wscript.Quit 0

'//////////////////////////////////////////////////////////////////////////////////////////////// 
'                                  End of file "adodbmem.vbs"
'//////////////////////////////////////////////////////////////////////////////////////////////// 

				

¼Ó¼º

±â¼ú ÀÚ·á: 282177 - ¸¶Áö¸· °ËÅä: 2005³â 9¿ù 26ÀÏ ¿ù¿äÀÏ - ¼öÁ¤: 3.2
º» ¹®¼­ÀÇ Á¤º¸´Â ´ÙÀ½ÀÇ Á¦Ç°¿¡ Àû¿ëµË´Ï´Ù.
  • Microsoft Data Access Components 2.5 ¼­ºñ½º ÆÑ 1
  • Microsoft Data Access Components 2.5
Ű¿öµå:?
kbmt kbhotfixserver kbqfe kbmdac250sp3fix kbado260fix kbbug kbfix kbmdac260fix kbwin2000sp3fix KB282177 KbMtko
±â°è ¹ø¿ªµÈ ¹®¼­
Áß¿ä: º» ¹®¼­´Â Àü¹® ¹ø¿ª°¡°¡ ¹ø¿ªÇÑ °ÍÀÌ ¾Æ´Ï¶ó Microsoft ±â°è ¹ø¿ª ¼ÒÇÁÆ®¿þ¾î·Î ¹ø¿ªÇÑ °ÍÀÔ´Ï´Ù. Microsoft´Â ¹ø¿ª°¡°¡ ¹ø¿ªÇÑ ¹®¼­ ¹× ±â°è ¹ø¿ªµÈ ¹®¼­¸¦ ¸ðµÎ Á¦°øÇϹǷΠMicrosoft ±â¼ú ÀÚ·á¿¡ ÀÖ´Â ¸ðµç ¹®¼­¸¦ Çѱ۷ΠÁ¢ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª ±â°è ¹ø¿ª ¹®¼­°¡ Ç×»ó ¿Ïº®ÇÑ °ÍÀº ¾Æ´Õ´Ï´Ù. µû¶ó¼­ ±â°è ¹ø¿ª ¹®¼­¿¡´Â ¸¶Ä¡ ¿Ü±¹ÀÎÀÌ Çѱ¹¾î·Î ¸»ÇÒ ¶§ ½Ç¼ö¸¦ ÇÏ´Â °Íó·³ ¾îÈÖ, ±¸¹® ¶Ç´Â ¹®¹ý¿¡ ¿À·ù°¡ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù. Microsoft´Â ³»¿ë»óÀÇ ¿À¿ª ¶Ç´Â Microsoft °í°´ÀÌ ÀÌ·¯ÇÑ ¿À¿ªÀ» »ç¿ëÇÔÀ¸·Î½á ¹ß»ýÇÏ´Â ºÎ Á¤È®¼º, ¿À·ù ¶Ç´Â ¼ÕÇØ¿¡ ´ëÇØ Ã¥ÀÓÀ» ÁöÁö ¾Ê½À´Ï´Ù. Microsoft´Â ÀÌ·¯ÇÑ ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇØ ±â°è ¹ø¿ª ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÚÁÖ ¾÷µ¥ÀÌÆ®Çϰí ÀÖ½À´Ï´Ù.

Çǵå¹é º¸³»±â