»ý¼º µÈ ÆÄÀÏ¿¡ ´ë ÇÑ ¿É¼ÇÀÇ È¿°ú

MYSNAPINÀÔ´Ï´Ù.H ¹× MYSNAPINÀÔ´Ï´Ù.RGS ÆÄÀÏÀº µÎ ¹øÂ° ÆäÀÌÁö¿¡ ÀÖ´Â ¿É¼Ç¿¡ ÀÇÇØ ¿µÇâÀ» ¹Þ´Â À¯ÀÏÇÑ ÆÄÀÏ¡£

MYSNAPINÀÔ´Ï´Ù.H

°¢ ÀÎÅÍÆäÀ̽º¿¡ ÀÖ´Â IExtend * ¶óµð¿À ´ÜÃß ±×·ì¿¡¼­ ¼±Åà ÇÏ´Â ±× ƯÁ¤ ÀÎÅÍÆäÀ̽º¸¦ ¼±¾ðÀ» Ãß°¡ ÇÕ´Ï´Ù CMySnapInComponent Ŭ·¡½º. ¿¹¸¦ µé¾î, Ŭ·¡½ºÀÇ member-wise ÃʱâÈ­¿¡ ´ÙÀ½ ÁÙÀ» Ãß°¡ IExtendControlbar ÀÎÅÍÆäÀ̽º ¼±ÅÃ:

°ø¿ë IExtendControlbarImpllt;CMySnapInComponent & gt

±×¸®°í ´ÙÀ½ ¶óÀÎÀ» CMySnapInComponent ÀÇ COM Áöµµ:

COM_INTERFACE_ENTRY(IExtendControlbar)

ºñ½ÁÇÑ ¼öÁ¤ CMySnapInComponent ¼±Åà Áö ¼Ó¼º Çü½Ä¿¡ ´ë ÇÑ¡£

À§ÀÇ ¼öÁ¤ ¿Ü¿¡ ¼±ÅÃÇÑ Áö ÀÎÅÍÆäÀ̽ºÀÇ ¸ðµç ¸Þ¼­µå´Â MYSNAPIN¿¡ ¼±¾ð µË´Ï´Ù.H. ´ÙÀ½ Äڵ带 Ãß°¡ ÇÏ´Â ¿¹¸¦ µé¾î, IPersistStorage Áö ¼Ó¼º Çü½ÄÀ¸·Î ¼±Åà ÇÏ´Â °æ¿ì:

STDMETHOD(GetClassID)(CLSID *pClassID)
{
 nbsp;? ATLTRACENOTIMPL(_T("CMySnapInComponent::GetClassID"));
}

//additional IPersistStorage ¸Þ¼­µå
...

°¡»ó HRESULT STDMETHODCALLTYPE HandsOffStorage()
{
 ?? ATLTRACENOTIMPL(_T("CMySnapInComponent::HandsOffStorage"));
}(&N)

¼öÁ¤¿¡ ´ë ÇÑ ºñ½ÁÇÕ´Ï´Ù¸¦ CMySnapIn Ŭ·¡½º¡£

º°µµ Ŭ·¡½º ¼±¾ð ISnapInAbout ÀÎÅÍÆäÀ̽º¸¦ ¼±Åà ÇÏ´Â °æ¿ì ( CMySnapInAbout ), ±×¸®°í Ç¥ÁØ ¸Þ¼­µå ¼±¾ð¡£

MYSNAPINÀÔ´Ï´Ù.RGS

½º³ÀÀÎÀº ½º³ÀÀÎ È®Àå ÇÏ´Â °æ¿ì´Â.RGS ÆÄÀÏ ¸¶¹ý»ç¿¡ ÀÇÇØ »ý¼º µÈ ±âº»°ª°ú¿¡¼­ ¾à°£ ´Ù¸¨´Ï´Ù. ƯÈ÷, µÎ ºÎºÐ¿¡ NoRemove MMC ¼½¼Ç È®ÀåµÈ ½º³ÀÀÎ °³Ã¼ ½º³ÀÀÎ È®Àå °³Ã¼°¡ ¿¬°ü ¼öÁ¤¡£

¿¹¸¦ µé¾î, ´ÙÀ½ ¼½¼Ç »ùÇà ±âº» ½º³ÀÀÎ °³Ã¼ÀÇÀÔ´Ï´Ù.RGS ÆÄÀÏ:

NoRemove MMC
 nbsp;? {
 ?????? NoRemove Snapins
 ?????? {
 ?????????? ForceRemove {ACC4CCCD-8C61-11D1-B017-00C04FB99436} =
 ?????????? s 'MySnapIn' {
 ?????????????? ¹ß NameString = s 'MySnapIn'
 ?????????????? ¹ß¿¡ ´ë ÇÑ s '{ACC4CCCE-8C61-11D1-B017-00C04FB99436}' =
 ?????????????? NodeTypes
 ?????????????? {
 ?????????????????? {ACC4CCCF-8C61-11D1-B017-00C04FB99436}
 ?????????????? }
 ?????????????? µ¶¸³ ½ÇÇàÇü
 ?????????? }
 ?????? }
 ?????? NoRemove NodeTypes
 ?????? {
 ?????????? ForceRemove {ACC4CCCF-8C61-11D1-B017-00C04FB99436}
 ?????????? {
 ?????????? }

}
 ?? }(&N)

±×·¯³ª, ½º³ÀÀÎ È®ÀåÀ» À§ÇÑ ¿© NoRemove MMC ¼½¼Ç ´Ù¸¨´Ï´Ù:

NoRemove MMC
    {
        NoRemove Snapins
        {
            ForceRemove {ACC4CCD5-8C61-11D1-B017-00C04FB99436} =
            s 'MySnapInDataExt1' 
            {
                val NameString = s 'MySnapInDataExt1'
                val About = s '{ACC4CCD6-8C61-11D1-B017-00C04FB99436}'
            }
        }
        NoRemove NodeTypes
        {
            NoRemove {}
            {
                NoRemove Extensions
                {
                    NoRemove PropertySheet
                    {
                        val {ACC4CCD5-8C61-11D1-B017-00C04FB99436} =
                        s 'MySnapInDataExt1'
                    }
                    NoRemove ToolBar
                    {
                        val {ACC4CCD5-8C61-11D1-B017-00C04FB99436} =
                        s 'MySnapInDataExt1'
                    }
                }
            }

        }
    }

Index