Create  Edit  Diff  FrontPage  Index  Search  Changes  Login

HtmlApplication

HTML¥¢¥×¥ê¥±¡¼¥·¥ç¥ó

¤³¤Î¥Æ¥­¥¹¥È¤Ï¥¢¥¹¥­¡¼¤«¤é½ÐÈǤµ¤ì¤¿Windows 2000 Magazine¤Ë´ó¹Æ¤·¤¿¤â¤Î¤Î½é¹Æ¤Î°ìÉô¤òÉü¸µ¤·¤¿¤â¤Î¤Ç¤¹¡£

¥¹¥¯¥ê¥×¥È¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤Ë¤Ï¡¢É¬¤º¤·¤â¥³¥Þ¥ó¥É¥é¥¤¥ó¤ò»ÈÍѤ·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤ï¤±¤Ç¤Ï¤Ê¤¤¡£Æä˥À¥¤¥Ê¥ß¥Ã¥¯HTML¡ÊDHTML¡Ë¤ò¤Á¤ç¤Ã¤ÈÍøÍѤ¹¤ì¤Ð¡¢´Êñ¤Ë¥Þ¥¦¥¹¤À¤±¤ÇÁàºî²Äǽ¤Ê¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òºî¤ë¤³¤È¤¬¤Ç¤­¤ë¡£¤³¤ì¤Ï¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥¨¥¯¥¹¥×¥í¡¼¥é4.0°Ê¹ß¤ÎÈó¾ï¤ËÊØÍø¤Êµ¡Ç½¤À¡£

º£Å٤ϡ¢¤³¤Î¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥¨¥¯¥¹¥×¥í¡¼¥é¤Î¥ª¥Þ¥±µ¡Ç½¡¢HTML¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò»È¤Ã¤Æ¤ß¤è¤¦¡£

¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥¨¥¯¥¹¥×¥í¡¼¥é¤È¥¹¥¯¥ê¥×¥È¸À¸ì

¿¶¤êÊ֤äƤߤì¤Ð¡¢1996ǯ¤«¤é1997ǯ¤Ë¤«¤±¤Æ¥Þ¥¤¥¯¥í¥½¥Õ¥È¤¬¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥¨¥¯¥¹¥×¥í¡¼¥é¤ËÂФ·¤Æ¤Ä¤®¹þ¤ó¤À³«È¯ÎϤȤ¤¤¦¤Î¤Ï¡¢À¨¤Þ¤¸¤¤¤Î°ì¸ì¤Ë¤Ä¤­¤ë¡£

Windows95¤¬ÂçÀ®¸ù¤ò¤ª¤µ¤á¤¿»þÅÀ¤Ç¤Ï²¿¤â̵¤¤¾õÂÖ¤À¤Ã¤¿¤Î¤¬¡¢¤¢¤ì¤è¤¢¤ì¤è¤È¤¤¤¦´Ö¤Ë¡¢¥Í¥Ã¥È¥¹¥±¡¼¥×¥×¥é¥°¥¤¥ó¡¢Java¡¢ActiveX¥³¥ó¥È¥í¡¼¥ë¡ÊOLE¥³¥ó¥È¥í¡¼¥ë'97¡Ë¤È¡¢¤½¤Î»þÅÀ¤Ç»È¤¨¤ëµ»½Ñ¤òÁíÆ°°÷¤·¤ÆHTML¤À¤±¤Ç¤Ï¼Â¸½¤Ç¤­¤Ê¤¤É½¸½ÎϤò¼Â¸½¤·¤¿¥Ð¡¼¥¸¥ç¥ó3.0¤ò½Ð¤·¤Æ¤­¤¿¤Î¤À¤«¤é¡£

¤½¤ì¤é¤Î¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥¨¥¯¥¹¥×¥í¡¼¥é¤ËÂФ¹¤ëµ»½ÑÅêÆþ¤ÎÃæ¤Ç¡¢°ìºÝ°ÛºÌ¤òÊü¤Ã¤¿¤Î¤¬JScript¤ÈVBScript¤È¤¤¤¦2¤Ä¤Î¥¹¥¯¥ê¥×¥È¸À¸ì¤ò°·¤¨¤ë¤è¤¦¤Ë¤·¤¿¤³¤È¤À¤Ã¤¿¡£JScript¤ÇHTMLÍ×ÁǤòÁàºî¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¡¢¤È¤¤¤¦¤³¤È¤Ï¥Í¥Ã¥È¥¹¥±¡¼¥×¥Ê¥Ó¥²¡¼¥¿¤Ë¼è¤Ã¤ÆÂå¤ï¤ë¤¿¤á¤Ë¤Ïɬ¿Ü¤À¤È¤¤¤¦¤³¤È¤ÏÍý²ò¤Ç¤­¤ë¤¬¡Ê¤½¤ì¤À¤±¤Ç¤Ê¤¯¡¢ECMA¤ËƯ¤­¤«¤±¤Æ¸À¸ì»ÅÍͤÎɸ½à²½¤Þ¤Ç¡¢¤¢¤ë°ÕÌ£¼«¼Ò¤ËÅԹ礬Îɤ¤¤è¤¦¤Ë¹Ô¤Ã¤Æ¤¤¤ë¤Î¤À¤«¤é¡½¡½¥Í¥Ã¥È¥¹¥±¡¼¥×¥Ê¥Ó¥²¡¼¥¿¤¬JavaScript¤Î»ÅÍͤò¥Þ¥¤¥¯¥í¥½¥Õ¥È¤¬¿¿»÷¤Ç¤­¤Ê¤¤¤è¤¦¤Ë³ÈÄ¥¤¹¤ë¤³¤È¤ËÂФ·¤Æ¡¢É¸½à²½¤È¤¤¤¦Ì¾Ìܤǥ֥졼¥­¤ò¤«¤±¤¿¤È¸À¤¨¤ë¡½¡½Ã±¤Ëµ»½ÑÌ̤À¤±¤Ç¤Ï¤Ê¤¯À¯¼£Ì̤ǤޤÇÁíÎϤò¾å¤²¤¿¤Î¤¬¸«¤Æ¼è¤ì¤ë¡Ë¡¢¤½¤ì¤À¤±¤Ëα¤Þ¤é¤º¡¢Visual Basic¤Ë¤½¤Ã¤¯¤ê¤Ê¥¹¥¯¥ê¥×¥È¸À¸ì¤Þ¤ÇÅëºÜ¤·¤¿¤È¤¤¤¦¤³¤È¤ÏÃíÌܤËÃͤ¹¤ë¡£¾¯¤Ê¤¯¤Æ¤â¥¤¥ó¥¿¡¼¥Í¥Ã¥È¤Ç¤Ï¤È¤â¤«¤¯¡¢´ë¶ÈÆ⥤¥ó¥È¥é¥Í¥Ã¥È¤Ç¤Ï¡¢IE3.0¤È¡¢Â³¤¯IIS3.0¤ÎActive Server Page¤Î2¤Ä¤Ë¤è¤Ã¤Æ¥Í¥Ã¥È¥¹¥±¡¼¥×¼Ò¤È¤Î¶¥Áè¤Ï¤Û¤Ü¾¡É餬¤Ä¤¤¤¿¤È¸À¤Ã¤Æ¤¤¤¤¤À¤í¤¦¡£

¤³¤Î»þ¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥¨¥¯¥¹¥×¥í¡¼¥é¤¬2¤Ä¤Î¥¹¥¯¥ê¥×¥È¸À¸ì¤òÆ©²á¤Ë°·¤¨¤ë¤è¤¦¤Ë¹Í¤¨¤é¤ì¤¿¤Î¤¬¡¢ActiveScripting¤È¤¤¤¦COM¤Î»ÅÍͤÀ¡£ActiveScripting¤Ç¤Ï¡¢¥¹¥¯¥ê¥×¥È¸À¸ì¤¬¥Û¥¹¥È¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡Ê¤³¤Î¾ì¹ç¤À¤È¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥¨¥¯¥¹¥×¥í¡¼¥é¡Ë¤ËÄ󶡤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤°ìÏ¢¤Î¥³¥Þ¥ó¥É¥»¥Ã¥È¤È¡¢¥Û¥¹¥È¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬¥¹¥¯¥ê¥×¥È¸À¸ì¤ËÄ󶡤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤°ìÏ¢¤Î¥³¥Þ¥ó¥É¥»¥Ã¥È¡Ê¼Â¹Ô´Ä¶­¤Î¾ðÊó¤òÄ󶡤¹¤ë¡Ë¤Î»ÅÍͤ¬COM¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤È¤·¤ÆÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£¤³¤ì¤é¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹»ÅÍͤϸø³«¤µ¤ì¤Æ¤¤¤ë¤¿¤á¡¢¥Þ¥¤¥¯¥í¥½¥Õ¥È°Ê³°¤Ç¤â¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥¨¥¯¥¹¥×¥í¡¼¥é¤Ê¤É¤ÇÍøÍѤǤ­¤ë¥¹¥¯¥ê¥×¥È¸À¸ì¤òÄ󶡤¹¤ë¤³¤È¤¬²Äǽ¤À¡£

¤È¤¤¤¦¤ï¤±¤Ç¡¢É®¼Ô¤ÏActiveScripting¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤òRuby¤ËÈ碌¤ë¤³¤È¤¬¤Ç¤­¤¿¤·¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥¨¥¯¥¹¥×¥í¡¼¥é¾å¤ÇRuby¥¹¥¯¥ê¥×¥È¤òÆ°¤«¤¹¤³¤È¤¬¤Ç¤­¤ë¤ï¤±¤À¡£

HTML¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î°ÕµÁ

HTML¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥¨¥¯¥¹¥×¥í¡¼¥é¤Îµ¡Ç½¤Î¤¦¤Á¡¢ActiveScript¤òÆ°¤«¤¹¤³¤È¡¢HTMLÍ×ÁǤò¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤Æ¥¹¥¯¥ê¥×¥È¤ËÄ󶡤¹¤ë¤³¤È¤òÈ´¤­½Ð¤·¤Æ¡¢°ìÀڤΥ»¥­¥å¥ê¥Æ¥£¥Á¥§¥Ã¥¯¤ò¤Ï¤º¤·¤¿¤â¤Î¤À¡£½¾¤Ã¤Æ¡¢Ä̾ï¤ÎHTML¤Ç¤Ï¼Â¹ÔÉÔ²Äǽ¤Ê¡¢°ÂÁ´¤Ç¤Ï¤Ê¤¤ActiveX¥³¥ó¥È¥í¡¼¥ë¡ÊÎ㤨¤ÐFileSystemObject¡Ë¤ò»ÈÍѤ¹¤ë¤³¤È¤â²Äǽ¤À¡£¸ø¼°²½¤¹¤ì¤Ð¡¢HTML¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡áWindows¥¹¥¯¥ê¥×¥Æ¥£¥ó¥°¥Û¥¹¥È¡Ý¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¡ÜHTML¤È¤¤¤¦´¶¤¸¤À¡£

ÅöÁ³¡¢»ÈÍѤǤ­¤ëRuby¤Ï¡¢ActiveScriptRubyÈǤÀ¤±¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¤Î¤Ç¡¢Ruby¥¨¥ó¥È¥ê¡¼¥Ñ¥Ã¥±¡¼¥¸¤Ê¤É¤ÎCygwinÈǤäMingwÈǤʤɤ·¤«¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢Ê̤ËActiveScriptRuby¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤«¡¢¤¢¤ë¤¤¤Ï»ÈÍѤ½¤Î¤â¤Î¤ò¤¢¤­¤é¤á¤ÆÍߤ·¤¤¤¿¤À¤·¡¢¡Ê·ù¤Ç¤Ê¤±¤ì¤Ð¡ËVBScript¤äJScript¤òÆ°¤«¤¹¤³¤È¤âÅöÁ³²Äǽ¤Ç¤¢¤ë¤«¤é¡¢É¬¤º¤·¤âHTML¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë°ÕÌ£¤¬Ìµ¤¤¤ï¤±¤Ç¤Ï¤Ê¤¤¡£

Helloworld¥¢¥×¥ê¥±¡¼¥·¥ç¥ó

¤Þ¤º¡¢´Êñ¤Ê¥×¥í¥°¥é¥à¤È¤·¤ÆHello World¤ò¡¢HTML¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡Ê°Ê¹ßHTA¤Èµ­¤¹¡Ë¤ÇºîÀ®¤·¤Æ¤ß¤è¤¦¡£

Hello.hta

¥ê¥¹¥È¤Ï2009ǯºÇ¿·ÈǤÎActiveScriptRuby¤Ë¹ç¤ï¤»¤Æ½¤ÀµºÑ¤ß

<html>
<head><title>Hello World</title><head>
<body>
  <center>Hello World !!</center>
  <br>
  <center>
    <input type="button" onclick="close"
 language="RubyScript" value="END">
  </center>
</body>
</html>

HTA¤Ï¥×¥í¥°¥é¥à°·¤¤¤Ê¤Î¤Ç¡¢WindowsNT4.0¤äWindows2000¤Ê¤é¡¢¥³¥Þ¥ó¥É¥×¥í¥ó¥×¥È¤«¤éľÀÜHello.hta¤ÈÆþÎϤ¹¤ë¤«¡¢¥¨¥¯¥¹¥×¥í¡¼¥é¤«¤é¤Î¥À¥Ö¥ë¥¯¥ê¥Ã¥¯¤Ç¼Â¹Ô²Äǽ¤À¡Ê¿Þhta.tif¡Ë¡£¸«¤Æ¤ÎÄ̤ꡢÈó¾ï¤Ë¥·¥ó¥×¥ë¤Ê¥¦¥£¥ó¥É¥¦¤Çɽ¼¨¤µ¤ì¤ë¡£

¤³¤ÎÃæ¤Ç¥¹¥¯¥ê¥×¥È¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¤Î¤Ï¡¢END¤È½ñ¤«¤ì¤¿¥Ü¥¿¥ó¤Îonlick¥¤¥Ù¥ó¥È¤ÎÉôʬ¤À¤±¤À¡£¤³¤Î¥Ü¥¿¥ó¤ò¥¯¥ê¥Ã¥¯¤¹¤ë¤È¡¢language¤Ç»ØÄꤵ¤ì¤¿RubyScript¡ÊActiveScriptRuby¤ÎActiveScript̾¡Ë¤¬onclick¤Ç»ØÄꤵ¤ì¤¿¡ÖWindow.close¡×¤È¤¤¤¦¥¹¥¯¥ê¥×¥È¤ò¼Â¹Ô¤¹¤ë¤¿¤á¡¢Window¥ª¥Ö¥¸¥§¥¯¥È¤Îclose¥á¥½¥Ã¥É¤¬¸Æ¤Ó½Ð¤µ¤ì¤ÆHTA¤¬½ªÎ»¤¹¤ë¡£¤¿¤À¤½¤ì¤À¤±¤Ê¤Î¤À¤¬¡¢¤½¤ì¤Ç¤â¡¢¤³¤ÎÎã¤Ç¤µ¤¨HTA¤ÈÄ̾ï¤ÎHTML¤ÇÆ°ºî¤¬°Û¤Ê¤ë¤³¤È¤¬³Îǧ¤Ç¤­¤ë¡£

¼ÂºÝ¤Ë¡¢¾å¤ÎHTA¤Î¥Õ¥¡¥¤¥ë̾¤òHello.htm¤ÈÊѹ¹¤·¤Æ¤«¤é¡¢Æ±Íͤ˼¹Ԥ¹¤ë¤È¡¢¥Ü¥¿¥ó¤ò¥¯¥ê¥Ã¥¯¤·¤¿¤È¤³¤í¤Ç¡¢¡Ö¥¦¥£¥ó¥É¥¦¤Ï¡¢É½¼¨Ãæ¤ÎWeb¥Ú¡¼¥¸¤Ë¤è¤êÊĤ¸¤é¤ì¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹¡£¤³¤Î¥¦¥£¥ó¥É¥¦¤òÊĤ¸¤Þ¤¹¤«¡©¡×¤È¤¤¤¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤ë¤³¤È¤¬³Îǧ¤Ç¤­¤ë¤À¤í¤¦¡Ê¿Þhtml.tif¡Ë¡£¥¹¥¯¥ê¥×¥È¤Ë¤è¤Ã¤Æ¾¡¼ê¤Ë¥¦¥£¥ó¥É¥¦¤¬ÊĤ¸¤é¤ì¤ë¤È¤¤¤¦¤³¤È¤¬²¿¤é¤«¤Î¥æ¡¼¥¶¡¼¤ËÂФ¹¤ë¶¼°Ò¤È¤Ê¤ê¤¨¤ë¤È¹Í¤¨¤Æ¤³¤Î¤è¤¦¤Ê¥Á¥§¥Ã¥¯¤¬Æþ¤Ã¤Æ¤¤¤ë¤ï¤±¤À¤¬¡¢HTA¤Ç¤Ï°ìÀڤΥ»¥­¥å¥ê¥Æ¥£¥Á¥§¥Ã¥¯¤¬Ìµ¤¤¤¿¤á¡¢ÌۤäƽªÎ»¤·¤Æ¤·¤Þ¤¦¤ï¤±¤À¡£

ActiveScriptRuby¤Ç¤Î·è¤Þ¤ê¤´¤È

HTA¤ÇActiveScriptRuby¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢VBScript¤äJScript¤Ë¤Ï¸ºß¤·¤Ê¤¤À©Ì󤬤¢¤ë¤Î¤Ç¡¢¤Þ¤º½ñ¤¤¤Æ¤ª¤³¤¦¡£

2009ǯ¸½ºß¡¢°Ê²¼¤ÎÀ©¸Â¤Ï¸ºß¤·¤Ê¤¤¤¬¡¢¸¶Ê¸¤Î¤Þ¤Þ»Ä¤¹¡£

  1. ¥Ç¥Õ¥©¥ë¥È¥ª¥Ö¥¸¥§¥¯¥È¡ÊWindow¥ª¥Ö¥¸¥§¥¯¥È¡Ë¤Î¾Êά¤¬¤Ç¤­¤Ê¤¤
  2. ¥¹¥¯¥ê¥×¥È¤È·ë¤Ó¤Ä¤¤¤¿¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ïɬ¤ºid°À­¤¬É¬Í×

¥Ç¥Õ¥©¥ë¥È¥ª¥Ö¥¸¥§¥¯¥È¡ÊWindow¥ª¥Ö¥¸¥§¥¯¥È¡Ë¤Î¾Êά¤¬¤Ç¤­¤Ê¤¤

Î㤨¤ÐJScript¤Ç¤¢¤ì¤Ð¡¢¤¤¤­¤Ê¤ê

alert("I like JScript!!");

¤Èµ­½Ò¤Ç¤­¤ë¤¬¡Êwindow.alert("I like...");¤Èµ­½Ò¤·¤Æ¤âÎɤ¤¡Ë¡¢ActiveScriptRuby¤Ç¤Ï

Window.alert "I like Ruby !!!!"

¤È¡¢Window¡Ê¤Þ¤¿¤Ï@window¡Ë¥ª¥Ö¥¸¥§¥¯¥È¤Îµ­½Ò¤¬É¬ÍפÀ¡£

¥¹¥¯¥ê¥×¥È¤È·ë¤Ó¤Ä¤¤¤¿¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ïɬ¤ºid°À­¤¬É¬Í×

Î㤨¤ÐJScript¤Ç¤¢¤ì¤Ð¡¢Hello.hta¤Î½ªÎ»¥Ü¥¿¥ó¤ò <input type="button" onclick="window.close();" language="JSciprt" value="END">

¤Î¤è¤¦¤Ëµ­½Ò¤Ç¤­¤ë¤¬¡¢Hello.hta¤ò¸«¤Æ¤ÎÄ̤êActiveScriptRuby¤Î¾ì¹ç¡¢id=xxxx¤È¤¤¤¦µ­½Ò¤¬É¬¿Ü¤È¤Ê¤ë¡£

¾¤Î¥¹¥¯¥ê¥×¥È¤È¤ÎÁê°ãÅÀ

¤Ä¤¤¤Ç¤Ë¡¢Â¾¤Î¥¹¥¯¥ê¥×¥È¸À¸ì¤È¤ÎÁê°ãÅÀ¤Ë¤Ä¤¤¤Æ¤â½ñ¤¤¤Æ¤ª¤³¤¦¡£

JScript¤È¤ÎÁê°ãÅÀ¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ä¤¤¤Æ¤ÎÀ©Ìó°Ê³°¤Ë¤Ï¡¢°Ê²¼¤ÎÅÀ¤¬¤¢¤ë¡£

JScript¤È¤ÎÁê°ãÅÀ

  1. ActiveScriptRuby¤Ï¡¢OLE¥ª¡¼¥È¥á¡¼¥·¥ç¥ó·¿ÇÛÎó¡ÊVBArray¡Ë¤òľÀÜ°·¤¨¤ë¡£
  2. ActiveScriptRuby¤Ï¡¢¥¤¥Ù¥ó¥È¤Î°ú¿ô¤ò¼è¤ë¤³¤È¤¬¤Ç¤­¤ë¡ÊJScript¤Ï¥¤¥Ù¥ó¥È¤Î°ú¿ô¤ò¼è¤ì¤Ê¤¤¡Ë¡£

VBScript¤È¤ÎÁê°ãÅÀ¤Ï¡¢JScript¤ÈƱÍͤ˥᥽¥Ã¥É¤Î°ú¿ô¤Î¼è¤ê°·¤¤¤ËÀ©¸Â¤ò»ý¤Ä¤³¤È¤À¡£

VBScript¤È¤ÎÁê°ãÅÀ

  1. ActiveScriptRuby¤Ï¡¢ByRef·¿¤Î°ú¿ô¤ò°·¤¨¤Ê¤¤¡Ê°ú¿ô¤Ï¤¹¤Ù¤ÆÃÍÅϤ·¤È¤Ê¤ë¡Ë¡£

HTA¤ÎÍÑÅÓ

¼¡¤ÎHTA¤ò¸«¤Æ¤ß¤è¤¦¡£¤³¤Î¥×¥í¥°¥é¥à¤Ï¡¢System¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î³ÈÄ¥»Ò¤¬exe¤ÎÁ´¥Õ¥¡¥¤¥ë¤Î̾Á°¡¢¥µ¥¤¥º¡¢¹¹¿·»þ¹ï¤òÎóµó¤·¡¢¥Æ¡¼¥Ö¥ë¤Ë³ÊǼ¤¹¤ë¥×¥í¥°¥é¥à¤À¡£

sysprog.hta

<html>
<head>
<title>¥×¥í¥°¥é¥à¾ðÊó</title>
<script language="RubyScript">
Sysdir = "#{ENV['windir']}\\system32" # Äê¿ô¤ÏheadÆâ¤Î¥¹¥¯¥ê¥×¥È¥Ö¥í¥Ã¥¯¤ÇÄêµÁ¤¹¤ë¡£

def showinf
  tbl = Window.tbl
  while tbl.rows.length > 1
    tbl.deleteRow 1
  end
  Dir.open(Sysdir).each do |fl|
    if fl.index(/\.exe\z/i) != nil
      tr = tbl.insertRow -1
      s = "#{Sysdir}\\#{fl}"
      td = tr.insertCell -1
      td.innerText = fl.downcase
      td = tr.insertCell -1
      td.innerText = File::size s
      td = tr.insertCell -1
      td.innerText = File::mtime s
    end
  end
  sleep 1  #¤ª¤Þ¤¸¤Ê¤¤¡¡¢«¥¿¥¤¥ß¥ó¥°¤ò¼è¤é¤Ê¤¤¤È¶¥¹ç¤¬µ¯¤­¤ë
end

</script>
</head>
<body onload="showinf" language="RubyScript">
<table id="tbl" border="2">
 <tr>
  <th>¥Õ¥¡¥¤¥ë̾</th><th>¥µ¥¤¥º</th><th>ÆüÉÕ</th>
 </tr>
</table>
<hr>
<center>
  <input type="button" id="rfrs" onclick="showinf" value="Refresh"
   language="RubyScript">
</center>
</body>
</html>

¼Â¹ÔÎã¡Ê¿Þproghta.tif¡Ë

Ʊ¤¸¤³¤È¤ò¹Ô¤¦¥¹¥¯¥ê¥×¥È¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ë¡£

sysprog.rb

Sysdir = "#{ENV['windir']}\\system32"

def showinf
  Dir.open(Sysdir).each do |fl|
    if fl.index(/\.exe\z/i) != nil
      s = "#{Sysdir}\\#{fl}"
      print "#{fl.downcase}, #{File::size s}, #{File::mtime s}\n"
    end
  end
end

showinf

¼Â¹ÔÎã¡Ê¿Þprogscr.tif¡Ë

¼Â¹Ô¤·¤ÆÈæ¤Ù¤Æ¤ß¤ë¤ÈHTA¤Î®ÅÙ¤ÎÃÙ¤µ¤¬¡ÊÉ®¼Ô¤ÎP­·¡Ý800¤Ç5¡Á6ÉÃɬÍפǤ¢¤ë¡ËÌܤËÉÕ¤¯¤Ï¤º¤À¡£¼ÂºÝ¤ÏÉáÄ̤Υ¹¥¯¥ê¥×¥È¤Î¤Û¤¦¤¬Â¨ºÂ¤Ëɽ¼¨¤¬²Äǽ¤Ê¤¿¤á¤ËHTA¤ÎÃÙ¤µ¤¬ºÝΩ¤Ä¤À¤±¤Ê¤Î¤À¤¬¡¢¥Õ¥¡¥¤¥ëÎ̤¬Â¿¤¤¤ÈȾü¤ÊÂÔ¤Á»þ´Ö¤Ç¤Ï¤Ê¤¯¤Ê¤ë¡£»î¤·¤Ë¡¢Àµµ¬É½¸½Æâ¤Îexe¤òdll¤ËÊѤ¨¤Æ¤ß¤ë¤È¤ï¤«¤ë¤È»×¤¦¡£

¤½¤ì¤Ç¤ÏHTA¤Ë¤¹¤ë¤È²¿¤¬´ò¤·¤¤¤À¤í¤¦¤«¡©

Íýͳ¤Ï´ö¤Ä¤â¤¢¤ë¡£

¤Þ¤º¡¢¥¨¥¯¥¹¥×¥í¡¼¥é¤«¤é¤Î¥À¥Ö¥ë¥¯¥ê¥Ã¥¯¼Â¹Ô¤ËÈó¾ï¤Ë¸þ¤¤¤Æ¤¤¤ë¤³¤È¤À¡£¤³¤ì¤Ï¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¼Â¹Ô¤¹¤ë¥¹¥¯¥ê¥×¥È¤è¤êÌÀ¤é¤«¤Ë¥¢¥É¥Ð¥ó¥Æ¡¼¥¸¤À¡£

¤Þ¤¿¡¢¤³¤ÎÎã¤Ç¤Ï¡¢Ä¾ÀܳÈÄ¥»Ò¤ä¥Ç¥£¥ì¥¯¥È¥ê¤òHTAÆâ¤ËËä¤á¹þ¤ó¤Ç¤¢¤ë¤¬¡¢TEXT¥¿¥°¤ò»ÈÍѤ·¤ÆÆþÎϤµ¤»¤ë¤è¤¦¤Ë½¤Àµ¤¹¤ë¤³¤È¤â´Êñ¤À¡£

¤Ä¤Þ¤ê¡¢¥×¥í¥°¥é¥à¤ò¼ÂºÝ¤Ëµ¯Æ°¤·»ÈÍѤ¹¤ë¼Ô¤ËÂФ·¤Æ;ʬ¤ÊÉé²Ù¤¬¤«¤«¤é¤Ê¤¤¡ÊÃ챤òÍ׵ᤷ¤Ê¤¤¤È¸À¤Ã¤Æ¤âÎɤ¤¡Ë¤È¤¤¤¦¤³¤È¤À¡£

´ØÏ¢¤¹¤ë¤³¤È¤À¤¬¡¢¥Õ¥¡¥¤¥ë¤Ø¥ê¥À¥¤¥ì¥¯¥È¤·¤¿¤ê¤»¤º¤È¤â¡¢·ë²Ì¤¬¤­¤Á¤ó¤È»Ä¤ë¤È¤¤¤¦¤³¤È¤â¤¢¤ë¡£

¤µ¤é¤Ë¡¢HTA¼«ÂΤ¬¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥¨¥¯¥¹¥×¥í¡¼¥é¤Ç¤¢¤ë¤¿¤á¤ËÆÀ¤é¤ì¤ë¥ª¥Þ¥±¤â¤¢¤ë¡£¤½¤ì¤Ï¡¢°õºþ¤¬¶Ë¤á¤Æ´Êñ¤À¤È¤¤¤¦¤³¤È¤À¡£HTA¤Î¥¦¥£¥ó¥É¥¦¤Ë¤Ï¥á¥Ë¥å¡¼¤â¥Ä¡¼¥ë¥Ð¡¼¤â¤Ê¤¤¤¬¡¢±¦¥¯¥ê¥Ã¥¯¤Ï¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥¨¥¯¥¹¥×¥í¡¼¥é¤È¶¦Ä̤À¤«¤é¤À¡Ê¿Þhtamenu.tif¡Ë¡£¤ª¹¥¤ß¤Ç¤¢¤ì¤Ð¡¢¥ì¥¤¥¢¥¦¥È¤Ë¶Å¤Ã¤¿¤ê¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¢¤ë¡£

Íפ¹¤ë¤Ë¡¢¤Á¤ç¤Ã¤È¤·¤¿¥·¥¹¥Æ¥à¾ðÊó¤Î¼èÆÀ¤ä¥í¥°¤Îɽ¼¨¤È¤¤¤Ã¤¿½èÍý¤ËÈó¾ï¤Ë¸þ¤¤¤Æ¤¤¤ë¤ï¤±¤À¡£

Î㤨¤Ð¡¢´ö¤Ä¤«¤Î´ÉÍý¥Ä¡¼¥ë¤ò¥Õ¥¡¥¤¥ë¥µ¡¼¥Ð¤ËÃÖ¤¤¤Æ¤ª¤­¡¢PC»ÈÍÑ»þ¤Î¥È¥é¥Ö¥ë¤¬È¯À¸¤·¤¿¾ì¹ç¡¢Êó¹ð¤·¤ÆÍ褿ÍøÍѼԤˤ½¤Î¾ì¤Ç¼Â¹Ô¤µ¤»¤Æ·ë²Ì¤òÊó¹ð¤µ¤»¤ë¡¢¤È¤¤¤¦¤è¤¦¤Ê¾õ¶·¤ò¹Í¤¨¤Æ¤ß¤è¤¦¡£

²Ë¤È;͵¤¬¤¢¤ì¤Ð¡¢VB¤«²¿¤«¤Ç¥×¥í¥°¥é¥à¤òºî¤Ã¤ÆÃÖ¤¤¤Æ¤ª¤¤¤Æ¤â¤¤¤¤¤«¤âÃΤì¤Ê¤¤¤¬¡¢¤¿¤¤¤Æ¤¤¤ÎÍÑ»ö¤Ï¤½¤ì¤³¤½¡¢ÆÃÄê¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ÎÆÃÄê¤Î¥Õ¥¡¥¤¥ë¤ò¥Á¥§¥Ã¥¯¤·¤ÆÌã¤Ã¤¿¤ê¡¢¥ì¥¸¥¹¥È¥ê¤ÎÆÃÄê¤Î¥­¡¼¤ò¥Á¥§¥Ã¥¯¤·¤ÆÌ㤨¤Ð¤¹¤à¤³¤È¤¬Â¿¤¤¤Ï¤º¤À¡£¤ï¤¶¤ï¤¶¥³¥ó¥Ñ¥¤¥ë¤Þ¤Ç¤·¤ÆËܳÊŪ¤Ê¥×¥í¥°¥é¥à¤òºî¤ëɬÍפϤ½¤¦¤½¤¦¤Ï̵¤¤¡£¤·¤«¤·¡¢ÅÅÏøý¤Ê¤É¤Ç¡¢¤¤¤Á¤¤¤Á¥¨¥¯¥¹¥×¥í¡¼¥é¤Î¾ÜºÙɽ¼¨¤Î½Ð¤·Êý¤òÀâÌÀ¤·¤¿¤ê¡¢¥ì¥¸¥¹¥È¥ê¥¨¥Ç¥£¥¿¡¼¤Îµ¯Æ°ÊýË¡¤Ê¤É¤òÀâÌÀ¤·¤¿¤ê¤¹¤ë¤Î¤Ïµ¤¤¬±ó¤¯¤Ê¤ë¤è¤¦¤Êºî¶È¤Ç¤¢¤ë¡£Æ±Íͤˡ¢¥³¥Þ¥ó¥É¥×¥í¥ó¥×¥È¤ò³«¤«¤»¤Æ¥³¥Þ¥ó¥É̾¤ò»Ø¼¨¤·¤¿¤ê¤¹¤ë¤³¤È¤â³Ú¤·¤¤ºî¶È¤Ç¤Ï̵¤¤¡£·ë¶É¡¢¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¤ä¡¢Ä̾ï¤ÎWindowsScript¥Û¥¹¥È¤Ç¤ÏÌòÉÔ­¤À¡£

¤¹¤Ê¤ï¤Á¡¢¤³¤¦¤¤¤Ã¤¿ÍÑÅÓ¤ËHTA¤ÏÈó¾ï¤Ë¸þ¤¤¤Æ¤¤¤ë¡£Ä̾ï¤ÎHTML¤È°Û¤Ê¤ê¥¢¥¯¥»¥¹À©¸Â¤¬Ìµ¤¤¤¿¤á¡¢¥ì¥¸¥¹¥È¥êÁàºî¤ä¥Õ¥¡¥¤¥ëÁàºî¤¬²Äǽ¤À¤È¤¤¤¦¤³¤È¤â¡¢ÆÃÄêÍÑÅӤδÉÍý¥Ä¡¼¥ë¸þ¤­¤À¡£


¤Þ¤È¤á

º£²ó¤Ï¡¢¡ÊOS¤òÌä¤ï¤º¤Ë»È¤ï¤ì¤Æ¤¤¤ë¤È¤¤¤¦°ÕÌ£¤Ç¡Ë¤â¤Ã¤È¤âɸ½àŪ¤ÊRuby³«È¯´Ä¶­¤È¤·¤ÆMeadow¡ÊEmacs¡Ë¡¢Windows¤Ç¤Î¥Ç¥Õ¥¡¥¯¥È¥¹¥¿¥ó¥À¡¼¥É¤ÊRubyÅý¹ç³«È¯´Ä¶­¤ÎRubyWin¡¢¤½¤·¤Æ¥³¥Þ¥ó¥É¥é¥¤¥ó¤ò»ÈÍѤ·¤Ê¤¤¥¹¥¯¥ê¥×¥È¼Â¹Ô´Ä¶­¡©¤È¤·¤ÆHTML¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼è¤ê¾å¤²¤¿¡£

Meadow¤Ï¡¢Îò»Ë¤Èʸ²½¤È¤¤¤¦½Å²Ù¤òÇØÉé¤Ã¤Æ¤¤¤ë¤¿¤á¤ËÎɤ¯¤â°­¤¯¤âÊʤΤ¢¤ë´Ä¶­¤À¡£¤½¤ì¤À¤±¤Ë¤É¤³¤Ø¹Ô¤Ã¤Æ¤â»È¤¨¤ë¤È¤¤¤¦ÅÀ¤È¡¢Èó¾ï¤Ë±ü¹Ô¤­¤ò»ý¤Ã¤¿ÅÀ¤Ï¸«Æ¨¤¹¤³¤È¤Ï¤Ç¤­¤Ê¤¤¤À¤í¤¦¡£

¤¤¤Ã¤Ý¤¦RubyWin¤Ï¡¢Windows¥Í¥¤¥Æ¥£¥Ö¤Ê¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ê¤é¤Ç¤Ï¤Î¼è¤ÃÉÕ¤­¤ÎÎɤµ¤¬¡¢Ì¥ÎÏŪ¤Ê´Ä¶­¤À¡£°ìÉô¡¢Ruby¼«¿È¤ÎÀ©Ìó¡ÊÃí¡Ë¤Ëµ¯°ø¤¹¤ëÀ©¸Â¤¬¤¢¤Ã¤¿¤ê¤¹¤ë¤¬¡¢¤½¤ÎÅÀ¤ò³ä¤ê°ú¤¤¤Æ¤âÁêÅö¤Ë´°À®Å٤Ϲ⤤¡£¤¿¤À¡¢ºî¼Ô¼«¿È¤¬0.0.2¤È¥Ð¡¼¥¸¥ç¥ó¤Ë0¤ò2¤Ä¤âÉÕ¤±¤Æ¤¤¤ë¤³¤È¤«¤é¤¦¤«¤¬¤¨¤ë¤è¤¦¤Ë¡¢É¬¤º¤·¤â´°À®¤·¤¿¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤È¤Ï¸À¤¨¤Ê¤¤ÅÀ¤â¤¢¤ë¤«¤âÃΤì¤Ê¤¤¤¬¡¢¤½¤³¤Ï¥ª¡¼¥×¥ó¥½¡¼¥¹¤Ê¤Î¤Ç¤¢¤ë¤«¤é¡¢ÉÔËþ¤ò´¶¤¸¤¿¤é¼«Ê¬¤Ç½¤Àµ¤·¤Æ¤ä¤ë¤¯¤é¤¤¤Îµ¤»ý¤Á¤¬É¬ÍפǤ¢¤í¤¦¡Ê½¤Àµ¤¬Í­¸ú¤Ë»×¤¨¤¿¤é¡¢É¬¤º½õÅĤµ¤ó¤Ë¥Õ¥£¡¼¥É¥Ð¥Ã¥¯¤·¤è¤¦¡Ë¡£

ºÇ¸å¤ÎHTML¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢RubyWin¤ÈƱÍͤ˰ìÉôRuby¼«¿È¤ÎÀ©Ìó¡ÊÃí¡Ë¤Ëµ¯°ø¤¹¤ëÀ©¸Â¤¬¤¢¤ë¤¬¡¢´Êñ¤ÊHTML¤ÎÃ챤À¤±¤Ç¤¢¤ëÄøÅÙ¤ÎGUI¤òÈ÷¤¨¤¿¥¹¥¯¥ê¥×¥È¤¬¼ê·Ú¤ËºîÀ®¤Ç¤­¤ë¤È¤¤¤¦Ì̤ǡ¢É®¼Ô¤Ïµ¤¤ËÆþ¤Ã¤Æ¤¤¤ë¡£ÆäˤÁ¤ç¤Ã¤È¤·¤¿¥Ä¡¼¥ë¤òºî¤ë¾ì¹ç¤ÎÍ­¸úÅÙ¤¬Èó¾ï¤Ë¹â¤¤¡£

Ãí¡Ë¤³¤ÎÅÀ¤Ë¤Ä¤¤¤Æ¤Ï¡¢Ruby¦¤«¤é¸«¤ì¤Ð¡ÖWindows¤ÎOSŪ¤ÊÀ©Ìó¤Ë¤è¤ê¡×¤ÈµÕ¤Î¸À¤¤Êý¤¬¤Ç¤­¤ë¤³¤È¤ÏÉÕ¤±²Ã¤¨¤Æ¤ª¤³¤¦¡£

Last modified:2010/07/07 22:09:48
Keyword(s):
References: