·Î±×ÀÎ | ȸ¿ø°¡ÀÔ (´º½º·¹ÅͽÅû) | SITEMAP
   
  °³¹ß   Ç÷§Æû   ½Ã½ºÅÛ   ¸Å´ÏÁö¸ÕÆ®   Àüü±â»ç  
ÀÚ¹Ù
´å³Ý
C/C++
DB
¸ðµ¨¸µ
À¥°³¹ß
±âŸ
À¯´Ð½º/¸®´ª½º
À©µµ¿ì
±âŸ
¼­¹ö
³×Æ®¿öÅ©
º¸¾È
±âŸ
BM
PM
±âŸ
 
   
 
 
   
 
 
±â»çÀúÀå
0
 
¸¶ÀÌ ½ºÅ©·¦
´å³Ý WMI¸¦ ÅëÇÑ OS¿ÍÀÇ »óÈ£ ±³·ù

Tony Patton ( Builder.com )   2005/10/04  
Micronet
[Áöµð³ÝÄÚ¸®¾Æ]ÀÌÁ¨ ´å³Ý ÇÁ·¹ÀÓ¿öÅ©°¡ »õ·Î¿ï °Íµµ ¾øÁö¸¸ ÇÊÀÚ´Â ¼Ö·ç¼Ç °³¹ß½Ã ´å³ÝÀÇ ÆÄ¿ö¿¡ Áö¼ÓÀûÀ¸·Î ¸¸Á·Çϰí ÀÖ´Ù. ÇÊÀÚÀÇ °ü½ÉÀ» ²ô´Â ±â´É Áß Çϳª´Â WMI(Windows Management Instrumentation) ¼­ºñ½ºÀÌ´Ù. ±âº»ÀûÀ¸·Î WMI´Â ÇϺΠ¿î¿µÃ¼Á¦(À©µµ¿ìXPÀ̱ä ÇÏÁö¸¸ À©µµ¿ì 2000 µîµµ °¡´É)¿Í »óÈ£ µ¿ÀÛÇÏ´Â µ¥ ÇÊ¿äÇÑ ¸Å°³Ã¼¸¦ Á¦°øÇÑ´Ù. ¿¹Àü¿£ ±×·± ±â´ÉÀÌ ÇÊ¿äÇϸé, À©µµ¿ì API(Application Programming Interface)·Î ´«À» µ¹¸®´Â ¼ö¹Û¿£ ¾ø¾ú´Ù. ±×·¯´Ï WMI´Â ÃູÀÎ ¼ÀÀÌ´Ù.

WMI´Â °ü¸® ±â´ÉÀ» Á¦°øÇÑ´Ù. À©µµ¿ì XP´Â ¹°·Ð ÀÌÀü À©µµ¿ì ¹öÀü¿¡¼­µµ ÀÌ¿ë °¡´ÉÇÏ´Ù. ´Ù¸¸ ÀÌÀü ¹öÀü À©µµ¿ì¿¡¼­´Â ±â´ÉÀ» ¸ðµÎ ÀÌ¿ëÇÒ ¼ø ¾øÁö¸¸ ¾î´À Á¤µµ´Â ¾µ ¼ö ÀÖ´Ù. System.Environment.dll ÆÄÀÏÀÌ WMI ±â´ÉÀ» Á¦°øÇϸç, µû¶ó¼­ WMI¸¦ »ç¿ëÇÏ·Á¸é ÀÌ ÆÄÀÏÀº ´å³Ý ¾ÖÇø®ÄÉÀ̼ǿ¡ ÂüÁ¶·Î¼­ Ãß°¡µÅ¾ß ÇÑ´Ù. ¶ÇÇÑ WMI´Â ÇϺΠȯ°æ°ú µ¿ÀÛÇϱâ À§ÇØ COMÀ» ÀÌ¿ëÇÑ´Ù.

WMI ÇÁ·Î¹ÙÀÌ´õ´Â WMI¸¦ °ÅÃÄ ÀÌ¿ëµÇ´Â ³×ÀÌÆ¼ºê À©µµ¿ì API Äڵ带 °¨½Î°í ÀÖ´Ù. ÇÁ·Î¹ÙÀÌ´õ´Â WMI ¿ÀºêÁ§Æ® ¸Å´ÏÀú¿¡ ÀÇÇØ ÀÌ¿ëµÈ´Ù. ÇϺÎÀÇ ³×ÀÌÆ¼ºê API¸¦ ÀÌ¿ëÇÒ Çʿ䰡 ÀÖ´Ù¸é System.Environment ³×ÀÓ½ºÆäÀ̽º¸¦ °ÅÃÄ WMI ¿ÀºêÁ§Æ® ¸Å´ÏÀú¸¦ ÀÌ¿ëÇØ ÀÛ¾÷ÇÑ´Ù.

´å³Ý ÇÁ·¹ÀÓ¿öÅ©¿¡´Â °øÅë ÀÛ¾÷À» ¼öÇàÇÏ´Â µ¥ »ç¿ëµÇ´Â ´Ù¾çÇÑ WMI ÇÁ·Î¹ÙÀÌ´õ°¡ Æ÷ÇԵŠÀÖ´Ù. ÇÁ·Î¹ÙÀÌ´õÀÇ ¿¹¸¦ ¾Æ·¡¿¡ ¸î °¡Áö ³ª¿­Çß´Ù.

* ¾×Ƽºê µð·ºÅ丮 ÇÁ·Î¹ÙÀÌ´õ: ¾×Ƽºê µð·ºÅ丮¿¡ Á¢±ÙÀ» Çã¿ëÇÑ´Ù. ÀÌ ÇÁ·Î¹ÙÀÌ´õ´Â À©µµ¿ì 2000ºÎÅÍ Áö¿øµÈ´Ù.

* ¼³Á¤ ÇÁ·Î¹ÙÀÌ´õ: »ç¿ëÀÚµéÀÌ ´å³Ý CLR(Common Language Runtime)À» ¼³Á¤ÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù. ´å³Ý ÇÁ·¹ÀÓ¿öÅ©¿¡ Æ÷ÇԵǾî ÀÖ´Ù.

* µð½ºÅ© ÄõŸ ÇÁ·Î¹ÙÀÌ´õ: µð½ºÅ© ÄõŸ¸¦ Á¦¾îÇÒ ¼ö ÀÖ°Ô ÇÑ´Ù. XPºÎÅÍ Áö¿øµÈ´Ù.

* À̺¥Æ® ·Î±× ÇÁ·Î¹ÙÀÌ´õ: À̺¥Æ® ·Î±×(Event Log)¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù. NT À̻󿡼­ Áö¿øµÈ´Ù.

* ¼º´É Ä«¿îÅÍ ÇÁ·Î¹ÙÀÌ´õ: ¼º´É Ä«¿îÅÍ¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù. 2000ºÎÅÍ Áö¿øµÈ´Ù.

* ½Ã½ºÅÛ ·¹Áö½ºÆ®¸® ÇÁ·Î¹ÙÀÌ´õ: ·¹Áö½ºÆ®¸®(Registry)¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù. NTºÎÅÍ Áö¿øµÈ´Ù.

* Win32 ÇÁ·Î¹ÙÀÌ´õ: ȯ°æ º¯¼ö¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù. 2000ºÎÅÍ Áö¿øµÈ´Ù.

Ä¿½ºÅÒ ÇÁ·Î¹ÙÀÌ´õ¸¦ Á¦ÀÛÇÒ ¼öµµ ÀÖ´Ù. À©µµ¿ì MEºÎÅÍ À©µµ¿ì ¿î¿µÃ¼Á¦¿¡ WMI°¡ Æ÷ÇԵǾúÁö¸¸ À©µµ ¹öÀü¿¡ µû¶ó ÀÌ¿ëÇÒ ¼ö ÀÖ´Â ÇÁ·Î¹ÙÀÌ´õ°¡ ´Ù¸£´Ù. MS´Â WMI °ü¸® µµ±¸¸¦ Á¦°øÇϸç ÀÌ µµ±¸¸¦ ÀÌ¿ëÇØ¼­ ¾î¶² ÇÁ·Î¹ÙÀÌ´õ¸¦ ¾µ ¼ö ÀÖ´ÂÁö »ìÆìº¼ ¼ö ÀÖ´Ù.

º»°ÝÀûÀÎ WMI ÀÌ¿ëÇϱâ
ÀÌÁ¦ WMI¿¡ °üÇÑ ÀϹÝÀûÀÎ ³»¿ë°ú WMIÀÇ ±â´É¿¡ ´ëÇØ ¾Ë¾ÒÀ¸´Ï, ´å³Ý ÄÚµå·Î WMIÀÇ ÀåÁ¡À» ½ÃÇèÀûÀ¸·Î ÀÌ¿ëÇØ º¸ÀÚ. Àü¿¡ ¾ð±ÞÇßµí ÇÁ·ÎÁ§Æ®¿¡¼­ System.Environment.dll¿¡ ´ëÇÑ ÂüÁ¶¸¦ Ãß°¡ÇØ¾ß ÇÑ´Ù.

¶ÇÇÑ ÄÚµå ¾È¿¡ System.Environment ³×ÀÓ½ºÆäÀ̽º¸¦ Æ÷ÇÔÇØ¾ß ÇÑ´Ù. C#¿¡¼­´Â UsingÀ», J#¿¡¼­´Â import¸¦, VB´å³Ý¿¡¼­´Â Imports¸¦ »ç¿ëÇÑ´Ù. ´ÙÀ½ ¿¹Á¦´Â ¿©·¯ ½Ã½ºÅÛ ÇÁ·ÎÆÛƼ¿¡ ¾×¼¼½ºÇÏ´Â ÄÚµåÀÇ ¿¹ÀÌ´Ù.

using System;
using System.Management;
namespace Builder {
class WMIExample {
[STAThread]
static void Main(string[] args) {
try {
ManagementObject mo = new
ManagementObject("Win32_ComputerSystem.Name=\"PENTIUM4\"");
Console.WriteLine("Description: " + mo["Description"].ToString());
Console.WriteLine("Model: " + mo["Model"].ToString());
Console.WriteLine("Number of processors: " +
mo["NumberOfProcessors"].ToString());
} catch (ManagementException e) {
Console.WriteLine("Exception encountered: " + e.ToString());
} catch (Exception e) {
Console.WriteLine("Exception encountered: " + e.ToString());
} } } }

VB´å³ÝÀ¸·Î´Â ´ÙÀ½°ú °°ÀÌ ÀÛ¼ºÇÑ´Ù.:

Imports System.Management
Module Module1
Sub Main()
Try
Dim mo As ManagementObject
mo = New ManagementObject("Win32_ComputerSystem.Name=""PENTIUM4""")
Console.WriteLine("Description: " + mo("Description").ToString())
Console.WriteLine("Model: " + mo("Model").ToString())
Console.WriteLine("Number of processors: " + mo("NumberOfProcessors").ToString())
Catch e As ManagementException
Console.WriteLine("Management exception encountered: " + e.ToString())
Catch e As Exception
Console.WriteLine("Exception encountered: " + e.ToString())
End Try
End Sub
End Module

Äڵ带 Á» ÀÚ¼¼È÷ »ìÆìº¸ÀÚ. ¿ì¼± ManagementObject Ŭ·¡½ºÀÇ ÀνºÅϽº´Â WMI¿Í µ¿ÀÛÇÏ´Â µ¥ »ç¿ëµÈ´Ù. WMI¸¦ ÅëÇØ ¾×¼¼½º °¡´ÉÇÑ ¾î¶² °´Ã¼¿Íµµ µ¿ÀÛÇϵµ·Ï ManagementObject Ŭ·¡½º¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

WMI Ŭ·¡½º(Win32_ComputerSystem.Name="Pentium")´Â ManagementObject °´Ã¼¸¦ ÀνºÅϽºÈ­ÇÏ´Â µ¥ »ç¿ëµÈ´Ù. ´ë»ó ½Ã½ºÅÛ¿¡¼­ WMI Ŭ·¡½º¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´ÂÁö ¾Ë¾Æº¸±â À§ÇØ Àü¿¡ ¾ð±ÞÇÑ WMI °ü¸® µµ±¸(WMI ¿ÀºêÁ§Æ® ºê¶ó¿ìÀú)¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. Á¤º¸¸¦ Ãß°¡ÇÏ´Â °Í»Ó ¾Æ´Ï¶ó °ªÀ» ¼öÁ¤ÇÒ ¼öµµ ÀÖ´Ù.

´ÙÀ½¿¡ ³ªÅ¸³½ ¿¹Á¦ Äڵ忡¼­´Â ÇÏµå µå¶óÀ̺꿡 ÇÒ´çµÈ À̸§À» º¯°æÇÑ´Ù.:

using System;
using System.Management;
namespace Builder {
class WMIExample {
[STAThread]
static void Main(string[] args) {
try {
ManagementObject mo = new ManagementObject("Win32_LogicalDisk.DeviceID=\"F:\"");
mo.Get();
mo["VolumeName"] = "FDrive";
mo.Put();
} catch (ManagementException e) {
Console.WriteLine("Exception encountered: " + e.ToString());
} catch (Exception e) {
Console.WriteLine("Exception encountered: " + e.ToString());
} } } }

VB´å³ÝÀ¸·Î ÀÛ¼ºÇÏ¸é ´ÙÀ½°ú °°´Ù.

Imports System.Management
Module Module1
Sub Main()
Try
Dim mo As ManagementObject
mo = New ManagementObject("Win32_LogicalDisk.DeviceID=""F:""")
mo.Get()
mo("VolumeName") = "New Volume"
mo.Put()
Catch e As ManagementException
Console.WriteLine("Management exception encountered: " + e.ToString())
Catch e As Exception
Console.WriteLine("Exception encountered: " + e.ToString())
End Try
End Sub
End Module

ÀÌ ¿¹Á¦´Â óÀ½ °Í°ú À¯»çÇÏ´Ù. Â÷ÀÌÁ¡À̶ó¸é µå¶óÀ̺ê À̸§ ÇÁ·ÎÆÛƼ°¡ º¯°æµÆ´Ù´Â °ÍÀÌ´Ù. get ¸Þ¼Òµå´Â º¯°æ Àü¿¡ È£ÃâµÅ¾ß ÇÑ´Ù. ÀÌ·¸°Ô ÇØ¾ß È®½ÇÈ÷ WMI ÀνºÅϽº°¡ µå¶óÀ̺êÀÇ ÇöÀç »óÅ·ΠÁ¤È®È÷ ÃʱâÈ­µÈ´Ù. »õ À̸§ÀÌ ÇÒ´çµÈ ÈÄ ÇϺΠ¿ÀºêÁ§Æ®¸¦ ¾÷µ¥ÀÌÆ®Çϱâ À§ÇØ put ¸Þ¼Òµå°¡ È£ÃâµÈ´Ù. (ÁÖÀÇ: º¯°æ »çÇ×À» È®½ÇÈ÷ ÀúÀåÇϱ⠹ٶõ´Ù.)

WMI´Â ´å³Ý ÇÁ·¹ÀÓ¿öÅ©ÀÇ Áß¿ä Ãø¸éÀÌÁö¸¸ °ÅÀÇ ÁÖ¸ñÀ» ¹ÞÁö ¸øÇϰí ÀÖ´Ù. WMI´Â ¾ÖÇø®ÄÉÀ̼ÇÀÌ µ¿ÀÛÇÏ´Â ´Ù¾çÇÑ Ãø¸éÀÇ È¯°æ°ú »óÈ£ µ¿ÀÛÇϰí ÀÌ È¯°æ¿¡ Á¶ÀÛÀ» °¡ÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ À̺¥Æ®¸¦ ÅëÇØ ½Ã½ºÅÛÀÇ º¯È­ °°Àº °ÍÀ» ¸ð´ÏÅ͸µÇÏ´Â °ÍÀÌ °¡´ÉÇÒ ¼öµµ ÀÖ´Ù.@

µ¶ÀÚÀÇ°ß ³²±â±â (·Î±×ÀÎ ÈÄ µ¶ÀÚ ÀǰßÀ» ³²±â½Ç ¼ö ÀÖ½À´Ï´Ù.)
¾ÆÀ̵ð ºñ¹Ð¹øÈ£
 
 
'ÁÖÃãÁÖÃã ¼Ò´Ï' º¸±ÞÇü Ä·ÄÚ´õ ½ÃÀå »ï¼º ¸Í°ø¡¦À¯Æ©ºê ¸ÂÃãÇü 'VM-MX20C' [00:07:48]
ÁøÇà ·ùÁØ¿µ ±âÀÚ, Á¦ÀÛ À¯È¸Çö PD
[ZDNET ¿µ¹®¹æ¼Û]±¸±Û À¥ºê¶ó¿ìÀú '±¸±Û Å©·Ò' º£Å¸¹öÀü °ø°³ [00:01:29]
Áöµð³ÝÄÚ¸®¾Æ ¿µ»óÁ¦ÀÛÆÀ
EMC-·¹³ëº¸, ¿Â¶óÀÎ µ¥ÀÌÅÍ ¹é...
SK C&C, ¾È»ê½Ã Áö´ÉÇü±³ÅëÁ¤...
Ä«Æä24 ¼îÇθô ÇØ¿Ü¹è¼Û '½ºÇǵå...
Çѱ¹¾îµµºñ, '¾ÖÅ©·Î¹î 9' ÇѱÛ...
LGÀüÀÚ, 8¹é¸¸ È­¼Ò ¸ÖƼ¹Ìµð¾î...
 
 
The Korean edition of 'ZDNet' is published under license from CNET Networks, Inc., San Francisco, CA, USA. Editorial items appearing in 'ZDNet Korea' that were originally published in the US Edition of 'ZDNet', 'CNET', and 'CNET News.com' are the copyright properties of CNET Networks, Inc. or its suppliers.
Copyright ¨Ï 2008 CNET Networks, Inc. All Rights Reserved. 'ZDNet', 'CNET' and 'CNET News.com' are trademarks of CNET Networks, Inc.