±â¼ú ÀÚ·á: 315682 - ¸¶Áö¸· °ËÅä: 2007³â 4¿ù 26ÀÏ ¸ñ¿äÀÏ - ¼öÁ¤: 1.2

HOWTO: Visual Studio .NET¿¡¼­ Àü¿ª ¾î¼Àºí¸® ij½Ã¿¡ ¾î¼Àºí¸® ¼³Ä¡

½Ã½ºÅÛ ÆÁº» ¹®¼­ÀÇ ³»¿ëÀº ±ÍÇϰ¡ »ç¿ëÇÏ´Â ¿î¿µ üÁ¦¿Í ´Ù¸¥ ¿î¿µ üÁ¦¿¡ ÇØ´çÇÕ´Ï´Ù. ¹®¼­ ³»¿ë Áß ±ÍÇÏ¿Í °ü·Ã ¾ø´Â ºÎºÐÀº Ç¥½ÃµÇÁö ¾Ê½À´Ï´Ù.
ÀÌ ¹®¼­´Â ÀÌÀü¿¡ ´ÙÀ½ ID·Î ÃâÆÇµÇ¾úÀ½: KR315682

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

¸ðµÎ È®´ë | ¸ðµÎ Ãà¼Ò

¿ä¾à

ÀÌ ¹®¼­¿¡¼­´Â ¾î¼Àºí¸®¿¡ ´ëÇØ °­·ÂÇÑ À̸§À» »ý¼ºÇϰí Àü¿ª ¾î¼Àºí¸® ij½Ã¿¡ .dll ÆÄÀÏÀ» ¼³Ä¡ÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÕ´Ï´Ù. Àü¿ª ¾î¼Àºí¸® ij½Ã(GAC)¸¦ »ç¿ëÇÏ¸é ¿©·¯ ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼­ ¾î¼Àºí¸®¸¦ °øÀ¯ÇÒ ¼ö ÀÖ½À´Ï´Ù. GAC´Â .NET ·±Å¸ÀÓ°ú ÇÔ²² ÀÚµ¿À¸·Î ¼³Ä¡µË´Ï´Ù. ±¸¼º ¿ä¼Ò´Â ´ë°³ C:\WINNT\Assembly¿¡ ÀúÀåµË´Ï´Ù.

GAC¿¡ ¾î¼Àºí¸®¸¦ ¼³Ä¡ÇÏ·Á¸é ¾î¼Àºí¸®¿¡ °­·ÂÇÑ(Áï, Àü¿ªÀ¸·Î °íÀ¯ÇÑ) À̸§À» ºÎ¿©ÇØ¾ß ÇÕ´Ï´Ù. ½ÇÁ¦·Î À̰ÍÀº À̸§ÀÌ ¾Æ´Ï¶ó ¾Ïȣȭ ÇØ½Ã Ű ¶Ç´Â ¼­¸í¿¡ ÇØ´çÇÕ´Ï´Ù. °­·ÂÇÑ À̸§Àº ¿Ã¹Ù¸¥ ±¸¼º ¿ä¼Ò ¹öÀü °ü¸®¸¦ º¸ÀåÇÏ¿© µ¿ÀÏÇÑ À̸§À» °¡Áø ±¸¼º ¿ä¼ÒµéÀÌ ¼­·Î Ãæµ¹Çϰųª ¼Ò¸ð¼ºÀÌ ³ôÀº ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼­ À߸ø »ç¿ëµÇ´Â °ÍÀ» ¹æÁöÇÏ´Â µ¥ µµ¿òÀÌ µË´Ï´Ù.

¿ä±¸ »çÇ×

´ÙÀ½Àº ±ÇÀåµÇ´Â Çϵå¿þ¾î, ¼ÒÇÁÆ®¿þ¾î, ³×Æ®¿öÅ© ÀÎÇÁ¶ó, ±â¼ú°ú Áö½Ä ¹× ÇÊ¿äÇÑ ¼­ºñ½º ÆÑÀÔ´Ï´Ù.
  • °øÀ¯ ¾î¼Àºí¸®°¡ ¼³Ä¡µÉ ÄÄÇ»ÅÍ¿¡ ´ëÇÑ °ü¸®ÀÚ ±ÇÇÑ
ÇÊ¿äÇÑ »çÀü Áö½Ä:
  • .NETÀÇ ¾î¼Àºí¸®¿¡ ´ëÇÑ ÀÏ¹Ý Áö½Ä
  • ¸í·ÉÁÙ ÇÁ·ÒÇÁÆ®¿¡¼­ µµ±¸¸¦ »ç¿ëÇÏ´Â ¹æ¹ý¿¡ ´ëÇÑ ÀÏ¹Ý Áö½Ä

Àü¿ª ¾î¼Àºí¸® ij½Ã

Visual Studio .NETÀ» »ç¿ëÇÏ¿© ¼Ò±Ô¸ð Ŭ·¡½º ¶óÀ̺귯¸® ÇÁ·ÎÁ§Æ®¸¦ ¸¸µé°í, °­·ÂÇÑ À̸§À» »ý¼ºÇϰí, ÇÁ·ÎÁ§Æ®ÀÇ .dll ÆÄÀÏÀ» Àü¿ª ¾î¼Àºí¸® ij½Ã¿¡ ¼³Ä¡ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇϽʽÿÀ.
  1. Visual Studio .NETÀ» ¿±´Ï´Ù.
  2. Visual Basic .NET¿¡¼­ GAC¶ó´Â Ŭ·¡½º ¶óÀ̺귯¸® ÇÁ·ÎÁ§Æ®¸¦ »õ·Î ¸¸µì´Ï´Ù.
  3. °­·ÂÇÑ À̸§ÀÌ ÇÊ¿äÇÕ´Ï´Ù. ÀÌ ¾Ïȣȭ Ű ½ÖÀ» »ý¼ºÇÏ·Á¸é .NET Framework SDK(Solution Developer Kit)°¡ ¼³Ä¡µÈ \bin ÇÏÀ§ µð·ºÅ͸®¿¡ ÀÖ´Â SN µµ±¸¸¦ »ç¿ëÇÕ´Ï´Ù. SN µµ±¸´Â »ç¿ëÇϱⰡ ¾ÆÁÖ ½±½À´Ï´Ù. ¸í·ÉÁÙ ¸í·É¹®ÀÇ Çü½ÄÀº ¾Æ·¡¿Í °°½À´Ï´Ù.
    sn -k "C:\[DirectoryToPlaceKey]\[KeyName].snk"
  4. ۸¦ ½±°Ô ã°í ¸í·É ÇÁ·ÒÇÁÆ®¿¡¼­ Ű¿¡ ½±°Ô ¾×¼¼½ºÇÒ ¼ö ÀÖµµ·Ï C:\¿¡ GACDemo µð·ºÅ͸®¸¦ ¸¸µì´Ï´Ù.

    Âü°í: ´ëºÎºÐÀÇ »ç¿ëÀÚÀÇ °æ¿ì .NET µµ±¸´Â C:\Program Files\Microsoft.NET\FrameworkSDK\Bin¿¡ ÀÖ½À´Ï´Ù. ´ÙÀ½ SN ¸í·ÉÀ» ÀÔ·ÂÇϱâ Àü¿¡ ÀÌ¿Í À¯»çÇÑ ÄÄÇ»ÅÍÀÇ °æ·Î¸¦ .NET bin µð·ºÅ͸®¿¡ º¹»çÇϰí, ¸í·É ÇÁ·ÒÇÁÆ®¿¡ cd¸¦ ÀÔ·ÂÇϰí, °æ·Î¸¦ ¸¶¿ì½º ¿À¸¥ÂÊ ´ÜÃß·Î ´­·¯ ºÙ¿© ³ÖÀº ´ÙÀ½ Enter ۸¦ ´­·¯ SN µµ±¸°¡ ÀÖ´Â µð·ºÅ͸®¸¦ º¯°æÇÕ´Ï´Ù.

    ¾Æ·¡¿Í °°ÀÌ ÀÔ·ÂÇÕ´Ï´Ù.
    sn -k "C:\GACDemo\GACkey.snk"
  5. ۰¡ »ý¼ºµÇ¾úÁö¸¸ ¾ÆÁ÷ ÇÁ·ÎÁ§Æ®ÀÇ ¾î¼Àºí¸®¿Í ¿¬°áµÇ¾î ÀÖÁö ¾Ê½À´Ï´Ù. ¿¬°áÇÏ·Á¸é Visual Studio .NET ¼Ö·ç¼Ç Ž»ö±â¿¡¼­ AssemblyInfo.vb ÆÄÀÏÀ» µÎ ¹ø ´©¸¨´Ï´Ù. Visual Studio .NET¿¡¼­ ÇÁ·ÎÁ§Æ®¸¦ ¸¸µé ¶§ ±âº»ÀûÀ¸·Î ÀÌ ÆÄÀÏ¿¡ Æ÷ÇԵǴ ¾î¼Àºí¸® Ư¼º ¸ñ·Ï¿¡ ´ÙÀ½À» Ãß°¡ÇÕ´Ï´Ù.
    <Assembly: AssemblyKeyFile("C:\GACDemo\GACKey.snk")>
    Ctrl+Shift+B¸¦ ´­·¯ ÇÁ·ÎÁ§Æ®¸¦ ÄÄÆÄÀÏÇÕ´Ï´Ù. ÀÌ ¶§ .dll ÆÄÀÏÀ» GAC¿¡ ¼³Ä¡ÇÏ´Â µ¥ Äڵ尡 ´õ ÀÌ»ó ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù.
  6. Ctrl+Shift+B¸¦ ´­·¯ ÇÁ·ÎÁ§Æ®¸¦ ÄÄÆÄÀÏÇÕ´Ï´Ù. ÀÌ ¶§ .dll ÆÄÀÏÀ» GAC¿¡ ¼³Ä¡ÇÏ´Â µ¥ Äڵ尡 ´õ ÀÌ»ó ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù. Gacutil µµ±¸¸¦ »ç¿ëÇϰųª .dll ÆÄÀÏÀ» ÀûÀýÇÑ µð·ºÅ͸®·Î ²ø¾î .dll ÆÄÀÏÀ» ¼³Ä¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. Gacutil µµ±¸¸¦ »ç¿ëÇÏ´Â °æ¿ì¿¡´Â ¾Æ·¡ÀÇ ¸í·ÉÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
    gacutil -I "C:\[PathToBinDirectoryInVSProject]\gac.dll"
    ÆÄÀÏÀ» ²ø·Á¸é Microsoft Windows Ž»ö±â¸¦ »ç¿ëÇÕ´Ï´Ù. Windows Ž»ö±â¸¦ µÎ °³ ¿±´Ï´Ù. ÇÑ Å½»ö±â¿¡¼­ ÇØ´ç ÄÜ¼Ö ÇÁ·ÎÁ§Æ®¿¡ ´ëÇÑ .dll ÆÄÀÏ Ãâ·Â À§Ä¡¸¦ Ž»öÇÕ´Ï´Ù. ´Ù¸¥ Ž»ö±â¿¡¼­´Â c:\[SystemRoot]\Assembly¸¦ Ž»öÇÕ´Ï´Ù.

    .dll ÆÄÀÏÀ» Æú´õ·Î ²ü´Ï´Ù.

Àüü ÄÚµå ¿¹Á¦(AssemblyInfo.vb)

Imports System.Reflection
Imports System.Runtime.InteropServices

<Assembly: AssemblyTitle("")> 
<Assembly: AssemblyDescription("")> 
<Assembly: AssemblyCompany("")> 
<Assembly: AssemblyProduct("")> 
<Assembly: AssemblyCopyright("")> 
<Assembly: AssemblyTrademark("")> 
<Assembly: CLSCompliant(True)> 
<Assembly: AssemblyKeyFile("C:\GACDemo\GACKey.snk")> 

<Assembly: Guid("E3492A62-5389-4286-94A3-1331CC29EA6D")> 
<Assembly: AssemblyVersion("1.0.*")> 

È®ÀÎ

  1. Windows Ž»ö±â¸¦ ½ÃÀÛÇÕ´Ï´Ù.
  2. C:\WINNT\assembly¸¦ Ž»öÇÕ´Ï´Ù.
  3. ¼³Ä¡µÇ¾î ÀÖ´Â .dll ÆÄÀÏ ¸ñ·Ï¿¡¼­ GAC¸¦ ã½À´Ï´Ù.

ÂüÁ¶

ÀÚ¼¼ÇÑ ³»¿ëÀ» º¸·Á¸é ´ÙÀ½ Microsoft À¥ »çÀÌÆ®¸¦ ¹æ¹®ÇϽʽÿÀ.
Àü¿ª ¾î¼Àºí¸® ij½Ã·Î ¾î¼Àºí¸® ¼³Ä¡ (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconinstallingassemblyintoglobalassemblycache.asp)

URL ¸µÅ©:http://msdn2.microsoft.com/en-us/library/dkkx7f79(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/dkkx7f79(vs.71).aspx)
Àü¿ª ¾î¼Àºí¸® ij½Ã (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconglobalassemblycache.asp)

URL ¸µÅ©: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconglobalassemblycache.asp
Àü¿ª ¾î¼Àºí¸® ij½Ã µµ±¸ (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cptools/html/cpgrfglobalassemblycacheutilitygacutilexe.asp)

URL ¸µÅ©: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cptools/html/cpgrfglobalassemblycacheutilitygacutilexe.asp




Microsoft Á¦Ç° °ü·Ã ±â¼ú Àü¹®°¡µé°ú ¿Â¶óÀÎÀ¸·Î Á¤º¸¸¦ ±³È¯ÇϽ÷Á¸é Microsoft ´º½º ±×·ì (http://support.microsoft.com/newsgroups/default.aspx) ¿¡ Âü¿©ÇϽñ⠹ٶø´Ï´Ù.

º» ¹®¼­ÀÇ Á¤º¸´Â ´ÙÀ½ÀÇ Á¦Ç°¿¡ Àû¿ëµË´Ï´Ù.
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Visual Studio .NET 2002 Professional Edition
Ű¿öµå:?
kbhowto kbhowtomaster KB315682