2009ǯ11·î28Æü
°Üž¤·¤Þ¤¹
°ÊÁ°¤«¤é¤³¤Ã¤½¤êºî¶È¤ò¿Ê¤á¤Æ¤¤¤¿¤Î¤Ç¤¹¤¬¡¢¤Ï¤Æ¤Ê¤Ë°Ü½»¤¹¤ë¤³¤È¤Ë¤·¤Þ¤·¤¿¡£
¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ä¥ê¥ó¥¯¤ò¤·¤Æ¤¯¤ì¤Æ¤¤¤ëÊý¤Ï¥¢¥É¥ì¥¹¤ÎÊѹ¹¤ò¤ª´ê¤¤¤·¤Þ¤¹¡£
Éϵӥ졼¥µ¡¼¤Î¥µ¥Ü¤êÆüµin¤Ï¤Æ¤Ê
¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ä¥ê¥ó¥¯¤ò¤·¤Æ¤¯¤ì¤Æ¤¤¤ëÊý¤Ï¥¢¥É¥ì¥¹¤ÎÊѹ¹¤ò¤ª´ê¤¤¤·¤Þ¤¹¡£
Éϵӥ졼¥µ¡¼¤Î¥µ¥Ü¤êÆüµin¤Ï¤Æ¤Ê
2009ǯ11·î04Æü
¸À¸ì¥Ð¡¼¤¬¶õµ¤ÆÉ¤ó¤Ç¥¥ã¥ì¥Ã¥È¤ËÉÕ¤¤¤ÆÍè¤ë¥¢¥×¥êºî¤Ã¤Æ¤ß¤¿
¸À¸ì¥Ð¡¼¤Ã¤Æ¶õµ¤ÆÉ¤Þ¤Ê¤¤¤è¤Í¡£¥¿¥¹¥¯¥Ð¡¼¤ËÆþ¤ì¤Æ¤ë¤Èºî¶ÈÃæ¤Î»ëÀþ°Üư¤¬Â¿¤¯¤Ê¤ë¤·¡¢¥Ç¥¹¥¯¥È¥Ã¥×¤ËÃÖ¤¤¤È¤¯¤È¸«¼º¤¦¡£
¤À¤«¤é¥¥ã¥ì¥Ã¥È¤òÄɤ¤³Ý¤±¤ë¤è¤¦¤Ë¤·¤Æ¤ß¤¿¡£
http://www.k4.dion.ne.jp/~anis7742/Application/langbertool/langbertool_ver_1.02.zip
¤â¤Ã¤È¶õµ¤ÆÉ¤á¤ë»ÅÍͤ¬¤¢¤ë¤ó¤¸¤ã¤Ê¤¤¤«¤È»×°Æ¤·¤Æ»îºîÉʤòºî¤Ã¤¿¡£
¾ï¤Ë¥¥ã¥ì¥Ã¥È¤òÄɤ¤³Ý¤±¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢¥Õ¥©¡¼¥«¥¹¤¬°Ü¤Ã¤¿¥¿¥¤¥ß¥ó¥°¤Ç¸À¸ì¥Ð¡¼¤ò¥¥ã¥ì¥Ã¥È¤Î°ÌÃÖ¤Ë°ÜÆ°¤·¤Æ¡¢¿ôÉ÷Ф俤饦¥£¥ó¥É¥¦¤Î³°¤ËÂàÈò¤¹¤ëµóư¤Ë¤·¤Æ¤ß¤¿¡£
http://www.k4.dion.ne.jp/~anis7742/Application/langbertool/release.zip
¤À¤«¤é¥¥ã¥ì¥Ã¥È¤òÄɤ¤³Ý¤±¤ë¤è¤¦¤Ë¤·¤Æ¤ß¤¿¡£
http://www.k4.dion.ne.jp/~anis7742/Application/langbertool/langbertool_ver_1.02.zip
¤â¤Ã¤È¶õµ¤ÆÉ¤á¤ë»ÅÍͤ¬¤¢¤ë¤ó¤¸¤ã¤Ê¤¤¤«¤È»×°Æ¤·¤Æ»îºîÉʤòºî¤Ã¤¿¡£
¾ï¤Ë¥¥ã¥ì¥Ã¥È¤òÄɤ¤³Ý¤±¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢¥Õ¥©¡¼¥«¥¹¤¬°Ü¤Ã¤¿¥¿¥¤¥ß¥ó¥°¤Ç¸À¸ì¥Ð¡¼¤ò¥¥ã¥ì¥Ã¥È¤Î°ÌÃÖ¤Ë°ÜÆ°¤·¤Æ¡¢¿ôÉ÷Ф俤饦¥£¥ó¥É¥¦¤Î³°¤ËÂàÈò¤¹¤ëµóư¤Ë¤·¤Æ¤ß¤¿¡£
http://www.k4.dion.ne.jp/~anis7742/Application/langbertool/release.zip
2009ǯ11·î01Æü
C#|WebBrowser¤Çɽ¼¨Ãæ¤ÎWeb¥Ú¡¼¥¸¤Î¥Õ¥¡¥Ó¥³¥ó¤ò¼èÆÀ
Visual Basic Ãæ³Ø¹» ·Ç¼¨ÈÄ
http://rucio.groupsite.jp/commu/ThreadDetail.aspx?ThreadId=9423
¤³¤ó¤Ê¤ä¤ê¤È¤ê¤¬¤¢¤ê¤Þ¤·¤Æ¡£
ºÇ½é¤ÎÊÖ¿®¤ÇWikipedia¤Î¥ê¥ó¥¯¤À¤±¼¨¤·¤¿¤Î¤Ï¡¢Ì²¤¯¤Æ¤Þ¤È¤â¤Ë¥³¡¼¥É¤¬½ñ¤±¤Ê¤«¤Ã¤¿¤«¤é¤Ç¤¹¡£
¤½¤Î¸å¡¢´ÉÍý¿Í¤Î¤ë¤¤ª¤µ¤ó¤¬¥³¡¼¥É¤ò½ñ¤¤¤Æ¤¤¤¿¤Î¤Ç¡¢Ëͤâ½ñ¤¤¿¤¯¤Ê¤Ã¤¿¤ï¤±¤Ç¤¹¡£
̲¤¯¤Ê¤«¤Ã¤¿¤Î¤Ç¥µ¥¯¤Ã¤È½ÐÍè¤Þ¤·¤¿¡£À޳ѤʤΤÇC#¤Ë½ñ¤Ä¾¤·¤Æ¤³¤³¤ËµÏ¿¡£
http://rucio.groupsite.jp/commu/ThreadDetail.aspx?ThreadId=9423
¤³¤ó¤Ê¤ä¤ê¤È¤ê¤¬¤¢¤ê¤Þ¤·¤Æ¡£
ºÇ½é¤ÎÊÖ¿®¤ÇWikipedia¤Î¥ê¥ó¥¯¤À¤±¼¨¤·¤¿¤Î¤Ï¡¢Ì²¤¯¤Æ¤Þ¤È¤â¤Ë¥³¡¼¥É¤¬½ñ¤±¤Ê¤«¤Ã¤¿¤«¤é¤Ç¤¹¡£
¤½¤Î¸å¡¢´ÉÍý¿Í¤Î¤ë¤¤ª¤µ¤ó¤¬¥³¡¼¥É¤ò½ñ¤¤¤Æ¤¤¤¿¤Î¤Ç¡¢Ëͤâ½ñ¤¤¿¤¯¤Ê¤Ã¤¿¤ï¤±¤Ç¤¹¡£
̲¤¯¤Ê¤«¤Ã¤¿¤Î¤Ç¥µ¥¯¤Ã¤È½ÐÍè¤Þ¤·¤¿¡£À޳ѤʤΤÇC#¤Ë½ñ¤Ä¾¤·¤Æ¤³¤³¤ËµÏ¿¡£
using System;
using System.Drawing;
using System.IO;
using System.Net;
using System.Windows.Forms;
public partial class Form1:Form {
public Form1() {
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e) {
this.webBrowser1.Navigate("http://blogs.dion.ne.jp/anis7742/");
}
private void webBrowser1_DocumentCompleted(
object sender,
WebBrowserDocumentCompletedEventArgs e) {
foreach(HtmlElement linkTag
in webBrowser1.Document.GetElementsByTagName("link")) {
string relAttribute = linkTag.GetAttribute("rel");
string iconUrl;
if(relAttribute == "shortcut icon" || relAttribute == "icon") {
iconUrl = linkTag.GetAttribute("href");
if(iconUrl.StartsWith("http")) { //´°Á´¤ÊURL¤Î¾ì¹ç
this.Icon = getIconFromUrl(iconUrl);
} else if(iconUrl.StartsWith("/")) { //ÀäÂХѥ¹¤Î¾ì¹ç
this.Icon = getIconFromUrl("http://" + e.Url.Host + iconUrl);
} else { //ÁêÂХѥ¹¤Î¾ì¹ç
this.Icon = getIconFromUrl(e.Url.ToString() + iconUrl);
}
break;
}
}
//¥¿¥°¤Ç¤Î»ØÄ̵꤬¤¤¾ì¹ç
this.Icon = getIconFromUrl("http://" + e.Url.Host + "/favicon.ico");
}
private Icon getIconFromUrl(string url) {
using(WebClient webClient = new WebClient())
using(MemoryStream stream = new MemoryStream(webClient.DownloadData(url))) {
return new Icon(stream);
}
}
}
2009ǯ10·î21Æü
2009ǯ10·î15Æü
Twitter¤ËWMP¤ÇºÆÀ¸Ãæ¤Î¶Ê¤ò¼«Æ°Åê¹Æ¤¹¤ëBOTºî¤Ã¤Æ¤ß¤¿

ºîÀ®¤Ë»ê¤Ã¤¿·Ð°Þ¤Ï¤³¤ó¤Ê´¶¤¸¤ÇĶȴ¿è¡£
kyubot ¡Ú @mitsugogo ¤è¤êµÞÊç¡ÛWMP¤ÇºÆÀ¸Ãæ¤Î¶Ê¤òTwitter¤ËÅê¹Æ¤¹¤ë¥×¥é¥°°õ
anis774 @mitsugogo ¾ÜºÙ´õ˾¡£ÌÌÇò¤½¤¦¤Ê¤éºî¤ê¤Þ¤¹
mitsugogo @anis774 Windows Media Player¤ÇºÆÀ¸¤·¤Æ¤¤¤ë¶Ê̾¤ä¥¢¥ë¥Ð¥à̾¤Ê¤É¤òTwitter¤Ëή¤·¤¿¤¤¤ó¤Ç¤¹¡£º£»È¤Ã¤Æ¤ß¤Æ¤¤¤ë¥×¥é¥°¥¤¥ó¤Ç¤¹¤È¡¢ÆüËܸì¤Ç¼ã´³Ê¸»ú²½¤±¤¬È¯À¸¤¹¤ë¤è¤¦¤Ê¤Î¤Ç¡¦¡¦¡¦
anis774 @mitsugogo ¤Á¤ç¤Ã¤È¤ä¤Ã¤Æ¤ß¤Þ¤¹¤Í
sedna2501 @anis774 ÍßÄ¥¤ê¸À¤¦¤È¤³¤ó¤Ê´¶¤¸¤Î̵Íý¤Ç¤·¤ç¤¦¤«¡©¡¡¤Á¤ç¤Ã¤ÈtextÊÔ½¸½ÐÍè¤ë¤È´ò¤·¤¤¡¦¡¦¡¦ http://d.hatena.ne.jp/brazil/20070413/1176394371
¤Æ¤Ê´¶¤¸¡£
listeningnow.zip
ºî¼Ô¡§¤¢¤Ë¤¹
Ï¢ÍíÀè¡§anis774_for2ch@yahoo.co.jp
¥é¥¤¥»¥ó¥¹¡§NYSL
¡Ú¤ê¤¹¤Ë¤ó¤°¤Ê¤¦¤Ã¤Æ¤Ê¤Ë¡©¡Û
Windows Media Player ¤ÇºÆÀ¸Ãæ¤Î¶Ê̾¤òTwitter¤ËÅê¹Æ¤¹¤ëBOT¤À¤è¡£
¡Ú»È¤¤Êý¡Û
WMP¤ò¥á¥Ã¥»¥ó¥¸¥ã¡¼¤Ë¶Ê̾¤¬Á÷¿®¤µ¤ì¤ë¤è¤¦¤ËÀßÄꤷ¤Æ¤Í¡£
settings.ini¤òŬÅö¤ËÊÔ½¸¤·¤Æ¤Í¡£
interval¤Îñ°Ì¤ÏÉäÀ¤è¡£
¤ê¤¹¤Ë¤ó¤°¤Ê¤¦.exe¤òµ¯Æ°¤·¤Æ¤Í¡£
µ¯Æ°¤·¤¿¤éinterval¤ÇÀßÄꤷ¤¿Éÿô¤´¤È¤Ë¥¿¥¤¥Þ¡¼¤¬Áö¤ë¤è¡£
WMP¤«¤é¶Ê̾¤ò¼õ¿®¤·¤¿¤é¥Æ¥¥¹¥È¥Ü¥Ã¥¯¥¹¤ÎÆâÍÆ¤¬¹¹¿·¤µ¤ì¤ë¤è¡£
¥¿¥¤¥Þ¡¼¤Î»þ´Ö¤¬Í褿¤é¥Æ¥¥¹¥È¥Ü¥Ã¥¯¥¹¤ÎÆâÍÆ¤¬Twitter¤ËÅê¹Æ¤µ¤ì¤ë¤è¡£
¤½¤ì¤Þ¤Ç¤Î´Ö¤ËÅê¹Æ¤¹¤ëÆâÍÆ¤òÊÔ½¸½ÐÍè¤ë¤è¡£
¥¿¥¤¥Þ¡¼¤Î»þ´Ö¤¬Íè¤Æ¤â¥Æ¥¥¹¥È¥Ü¥Ã¥¯¥¹¤ÎÆâÍÆ¤¬Á°²ó¤ÎÅê¹Æ»þ¤«¤éÊѤï¤Ã¤Æ¤Ê¤«¤Ã¤¿¤éÅê¹Æ¤µ¤ì¤Ê¤¤¤è¡£
¥Æ¥¥¹¥È¥Ü¥Ã¥¯¥¹¤Ë¥Õ¥©¡¼¥«¥¹¤¬¤¢¤ë´Ö¤Ï¥¿¥¤¥Þ¡¼¤Î»þ´Ö¤¬Íè¤Æ¤âÅê¹Æ¤µ¤ì¤Ê¤¤¤«¤é¤æ¤Ã¤¯¤êÊÔ½¸½ÐÍè¤ë¤è¡£
¥Æ¥¥¹¥È¥Ü¥Ã¥¯¥¹¤ÎÆâÍÆ¤ÎÅê¹Æ¤ËÀ®¸ù¤¹¤ë¤È¥Ü¥¿¥ó¤¬²¡¤»¤Ê¤¯¤Ê¤ë¤è¡£
settings.ini¤ÏÀµ¤·¤¯ÊÔ½¸¤·¤Ê¤¤¤ÈÍÆ¼Ï¤Ê¤¯¥¨¥é¡¼¤ÇÍî¤ë¤è¡£
%0¤Ï¶Ê̾¡¢%1¤Ï¥¢¡¼¥Æ¥£¥¹¥È̾¤ËÃÖ´¹¤µ¤ì¤ë¤ß¤¿¤¤¤À¤è¡£
²¿¤«¤¢¤Ã¤¿¤éTwitter¤Ç@anis774¤ËÆÍ¤Ã¹þ¤ó¤Ç¤Í¡£¥á¡¼¥ëÁ÷¤Ã¤Æ¤âµ¤ÉÕ¤«¤Ê¤¤¤«¤â¤Í¡£
¢¨2009/10/15 7:00º¢
½ñ¤¹þ¤ß¤Ë¼ºÇÔ¤¹¤ë¤È»Ä¤ê»þ´Ö¤Îɽ¼¨¤¬ÃѤ·¤¤¤³¤È¤Ë¤Ê¤ë¤Î¤ò½¤Àµ¤·¤Æ¥³¥Ã¥½¥ê¤Èº¹¤·Âؤ¨
¢¨2009/10/17 23:30º¢
¼«Æ°Åê¹Æ¤Þ¤Ç¤Î»Ä¤ê»þ´Ö¤Îɽ¼¨¤¬ÂçÊѤʤ³¤È¤Ë¤Ê¤ëÉÔ¶ñ¹ç¤ò½¤Àµ¡¢¤Ä¤¤¤Æ¤Ë¤ï¤«¤ê¤ä¤¹¤¤É½¼¨¤ËÊѹ¹¡£¤³¤Ã¤½¤êº¹¤·Âؤ¨
2009ǯ10·î12Æü
¤É¤¦½ñ¤¯?org|µï̲¤ê¾²²°ÌäÂê
µï̲¤ê¾²²°ÌäÂê¤ËÅê¹Æ¤·¤Þ¤·¤¿¡£µ×¤·¿¶¤ê¤Î¤É¤¦½ñ¤¯¤Ç¤¹¡£
¥Þ¥ë¥Á¥¹¥ì¥Ã¥É¤Ï¤Á¤ç¤Ã¤È¶ì¼ê°Õ¼±¤¬¤¢¤ë¤ó¤À¤±¤É¡¢Æ°¤¤¤Æ¤ë¤«¤é¤¤Ã¤È¹ç¤Ã¤Æ¤ë¡£
°ìÈÖ¾è¤ê¤£¡ª
http://ja.doukaku.org/comment/9628/
¥Þ¥ë¥Á¥¹¥ì¥Ã¥É¤Ï¤Á¤ç¤Ã¤È¶ì¼ê°Õ¼±¤¬¤¢¤ë¤ó¤À¤±¤É¡¢Æ°¤¤¤Æ¤ë¤«¤é¤¤Ã¤È¹ç¤Ã¤Æ¤ë¡£
°ìÈÖ¾è¤ê¤£¡ª
http://ja.doukaku.org/comment/9628/
2009ǯ10·î09Æü
skkime¤òƳÆþ¤¹¤ë¤Ë¤¢¤¿¤Ã¤Æ»²¹Í¤Ë¤Ê¤Ã¤¿URL
SKKIME¥¤¥ó¥¹¥È¡¼¥ë¥á¥â - mayokara memo
Sylera ¤ä Firefox ¤Ç Ctrl+Return ¤¬¸ú¤«¤Ê¤¤
ÆüËܸ쥡¼¥Ü¡¼¥É»È¤Ã¤Æ¤ë¤ó¤Ç¤¹¤¬¡¢BS¤ä±¦Shift¤ò²¡¤·¤¿¤Ä¤â¤ê¤Ç¡Ö\(Yen¥Þ¡¼¥¯ or ¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å)¡×¤ò²¡¤·¤Á¤ã¤Ã¤Æ¡¢Ê¸»ú¥³¡¼¥ÉÆþÎϤˤʤäÁ¤ã¤¦¤Î¤¬¥¦¥¶¤¤¤Ç¤¹¡£¤É¤¦¤Ë¤«¤Ê¤ê¤Þ¤»¤ó¤«¡©
Á´³Ñ¶õÇò¤ò´Êñ¤ËÆþÎϤ¹¤ëÊýË¡¤Ï¤¢¤ê¤Þ¤¹¤«¡©
Windows2000/XP¤Ç ohhon¢ª¤ª¤Ã¤Û¤ó ¤ÈÊÑ´¹¤¹¤ëÊýË¡
¡Ö$¡×(Ⱦ³Ñ¥É¥ë¥Þ¡¼¥¯)¤¬ÂǤƤʤ¤¤¾¡©¡©¡©
¼«Ê¬¤ÇÅÐÏ¿¤·¤¿Ã±¸ì¤ò¼½ñ¤«¤éºï½ü¤¹¤ë¤Ë¤Ï¡©
Ctrl+Enter¤Ï¤É¤¦¤ä¤Ã¤ÆÂǤĤó¤À¤è¤©¤©¤©¡ª
Sylera ¤ä Firefox ¤Ç Ctrl+Return ¤¬¸ú¤«¤Ê¤¤
ÆüËܸ쥡¼¥Ü¡¼¥É»È¤Ã¤Æ¤ë¤ó¤Ç¤¹¤¬¡¢BS¤ä±¦Shift¤ò²¡¤·¤¿¤Ä¤â¤ê¤Ç¡Ö\(Yen¥Þ¡¼¥¯ or ¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å)¡×¤ò²¡¤·¤Á¤ã¤Ã¤Æ¡¢Ê¸»ú¥³¡¼¥ÉÆþÎϤˤʤäÁ¤ã¤¦¤Î¤¬¥¦¥¶¤¤¤Ç¤¹¡£¤É¤¦¤Ë¤«¤Ê¤ê¤Þ¤»¤ó¤«¡©
Á´³Ñ¶õÇò¤ò´Êñ¤ËÆþÎϤ¹¤ëÊýË¡¤Ï¤¢¤ê¤Þ¤¹¤«¡©
Windows2000/XP¤Ç ohhon¢ª¤ª¤Ã¤Û¤ó ¤ÈÊÑ´¹¤¹¤ëÊýË¡
¡Ö$¡×(Ⱦ³Ñ¥É¥ë¥Þ¡¼¥¯)¤¬ÂǤƤʤ¤¤¾¡©¡©¡©
¼«Ê¬¤ÇÅÐÏ¿¤·¤¿Ã±¸ì¤ò¼½ñ¤«¤éºï½ü¤¹¤ë¤Ë¤Ï¡©
Ctrl+Enter¤Ï¤É¤¦¤ä¤Ã¤ÆÂǤĤó¤À¤è¤©¤©¤©¡ª
2009ǯ09·î01Æü
¤¢¤Î³Ú´ï¤¸¤ã¤Ê¤¤¤±¤ÉC#¤Ç³Ú´ïºî¤Ã¤Æ¤ß¤¿
ÉáÄ̤ÎPC¤ò»È¤Ã¤Æ¥¬¥Á±éÁդäƽÐÍè¤Ê¤¤¤«¤Ê¤¡¤È»×¤Ã¤Æ¿§¡¹»î¤·¤Æ¤ß¤Þ¤·¤¿¡£
ÅÓÃæ·Ð²á¤Ïmixi¤ÇÁ´ÂΤ˸ø³«¤ÎÀßÄê¤Ç½ñ¤¤¤¿¤Î¤Ç¡¢¥¢¥«¥¦¥ó¥È¤ò¤ª»ý¤Á¤ÎÊý¤Ï¤½¤Ã¤Á¤Ç¡£
http://mixi.jp/view_diary.pl?id=1264945935&owner_id=2620995
http://mixi.jp/view_diary.pl?id=1265825769&owner_id=2620995
http://mixi.jp/view_diary.pl?id=1265873603&owner_id=2620995
http://mixi.jp/view_diary.pl?id=1267163178&owner_id=2620995
http://mixi.jp/view_diary.pl?id=1270510815&owner_id=2620995
¤Ä¤Þ¤ê¤Ï¥½¥Õ¥È¥¦¥§¥¢¥¡¼¥Ü¡¼¥É¤òºî¤í¤¦¤Ã¤Æ¤³¤È¤Ç¤¹¡£¤¢¤ì¤ÏMIDI¤È¤¤¤¦¥×¥í¥È¥³¥ë¤Ç²»¸»¤Ë¥á¥Ã¥»¡¼¥¸¤òÁ÷¤ë¤³¤È¤Ç²»¤ò½Ð¤·¤Æ¤¤¤ë¤è¤¦¤Ç¤¹¡£²»¸»¤ÏWindows¤Ëɸ½à¤ÇÉÕ¤¤¤Æ¤¤¤Þ¤¹¡£MIDIµ¬³Ê¤ÇÄÌ¿®¤¹¤ë°Ù¤ÎWindowsAPI¤¬¤¢¤ë¤³¤È¤â¤ï¤«¤ê¤Þ¤·¤¿¡£
ºî¤êÊý¤òĶ´Êñ¤Ë½ñ¤¯¤È¡¢midiOutOpen´Ø¿ô¤ÇMIDI¥Ç¥Ð¥¤¥¹¤ò³«¤¤¤ÆmidiOutShortMsg´Ø¿ô¤Ç²»¤ò½Ð¤¹Åù¤Î¥á¥Ã¥»¡¼¥¸¤òÁ÷¤Ã¤Æ¡¢»È¤¤½ª¤ï¤Ã¤¿¤émidiOutReset¤·¤ÆmidiOutClose¤Ç¸å»ÏËö´°Î»¤Ç¤¹¡£"MIDI ¥×¥í¥°¥é¥ß¥ó¥°"¤È¤«¤Ç¸¡º÷¤·¤Æ¤âDTM´ØÏ¢¤Ð¤«¤ê¤Ç»È¤¨¤ë¾ðÊó¤Ë¤Ï¤Ê¤«¤Ê¤«Ã©¤êÃ失¤Ê¤¤¤±¤É¡¢¾åµ¤Î´Ø¿ô̾¤Ç¸¡º÷¤¹¤ë¤È¾Ü¤·¤¤¾ðÊó¤¬HIT¤·¤Þ¤¹¡£
·ë²Ì½ÐÍ褿¤Î¤¬¤³¤ì
http://www.k4.dion.ne.jp/~anis7742/anogakki.zip
¼Â¸³¤È¾Î¤·¤Æ±ø¤¤¥³¡¼¥É½ñ¤¤¤Æ¤ë¤Î¤Ç¼Â¹Ô¥Õ¥¡¥¤¥ë¤Î¤ß¤Î¸ø³«¤Ç¤¹¡£
ÁàºîÊýË¡¤Ï°Ê²¼¤ÎÄ̤ê
¡¦º¸¼ê¤Î¥¡¼¤ÇÂбþ¤·¤¿²»³¬¤¬ÌĤ롣
¡¦¢¬¢¥¡¼¤Ç²»¿§¤¬ÀÚ¤êÂØ¤ï¤ë¡£
¡¦¥Þ¥¦¥¹¥Û¥¤¡¼¥ë¤Ç¥ª¥¯¥¿¡¼¥Ö¤¬ÀÚ¤êÂØ¤ï¤ë¡£
¡¦º¸¥Ü¥¿¥ó¤ò²¡¤·¤Ê¤¬¤é¥Þ¥¦¥¹¤ò½ÄÊý¸þ¤Ëư¤«¤¹¤È¥Ô¥Ã¥Á¤¬ÊѤï¤ë¡£
¡¦±¦¥Ü¥¿¥ó¤ò²¡¤·¤Ê¤¬¤é¥Þ¥¦¥¹¤È²£Êý¸þ¤Ëư¤«¤¹¤È¥Ó¥Ö¥é¡¼¥È¤¬¤«¤«¤ë¡£
Ëͤβ¼¼ê¥¯¥½¤Ê±éÁÕ¡£¤³¤ó¤Ê´¶¤¸¤Îɽ¸½¤¬½ÐÍè¤Þ¤¹¡£
http://www.k4.dion.ne.jp/~anis7742/wavemode20090828224419.wav
¢¨µ¬Äê¤ÎMIDI¥Ç¥Ð¥¤¥¹¤¬Microsoft GS Wavetable SW Synth°Ê³°¤Ë¤Ê¤Ã¤Æ¤ë¤È²»¤¬ÌĤé¤Ê¤¤ÉÔ¶ñ¹ç¤¬¤¢¤Ã¤Æ¸¶°ø¤òÄ´ººÃæ¤Ç¤¹¡£¢«Ä¾¤Ã¤¿
¤³¤³¤Þ¤Ç¤ä¤Ã¤Æ¤ß¤Æ¡¢¼¡¤ÎÌäÂ꤬¤¢¤ë¤³¤È¤¬¤ï¤«¤Ã¤¿¡£
1.¥Ç¥Ð¥¤¥¹¤«¤éÆÀ¤é¤ì¤ë¥Õ¥£¡¼¥É¥Ð¥Ã¥¯¤¬¡¢¤½¤ÎÁàºî¤Î·ë²Ì¤È¤·¤Æ½Ð¤ë²»¤·¤«¤Ê¤¤¡£Ä̾ï¤Î³Ú´ï¤Ï¿ÈÂΤȳڴï¤ÎÀÜÅÀ¤Î´¶¿¨¤«¤é¿§¡¹¤Ê¾ðÊó¤òÆÀ¤Æ±éÁÕ¤·¤Æ¤¤¤ë¡£²èÌ̤ò¹©Éפ¹¤ë¤³¤È¤Ç¼ã´³¤Î²þÁ±¤Ï²Äǽ¤À¤¬¡¢¸Â³¦¤¬¤¢¤ë¡£
2.¥¡¼¥Ü¡¼¥É¤Î¥¹¥È¥í¡¼¥¯¤Î¿¼¤µ¤¬Àµ³Î¤Ê¥¿¥¤¥ß¥ó¥°¤Ç¤ÎÁàºî¤ò˸¤²¤ë¡£¥¹¥È¥í¡¼¥¯¤¬Àõ¤¤¥¡¼¥Ü¡¼¥É¤ä¡¢Realforce¤ÎÍͤʱü¤Þ¤Ç²¡¤·ÀÚ¤é¤Ê¤¯¤Æ¤âÈ¿±þ¤¹¤ë¥¡¼¥Ü¡¼¥É¤Ç²þÁ±¤µ¤ì¤ë¤«¤â¡£
3.Áàºî¤·¤Æ¤«¤é²»¤¬ÌĤë¤Þ¤Ç¤Î¥¿¥¤¥à¥é¥°¤¬¤¢¤ë¡£²»¸»¤ä½ÐÎϥǥХ¤¥¹¡¢¤½¤Î¾¥½¥Õ¥È¥¦¥§¥¢Åù¤Ç¤É¤³¤Þ¤Ç²þÁ±½ÐÍè¤ë¤«¡£
¥Þ¥¦¥¹¤È¥¡¼¥Ü¡¼¥É¤òËÜÍè¤ÎÌÜŪ°Ê³°¤Ë»È¤¦¤ï¤±¤À¤«¤é¿§¡¹ÌµÍý¤¬¤¢¤ë¤ï¤±¤Ç¤¹¤Í¡£
ÅÓÃæ·Ð²á¤Ïmixi¤ÇÁ´ÂΤ˸ø³«¤ÎÀßÄê¤Ç½ñ¤¤¤¿¤Î¤Ç¡¢¥¢¥«¥¦¥ó¥È¤ò¤ª»ý¤Á¤ÎÊý¤Ï¤½¤Ã¤Á¤Ç¡£
http://mixi.jp/view_diary.pl?id=1264945935&owner_id=2620995
http://mixi.jp/view_diary.pl?id=1265825769&owner_id=2620995
http://mixi.jp/view_diary.pl?id=1265873603&owner_id=2620995
http://mixi.jp/view_diary.pl?id=1267163178&owner_id=2620995
http://mixi.jp/view_diary.pl?id=1270510815&owner_id=2620995
¤Ä¤Þ¤ê¤Ï¥½¥Õ¥È¥¦¥§¥¢¥¡¼¥Ü¡¼¥É¤òºî¤í¤¦¤Ã¤Æ¤³¤È¤Ç¤¹¡£¤¢¤ì¤ÏMIDI¤È¤¤¤¦¥×¥í¥È¥³¥ë¤Ç²»¸»¤Ë¥á¥Ã¥»¡¼¥¸¤òÁ÷¤ë¤³¤È¤Ç²»¤ò½Ð¤·¤Æ¤¤¤ë¤è¤¦¤Ç¤¹¡£²»¸»¤ÏWindows¤Ëɸ½à¤ÇÉÕ¤¤¤Æ¤¤¤Þ¤¹¡£MIDIµ¬³Ê¤ÇÄÌ¿®¤¹¤ë°Ù¤ÎWindowsAPI¤¬¤¢¤ë¤³¤È¤â¤ï¤«¤ê¤Þ¤·¤¿¡£
ºî¤êÊý¤òĶ´Êñ¤Ë½ñ¤¯¤È¡¢midiOutOpen´Ø¿ô¤ÇMIDI¥Ç¥Ð¥¤¥¹¤ò³«¤¤¤ÆmidiOutShortMsg´Ø¿ô¤Ç²»¤ò½Ð¤¹Åù¤Î¥á¥Ã¥»¡¼¥¸¤òÁ÷¤Ã¤Æ¡¢»È¤¤½ª¤ï¤Ã¤¿¤émidiOutReset¤·¤ÆmidiOutClose¤Ç¸å»ÏËö´°Î»¤Ç¤¹¡£"MIDI ¥×¥í¥°¥é¥ß¥ó¥°"¤È¤«¤Ç¸¡º÷¤·¤Æ¤âDTM´ØÏ¢¤Ð¤«¤ê¤Ç»È¤¨¤ë¾ðÊó¤Ë¤Ï¤Ê¤«¤Ê¤«Ã©¤êÃ失¤Ê¤¤¤±¤É¡¢¾åµ¤Î´Ø¿ô̾¤Ç¸¡º÷¤¹¤ë¤È¾Ü¤·¤¤¾ðÊó¤¬HIT¤·¤Þ¤¹¡£
·ë²Ì½ÐÍ褿¤Î¤¬¤³¤ì
http://www.k4.dion.ne.jp/~anis7742/anogakki.zip
¼Â¸³¤È¾Î¤·¤Æ±ø¤¤¥³¡¼¥É½ñ¤¤¤Æ¤ë¤Î¤Ç¼Â¹Ô¥Õ¥¡¥¤¥ë¤Î¤ß¤Î¸ø³«¤Ç¤¹¡£
ÁàºîÊýË¡¤Ï°Ê²¼¤ÎÄ̤ê
¡¦º¸¼ê¤Î¥¡¼¤ÇÂбþ¤·¤¿²»³¬¤¬ÌĤ롣
¡¦¢¬¢¥¡¼¤Ç²»¿§¤¬ÀÚ¤êÂØ¤ï¤ë¡£
¡¦¥Þ¥¦¥¹¥Û¥¤¡¼¥ë¤Ç¥ª¥¯¥¿¡¼¥Ö¤¬ÀÚ¤êÂØ¤ï¤ë¡£
¡¦º¸¥Ü¥¿¥ó¤ò²¡¤·¤Ê¤¬¤é¥Þ¥¦¥¹¤ò½ÄÊý¸þ¤Ëư¤«¤¹¤È¥Ô¥Ã¥Á¤¬ÊѤï¤ë¡£
¡¦±¦¥Ü¥¿¥ó¤ò²¡¤·¤Ê¤¬¤é¥Þ¥¦¥¹¤È²£Êý¸þ¤Ëư¤«¤¹¤È¥Ó¥Ö¥é¡¼¥È¤¬¤«¤«¤ë¡£
Ëͤβ¼¼ê¥¯¥½¤Ê±éÁÕ¡£¤³¤ó¤Ê´¶¤¸¤Îɽ¸½¤¬½ÐÍè¤Þ¤¹¡£
http://www.k4.dion.ne.jp/~anis7742/wavemode20090828224419.wav
¢¨µ¬Äê¤ÎMIDI¥Ç¥Ð¥¤¥¹¤¬Microsoft GS Wavetable SW Synth°Ê³°¤Ë¤Ê¤Ã¤Æ¤ë¤È²»¤¬ÌĤé¤Ê¤¤ÉÔ¶ñ¹ç¤¬¤¢¤Ã¤Æ¸¶°ø¤òÄ´ººÃæ¤Ç¤¹¡£¢«Ä¾¤Ã¤¿
¤³¤³¤Þ¤Ç¤ä¤Ã¤Æ¤ß¤Æ¡¢¼¡¤ÎÌäÂ꤬¤¢¤ë¤³¤È¤¬¤ï¤«¤Ã¤¿¡£
1.¥Ç¥Ð¥¤¥¹¤«¤éÆÀ¤é¤ì¤ë¥Õ¥£¡¼¥É¥Ð¥Ã¥¯¤¬¡¢¤½¤ÎÁàºî¤Î·ë²Ì¤È¤·¤Æ½Ð¤ë²»¤·¤«¤Ê¤¤¡£Ä̾ï¤Î³Ú´ï¤Ï¿ÈÂΤȳڴï¤ÎÀÜÅÀ¤Î´¶¿¨¤«¤é¿§¡¹¤Ê¾ðÊó¤òÆÀ¤Æ±éÁÕ¤·¤Æ¤¤¤ë¡£²èÌ̤ò¹©Éפ¹¤ë¤³¤È¤Ç¼ã´³¤Î²þÁ±¤Ï²Äǽ¤À¤¬¡¢¸Â³¦¤¬¤¢¤ë¡£
2.¥¡¼¥Ü¡¼¥É¤Î¥¹¥È¥í¡¼¥¯¤Î¿¼¤µ¤¬Àµ³Î¤Ê¥¿¥¤¥ß¥ó¥°¤Ç¤ÎÁàºî¤ò˸¤²¤ë¡£¥¹¥È¥í¡¼¥¯¤¬Àõ¤¤¥¡¼¥Ü¡¼¥É¤ä¡¢Realforce¤ÎÍͤʱü¤Þ¤Ç²¡¤·ÀÚ¤é¤Ê¤¯¤Æ¤âÈ¿±þ¤¹¤ë¥¡¼¥Ü¡¼¥É¤Ç²þÁ±¤µ¤ì¤ë¤«¤â¡£
3.Áàºî¤·¤Æ¤«¤é²»¤¬ÌĤë¤Þ¤Ç¤Î¥¿¥¤¥à¥é¥°¤¬¤¢¤ë¡£²»¸»¤ä½ÐÎϥǥХ¤¥¹¡¢¤½¤Î¾¥½¥Õ¥È¥¦¥§¥¢Åù¤Ç¤É¤³¤Þ¤Ç²þÁ±½ÐÍè¤ë¤«¡£
¥Þ¥¦¥¹¤È¥¡¼¥Ü¡¼¥É¤òËÜÍè¤ÎÌÜŪ°Ê³°¤Ë»È¤¦¤ï¤±¤À¤«¤é¿§¡¹ÌµÍý¤¬¤¢¤ë¤ï¤±¤Ç¤¹¤Í¡£
2009ǯ08·î22Æü
¥á¡¼¥é¡¼¤òÅÅ¿®È¬¹æ¤«¤éSylpheed¤Ë¾è¤ê´¹¤¨¤¿
¥á¡¼¥é¡¼¤òÅÅ¿®È¬¹æ¤«¤éSylpheed¤Ë¾è¤ê´¹¤¨¤¿¡£²¿¸Î¤«¤Ã¤Æ¡©Ë°¤¤¿¤«¤é¡£ÅÅȬ¤Ç²¿¤«ÉÔÊØ¤ÊÅÀ¤äÉÔËþ¤¬¤¢¤Ã¤¿¤ï¤±¤¸¤ã¤Ê¤¤¡£
¥á¡¼¥é¡¼¤ÎÁªÂò¤Î¾ò·ï
¡¦ºÙ¤«¤¤¥á¡¼¥ë¤ÎÁªÊ̤òÁ´¤ÆPOPFile¤ËǤ¤»¤Æ¤¤¤ë¤Î¤Ç¡¢¥Ø¥Ã¥À¤ÎÆâÍÆ¤Ç¥á¡¼¥ë¤ò¿¶¤êʬ¤±¤é¤ì¤ë¤³¤È¡£
¡¦1¥á¡¼¥ë1¥Æ¥¥¹¥È¥Õ¥¡¥¤¥ë¤ÇÊݸ¤µ¤ì¤ë¤³¤È¡£
¡¦·Ú¤¤¤³¤È
¡¦º£¸å¤Î¾è¤ê´¹¤¨¤ËÈ÷¤¨¤Æ¥á¡¼¥ë¤Î¥¤¥ó¥Ý¡¼¥È¡¢¥¨¥¯¥¹¥Ý¡¼¥Èµ¡Ç½¤¬¤¢¤ë¤³¤È
¤Ç¡¢Sylpheed¤Ë·è¤á¤¿¡£
ÅÅȬ¤«¤éSylpheed¤Ø¤Î¥á¡¼¥ë¤ÎÊÑ´¹¤Ï¤Á¤ç¤Á¤ç¤¤¤È°Ê²¼¤Î¤è¤¦¤ÊC#¤Î¥³¡¼¥É¤ò¤³¤µ¤¨¤Æ¥µ¥¯¥Ã¤È´°Î»¡£¸·Ì©¤ËÀµ¤·¤¤¥³¡¼¥É¤«¤Ï¤ï¤«¤é¤Ê¤¤¤±¤É¡¢¾å¼ê¤¯¤¤¤Ã¤¿¤«¤é¤è¤·¡£
LinuxͳÍè¤Î¥á¡¼¥é¡¼¤À¤«¤é¤Ê¤Î¤«¡¢¥¡¼¥Ð¥¤¥ó¥ÉÅù¤ÎºÙ¤«¤¤µóư¤¬Windows¥¢¥×¥ê¤È°ã¤Ã¤Æ¸ÍÏǤ¦¤±¤É¡¢Æ°ºî¤¬·Ú²÷¤Ç¤¤¤¤¤È»×¤¦¡£
¥á¡¼¥é¡¼¤ÎÁªÂò¤Î¾ò·ï
¡¦ºÙ¤«¤¤¥á¡¼¥ë¤ÎÁªÊ̤òÁ´¤ÆPOPFile¤ËǤ¤»¤Æ¤¤¤ë¤Î¤Ç¡¢¥Ø¥Ã¥À¤ÎÆâÍÆ¤Ç¥á¡¼¥ë¤ò¿¶¤êʬ¤±¤é¤ì¤ë¤³¤È¡£
¡¦1¥á¡¼¥ë1¥Æ¥¥¹¥È¥Õ¥¡¥¤¥ë¤ÇÊݸ¤µ¤ì¤ë¤³¤È¡£
¡¦·Ú¤¤¤³¤È
¡¦º£¸å¤Î¾è¤ê´¹¤¨¤ËÈ÷¤¨¤Æ¥á¡¼¥ë¤Î¥¤¥ó¥Ý¡¼¥È¡¢¥¨¥¯¥¹¥Ý¡¼¥Èµ¡Ç½¤¬¤¢¤ë¤³¤È
¤Ç¡¢Sylpheed¤Ë·è¤á¤¿¡£
ÅÅȬ¤«¤éSylpheed¤Ø¤Î¥á¡¼¥ë¤ÎÊÑ´¹¤Ï¤Á¤ç¤Á¤ç¤¤¤È°Ê²¼¤Î¤è¤¦¤ÊC#¤Î¥³¡¼¥É¤ò¤³¤µ¤¨¤Æ¥µ¥¯¥Ã¤È´°Î»¡£¸·Ì©¤ËÀµ¤·¤¤¥³¡¼¥É¤«¤Ï¤ï¤«¤é¤Ê¤¤¤±¤É¡¢¾å¼ê¤¯¤¤¤Ã¤¿¤«¤é¤è¤·¡£
using System.IO;
using System.Text;
class Program {
static void Main(string[] args) {
int fileNumber = 0;
Encoding enc = Encoding.GetEncoding("Shift-Jis");
foreach(string mailFile in Directory.GetFiles(
"ÅÅȬ¤Î¥á¡¼¥ë¥Õ¥©¥ë¥À",
"*.txt",
SearchOption.AllDirectories)) {
string mailTxt = File.ReadAllText(mailFile, enc);
mailTxt = mailTxt.Replace("--------\r\n", "\r\n");
File.WriteAllText(
Path.Combine("Sylpheed¤Î¥á¡¼¥ë¥Õ¥©¥ë¥À", fileNumber.ToString()),
mailTxt,
enc);
fileNumber++;
}
}
}
LinuxͳÍè¤Î¥á¡¼¥é¡¼¤À¤«¤é¤Ê¤Î¤«¡¢¥¡¼¥Ð¥¤¥ó¥ÉÅù¤ÎºÙ¤«¤¤µóư¤¬Windows¥¢¥×¥ê¤È°ã¤Ã¤Æ¸ÍÏǤ¦¤±¤É¡¢Æ°ºî¤¬·Ú²÷¤Ç¤¤¤¤¤È»×¤¦¡£
2009ǯ08·î21Æü
Èó¾ïÃó·¿ÉÕ䵻楢¥×¥êSPDÇÛÉÛ
¾ïÃ󤻤º¤ËÊÉ»æ¤ËÉÕ䵤òËä¤á¹þ¤àÈó¾ïÃó·¿ÉÕ䵻楢¥×¥êSPD¤ÎÇÛÉÛ¥¨¥ó¥È¥ê¡¼¤Ç¤¹¡£
Vector¤Î¿·Ã好¥Õ¥È¥ì¥Ó¥å¡¼¤ÇSPD¤¬¾Ò²ð¤µ¤ì¤Þ¤·¤¿¡£

¡ÚÆÃħ¡Û
¡¦¾ïÃ󤻤º¤ËÉÕ䵤òÊÉ»æ¤ËÊÝ»ý¤¹¤ë
¡¦ÊÉ»æ¤ÎÇÛÃ֤ϳÈÂç¤À¤±¤Ç¤Ê¤¯Ê¤٤ÆÉ½¼¨¡¢Ãæ±û¤Ëɽ¼¨¤Ë¤âÂбþ¡£
¡¡³ÈÂçɽ¼¨¤Ç¤Î²è¼Á¤ÎÄã²¼¤¬µ¤¤Ë¤Ê¤ëÊý¤Ë¤â¤´ÍøÍÑ失¤Þ¤¹¡£
¡¦ÉÕ䵤ÎȾƩÌÀ¤Ç¤ÎÉÁ²è¤ËÂбþ¡£¥Ç¥¹¥¯¥È¥Ã¥×¤Î°µÇ÷´¶¤òϤ餲¤Þ¤¹¡£
¡¦ÉÕ䵤´¤È¤Ë¥Õ¥©¥ó¥È¤Èʸ»ú¿§¡¢ÇØ·Ê¿§¤ò»ØÄê²Äǽ¡£
¡¦ÉÕ䵤νŤÍŽ¤ê¤¬²Äǽ¡£
¡¦ÉÕ䵤ΰÌÃÖ¤ò·è¤á¤ë°Ù¤ÎÌÌÅݤÊÁàºî¤¬¤¢¤ê¤Þ¤»¤ó¡£ÉÕ䵤òÊÔ½¸¤·¤Æ¤¤¤ë¥¦¥£¥ó¥É¥¦¤òÄ¥¤ê¤¿¤¤°ÌÃÖ¤ËD&D¤¹¤ë¤À¤±¡£¸«¤¿¤Þ¤Þ¤Î¾õÂÖ¤ÇÊÉ»æ¤ËÄ¥¤êÉÕ¤¤Þ¤¹¡£
¡ÚÁÛÄê´Ä¶¡Û
Windows2000°Ê¹ß,Microsoft .NET Framework 2.0
¡Úưºî³Îǧ´Ä¶¡Û
WindowsXP SP3,Microsoft .NET Framework 2.0
¡ÚºÇ¿·ÈÇDL¡Û
SPD_Ver_1_82.zip(35.6KB)
Ver 1.81 ¢ª Ver 1.82
¡¦¥Ý¡¼¥¿¥Ö¥ë¥â¡¼¥É»þ¤Ë°õºþÈϰϻØÄê¥Õ¥©¡¼¥à¤ÇÈϰϤ¬Àµ¤·¤¯ÁªÂò¤µ¤ì¤Ê¤¤ÌäÂê¤ò½¤Àµ¡£
¡¦°õºþÈϰϻØÄê¥Õ¥©¡¼¥à¤Î°ÌÃÖ¤òÊݸ¤¹¤ë¤è¤¦¤ËÊѹ¹¡£
Ver 1.80 ¢ª Ver 1.81
¡¦¥Þ¥¦¥¹¥Û¥¤¡¼¥ë¤ÇÉÔÆ©ÌÀÅÙ¤òÊѹ¹¤¹¤ëºÝ¤Ë¡¢Àµ¤·¤¯10%¹ï¤ß¤Ë¤Ê¤é¤Ê¤¤ÉÔ¶ñ¹ç¤ò½¤Àµ¡£
¡¦°õºþ»þ¤Ë°õºþÈϰϤò»ØÄꤹ¤ë¥Õ¥©¡¼¥à¤òɽ¼¨¤¹¤ë¤è¤¦¤ËÊѹ¹¡£
SPD_Ver_1_80.zip(33.7KB)
Ver 1.76 ¢ª Ver 1.80
¡¦²èÌ̤òÀÚ¤ê¼è¤Ã¤ÆÉÕ䵤ˤ¹¤ëµ¡Ç½¤ò¼ÂÁõ¡£
¡¦ÉÕäµ¤ÎÆ©ÌÀÅÙ¤ò¸ÄÊ̤˻ØÄê½ÐÍè¤ë¤è¤¦¤ËÊѹ¹¡£
¡¦¥¿¥¹¥¯¥È¥ì¥¤¤Î¥¢¥¤¥³¥ó¤Î±¦¥¯¥ê¥Ã¥¯¥á¥Ë¥å¡¼¤«¤éÊÉ»æ¤òÊѹ¹½ÐÍè¤ëµ¡Ç½¤ò¼ÂÁõ¡£
¡¦Á°²ó½ªÎ»»þ¤«¤éÊɻ椬Êѹ¹¤µ¤ì¤Æ¤¤¤ë»þ¤Ë¤½¤ì¤òÈ¿±Ç¤¹¤ëµ¡Ç½¤ò¼ÂÁõ¡£
¡¦¥Ý¡¼¥¿¥Ö¥ë¥â¡¼¥É¤ò¼ÂÁõ¡£
¡¦ÍøÍѵ¬Ìó¤ò²þÄê¡£
¥½¡¼¥¹¥³¡¼¥É(Visual C# 2008 Express Edition)
SPD_SRC_Ver_1_82.zip(56.5KB)
¡Ú¥¿¥¹¥¯¡Û
¡¦°õºþµ¡Ç½¤³¤ó¤Ê¤ó¤Ç¤¤¤¤¤Î¤«¤Ê¤¡¤È¤«¹Í¤¨Ãæ¡£
Vector¤Î¿·Ã好¥Õ¥È¥ì¥Ó¥å¡¼¤ÇSPD¤¬¾Ò²ð¤µ¤ì¤Þ¤·¤¿¡£

¡ÚÆÃħ¡Û
¡¦¾ïÃ󤻤º¤ËÉÕ䵤òÊÉ»æ¤ËÊÝ»ý¤¹¤ë
¡¦ÊÉ»æ¤ÎÇÛÃ֤ϳÈÂç¤À¤±¤Ç¤Ê¤¯Ê¤٤ÆÉ½¼¨¡¢Ãæ±û¤Ëɽ¼¨¤Ë¤âÂбþ¡£
¡¡³ÈÂçɽ¼¨¤Ç¤Î²è¼Á¤ÎÄã²¼¤¬µ¤¤Ë¤Ê¤ëÊý¤Ë¤â¤´ÍøÍÑ失¤Þ¤¹¡£
¡¦ÉÕ䵤ÎȾƩÌÀ¤Ç¤ÎÉÁ²è¤ËÂбþ¡£¥Ç¥¹¥¯¥È¥Ã¥×¤Î°µÇ÷´¶¤òϤ餲¤Þ¤¹¡£
¡¦ÉÕ䵤´¤È¤Ë¥Õ¥©¥ó¥È¤Èʸ»ú¿§¡¢ÇØ·Ê¿§¤ò»ØÄê²Äǽ¡£
¡¦ÉÕ䵤νŤÍŽ¤ê¤¬²Äǽ¡£
¡¦ÉÕ䵤ΰÌÃÖ¤ò·è¤á¤ë°Ù¤ÎÌÌÅݤÊÁàºî¤¬¤¢¤ê¤Þ¤»¤ó¡£ÉÕ䵤òÊÔ½¸¤·¤Æ¤¤¤ë¥¦¥£¥ó¥É¥¦¤òÄ¥¤ê¤¿¤¤°ÌÃÖ¤ËD&D¤¹¤ë¤À¤±¡£¸«¤¿¤Þ¤Þ¤Î¾õÂÖ¤ÇÊÉ»æ¤ËÄ¥¤êÉÕ¤¤Þ¤¹¡£
¡ÚÁÛÄê´Ä¶¡Û
Windows2000°Ê¹ß,Microsoft .NET Framework 2.0
¡Úưºî³Îǧ´Ä¶¡Û
WindowsXP SP3,Microsoft .NET Framework 2.0
¡ÚºÇ¿·ÈÇDL¡Û
SPD_Ver_1_82.zip(35.6KB)
Ver 1.81 ¢ª Ver 1.82
¡¦¥Ý¡¼¥¿¥Ö¥ë¥â¡¼¥É»þ¤Ë°õºþÈϰϻØÄê¥Õ¥©¡¼¥à¤ÇÈϰϤ¬Àµ¤·¤¯ÁªÂò¤µ¤ì¤Ê¤¤ÌäÂê¤ò½¤Àµ¡£
¡¦°õºþÈϰϻØÄê¥Õ¥©¡¼¥à¤Î°ÌÃÖ¤òÊݸ¤¹¤ë¤è¤¦¤ËÊѹ¹¡£
Ver 1.80 ¢ª Ver 1.81
¡¦¥Þ¥¦¥¹¥Û¥¤¡¼¥ë¤ÇÉÔÆ©ÌÀÅÙ¤òÊѹ¹¤¹¤ëºÝ¤Ë¡¢Àµ¤·¤¯10%¹ï¤ß¤Ë¤Ê¤é¤Ê¤¤ÉÔ¶ñ¹ç¤ò½¤Àµ¡£
¡¦°õºþ»þ¤Ë°õºþÈϰϤò»ØÄꤹ¤ë¥Õ¥©¡¼¥à¤òɽ¼¨¤¹¤ë¤è¤¦¤ËÊѹ¹¡£
SPD_Ver_1_80.zip(33.7KB)
Ver 1.76 ¢ª Ver 1.80
¡¦²èÌ̤òÀÚ¤ê¼è¤Ã¤ÆÉÕ䵤ˤ¹¤ëµ¡Ç½¤ò¼ÂÁõ¡£
¡¦ÉÕäµ¤ÎÆ©ÌÀÅÙ¤ò¸ÄÊ̤˻ØÄê½ÐÍè¤ë¤è¤¦¤ËÊѹ¹¡£
¡¦¥¿¥¹¥¯¥È¥ì¥¤¤Î¥¢¥¤¥³¥ó¤Î±¦¥¯¥ê¥Ã¥¯¥á¥Ë¥å¡¼¤«¤éÊÉ»æ¤òÊѹ¹½ÐÍè¤ëµ¡Ç½¤ò¼ÂÁõ¡£
¡¦Á°²ó½ªÎ»»þ¤«¤éÊɻ椬Êѹ¹¤µ¤ì¤Æ¤¤¤ë»þ¤Ë¤½¤ì¤òÈ¿±Ç¤¹¤ëµ¡Ç½¤ò¼ÂÁõ¡£
¡¦¥Ý¡¼¥¿¥Ö¥ë¥â¡¼¥É¤ò¼ÂÁõ¡£
¡¦ÍøÍѵ¬Ìó¤ò²þÄê¡£
¥½¡¼¥¹¥³¡¼¥É(Visual C# 2008 Express Edition)
SPD_SRC_Ver_1_82.zip(56.5KB)
¡Ú¥¿¥¹¥¯¡Û
¡¦°õºþµ¡Ç½¤³¤ó¤Ê¤ó¤Ç¤¤¤¤¤Î¤«¤Ê¤¡¤È¤«¹Í¤¨Ãæ¡£
2009ǯ08·î07Æü
¤É¤¦½ñ¤¯?org|Twitter¤Ø¤ÎÅê¹Æ
GoogleReader¤ÇRSS¤Î¥Á¥§¥Ã¥¯¤ò¤·¤Æ¤¤¤¿¤é¤É¤¦½ñ¤¯¡©¤Î¥Õ¥£¡¼¥É¤¬¹¹¿·¤µ¤ì¤¿¤Î¤Ç¡¢°ÊÁ°½ñ¤¤¤¿¥³¡¼¥É¤ò°ú¤ÃÄ¥¤ê½Ð¤·¤Æ¤Á¤ç¤Á¤ç¤¤¤È¼ê¤ò²Ã¤¨¤Æ¥«¥«¥Ã¤ÈÅê¹Æ¡£
¿¿¤Î°ìÈÖ¾è¤ê¥²¥Ã¥È¥©¡ª
http://ja.doukaku.org/comment/9448/
¿¿¤Î°ìÈÖ¾è¤ê¥²¥Ã¥È¥©¡ª
http://ja.doukaku.org/comment/9448/
2009ǯ07·î07Æü
¤Á¤ç¤Ã¤ÈC#¤Ç¥Ñ¥¹¥ï¡¼¥É¤òÇÁ¤¤¤Æ¤ß¤¿¡£
¥Ñ¥¹¥ï¡¼¥ÉÆþÎÏÍѤΥƥ¥¹¥È¥Ü¥Ã¥¯¥¹¤Ç¡¢ÆþÎϤ·¤Æ¤â"******"¤È¤·¤«É½¼¨¤µ¤ì¤Ê¤¤¤â¤Î¤¬¤¢¤ê¤Þ¤¹¤è¤Í¡£¤¢¤ì¡¢ÉÔÊØ¤Ç¤¹¤è¤Í¡£¼«Ê¬¤ÇÆþÎϤ·¤¿¤Î¤Ë¸«¤¨¤Ê¤¤¤Ê¤ó¤ÆÍýÉԿԤǤ¹¤è¤Í¡£
¤½¤³¤Ç¡¢ÌµÍý¤ä¤êÆþÎÏÆâÍÆ¤¬¸«¤¨¤ëÍͤˤ¹¤ë¥×¥í¥°¥é¥à¤ò½ñ¤¤¤Æ¤ß¤Þ¤·¤¿¡£VectorÊÕ¤ê¤òõ¤»¤Ð¤¢¤ë¤è¤¦¤Êµ¤¤¬¤¹¤ë¤±¤Éµ¤¤Ë¤·¤¿¤éÉ餱¤Ç¤·¤ç¤¦¡£
¼Â¤Ï¥¢¥ì¡¢¤¿¤À¤Î¥Æ¥¥¹¥È¥Ü¥Ã¥¯¥¹¤Ê¤Î¤Ç¥á¥Ã¥»¡¼¥¸Åꤲ¤ì¤Ð¹¥¤¤Ê¤è¤¦¤ËÏ®¤ì¤Á¤ã¤¦¤ó¤Ç¤¹¤è¤Í¡£¤Ç¡¢º£²óÅꤲ¤¿¤Î¤ÏEM_SETPASSWORDCHAR¡£EnumChildWindows´Ø¿ô¤Ç¥¦¥£¥ó¥É¥¦¤òÎóµó¤·¤Æ¼êÅö¤¿¤ê¼¡Âè¤ËPostMessage¤·¤Æ¤Þ¤¹¡£
¤Ï¤¤¡¢¥³¡¼¥É¤Ç¤¹¡£
¤³¤ì¤Ç¥Ñ¥¹¥ï¡¼¥É´Ý¸«¤¨¤Ê¤ó¤Ç¤¹¤Ã¤Æ¤Ð¡£
¤½¤³¤Ç¡¢ÌµÍý¤ä¤êÆþÎÏÆâÍÆ¤¬¸«¤¨¤ëÍͤˤ¹¤ë¥×¥í¥°¥é¥à¤ò½ñ¤¤¤Æ¤ß¤Þ¤·¤¿¡£VectorÊÕ¤ê¤òõ¤»¤Ð¤¢¤ë¤è¤¦¤Êµ¤¤¬¤¹¤ë¤±¤Éµ¤¤Ë¤·¤¿¤éÉ餱¤Ç¤·¤ç¤¦¡£
¼Â¤Ï¥¢¥ì¡¢¤¿¤À¤Î¥Æ¥¥¹¥È¥Ü¥Ã¥¯¥¹¤Ê¤Î¤Ç¥á¥Ã¥»¡¼¥¸Åꤲ¤ì¤Ð¹¥¤¤Ê¤è¤¦¤ËÏ®¤ì¤Á¤ã¤¦¤ó¤Ç¤¹¤è¤Í¡£¤Ç¡¢º£²óÅꤲ¤¿¤Î¤ÏEM_SETPASSWORDCHAR¡£EnumChildWindows´Ø¿ô¤Ç¥¦¥£¥ó¥É¥¦¤òÎóµó¤·¤Æ¼êÅö¤¿¤ê¼¡Âè¤ËPostMessage¤·¤Æ¤Þ¤¹¡£
¤Ï¤¤¡¢¥³¡¼¥É¤Ç¤¹¡£
using System;
using System.Runtime.InteropServices;
namespace ConsoleApplication1 {
class Program {
const int EM_SETPASSWORDCHAR = 0xCC;
delegate int WNDENUMPROC(IntPtr hwnd, int lParam);
[DllImport("user32.dll")]
private static extern int EnumChildWindows(
IntPtr hWndParent,
WNDENUMPROC lpEnumFunc,
int lParam);
[DllImport("user32.dll")]
private static extern int PostMessage(
IntPtr hwnd,
int wMsg,
int wParam,
int lParam);
static void Main(string[] args) {
EnumChildWindows(IntPtr.Zero, EnumWindowsProc, 0);
}
static int EnumWindowsProc(IntPtr hWndParent, int lParam) {
PostMessage(hWndParent, EM_SETPASSWORDCHAR, 0, 0);
EnumChildWindows(hWndParent, EnumWindowsProc, 0);
return 1;
}
}
}
¤³¤ì¤Ç¥Ñ¥¹¥ï¡¼¥É´Ý¸«¤¨¤Ê¤ó¤Ç¤¹¤Ã¤Æ¤Ð¡£
2009ǯ07·î03Æü
µÕP/Invoke¤ò¶î»È¤·¤ÆTTBase¤Î¥×¥é¥°¥¤¥ó¤òºî¤ì¤ë¤«¡©
TTBase http://ttbase.sourceforge.jp/
µÕP/Invoke http://www.artonx.org/diary/20081124.html#p01
¤³¤ì¤ÇC#¤ÇTTBase¤Î¥×¥é¥°¥¤¥óºî¤ì¤ë¤ó¤¸¤ã¤Í¡©¤È»×¤Ã¤¿¡£
TTBase.cs TTBase¤Ç»ÈÍѤ¹¤ë¹½Â¤ÂΤȤ«Äê¿ô¤È¤«
Class1.cs TTBase¤Ë¸ø³«¤¹¤ë¥á¥½¥Ã¥É¤ò¼ÂÁõ
¾å¤Î¥³¡¼¥É¤ò¥Ó¥ë¥É¤·¤¿¤é
¤ÇIL¤Ë¤¹¤ë¡£
µÕP/Invoke¤ò»²¹Í¤ËIL¤òÊÔ½¸
¤ÈIL¤«¤éDLL¤òºîÀ®¡£¥á¥Ã¥»¡¼¥¸¤Î°ÕÌ£¤Ï¤è¤¯¤ï¤«¤é¤Ê¤¤¤±¤É¡¢Â¿Ê¬À®¸ù¤·¤Æ¤ë¡£
¤³¤ì¤Ç½ÐÍ褿DLL¤òTTBase¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥³¥Ô¡¼¤·¤ÆTTBase¤òµ¯Æ°¤¹¤ë¤â¡Ä¥×¥é¥°¥¤¥ó¤È¤·¤ÆÇ§¼±¤µ¤ì¤Ê¤¤¡£
¤É¤³¤¬¾å¼ê¤¯¹Ô¤Ã¤Æ¤Ê¤¤¤Î¤«¤â¤ï¤«¤é¤Ê¤¤¾õÂÖ¡£
http://twitter.com/takeshik/statuses/2419234928
¤È¤«¸À¤ï¤ì¤¿¤±¤ÉC++/CLI¤È¤«¥¥â¤¤¤·¡£
http://twitter.com/takeshik/statuses/2419254967
¤È¤«ÆÍ¤Ã¹þ¤Þ¤ì¤¿¤±¤É¤½¤ÎÄ̤ê¤À¤È»×¤¦¡£
C#¤Ç¤ä¤ë¤³¤È¤Ë°ÕÌ£¤¬¤¢¤ë¤Î¤Ç¤¹¤è¡£C#²Ä°¦¤¤¤è¡¢C#²Ä°¦¤¤¡£
¤Ç¤âC#¤Ç½ÐÍè¤ÆÌµ¤¤¤«¤é²¿¤Î°ÕÌ£¤â̵¤¤¤È¤¤¤¦¡Ä¡£
µÕP/Invoke http://www.artonx.org/diary/20081124.html#p01
¤³¤ì¤ÇC#¤ÇTTBase¤Î¥×¥é¥°¥¤¥óºî¤ì¤ë¤ó¤¸¤ã¤Í¡©¤È»×¤Ã¤¿¡£
TTBase.cs TTBase¤Ç»ÈÍѤ¹¤ë¹½Â¤ÂΤȤ«Äê¿ô¤È¤«
using System;
using System.Runtime.InteropServices;
namespace TTBasePlugInTest {
//¥×¥é¥°¥¤¥ó¤Î¥í¡¼¥É¥¿¥¤¥×
public enum LoadType {
ptAlwayLoad = 0,
ptLoadAtUse = 1,
ptSpecViolation = 0xFFFF
}
//¥á¥Ë¥å¡¼¤Ë´Ø¤¹¤ëÄê¿ô
public enum Menu {
dmNone = 0,
dmSystemMenu = 1,
dmToolMenu = 2,
dmHotKeyMenu = 4,
dmMenuChecked = 8
}
public enum LogOut {
elNever = 0,
elError = 1,
elWarning = 2,
elInfo = 3,
elDebug = 4
}
[StructLayout(LayoutKind.Sequential,CharSet = CharSet.Ansi)]
public struct PLUGIN_COMMAND_INFO {
[MarshalAs(UnmanagedType.LPStr)]
public string Name;
[MarshalAs(UnmanagedType.LPStr)]
public string Caption;
public int CommandID;
public int Attr;
public int ResID;
public int DispMenu;
public uint TimerInterval;
public uint TimerCounter;
}
[StructLayout(LayoutKind.Sequential,CharSet= CharSet.Ansi)]
public struct PLUGIN_INFO {
public ushort NeedVersion;
[MarshalAs(UnmanagedType.LPStr)]
public string Name;
[MarshalAs(UnmanagedType.LPStr)]
public string FileName;
public ushort PluginType;
public uint VersionMS;
public uint VersionLS;
public uint CommandCount;
[MarshalAs(UnmanagedType.LPStruct)]
public IntPtr Commands;
//public PLUGIN_COMMAND_INFO Commands;
public uint LoadTime;
}
}
Class1.cs TTBase¤Ë¸ø³«¤¹¤ë¥á¥½¥Ã¥É¤ò¼ÂÁõ
using System;
using System.Runtime.InteropServices;
namespace TTBasePlugInTest {
public class Class1 {
public static IntPtr TTBEVent_InitPluginInfo(string PluginFilename) {
PLUGIN_INFO r = new PLUGIN_INFO();
r.FileName = PluginFilename;
r.NeedVersion = 0;
r.Name = "¥Æ¥¹¥È";
r.PluginType = (int)LoadType.ptAlwayLoad;
r.CommandCount = 1;
PLUGIN_COMMAND_INFO pci = new PLUGIN_COMMAND_INFO();
pci.Name = "test";
pci.Caption = "¤Æ¤¹¤Æ¤¹¡¢¥Æ¥¹¥È¤Î¥Æ¥¹¥È¤Ç¤¹";
pci.CommandID = 0;
pci.DispMenu = (int)(Menu.dmToolMenu | Menu.dmHotKeyMenu);
IntPtr pciPtr = Marshal.AllocHGlobal(Marshal.SizeOf(pci));
Marshal.StructureToPtr(pci, pciPtr, false);
r.Commands = pciPtr;
//r.Commands = pci;
IntPtr iPtr = Marshal.AllocHGlobal(Marshal.SizeOf(r));
Marshal.StructureToPtr(r, iPtr, false);
return iPtr;
}
public static void TTBEvent_FreePluginInfo(IntPtr PluginInfo) {
Marshal.FreeHGlobal(PluginInfo);
}
public static int TTBEvent_Init(string PluginFilename, int hPlugin) {
return 1;
}
public static void TTBEvent_Unload() {
}
static int i;
public static int TTBEvent_Execute(int CommandID, IntPtr hWnd) {
i++;
System.Windows.Forms.MessageBox.Show(i.ToString());
return 1;
}
public static void TTBEvent_WindowsHook(int Msg, int wParam, int lParam) {
}
}
}
¾å¤Î¥³¡¼¥É¤ò¥Ó¥ë¥É¤·¤¿¤é
D:\My Documents\Visual Studio 2008\Projects\TTBasePlugInTest\TTBasePlugInTest\bi
n\Release>ildasm /OUT=TTBasePlugInTest.il TTBasePlugInTest.dll
¤ÇIL¤Ë¤¹¤ë¡£
µÕP/Invoke¤ò»²¹Í¤ËIL¤òÊÔ½¸
D:\My Documents\Visual Studio 2008\Projects\TTBasePlugInTest\TTBasePlugInTest\bi
n\Release>c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\ilasm.exe /DLL TTBasePlu
gInTest.il
Microsoft (R) .NET Framework IL Assembler. Version 2.0.50727.3053
Copyright (c) Microsoft Corporation. All rights reserved.
Assembling 'TTBasePlugInTest.il' to DLL --> 'TTBasePlugInTest.dll'
Source file is ANSI
Assembled method TTBasePlugInTest.Class1::TTBEVent_InitPluginInfo
Assembled method TTBasePlugInTest.Class1::TTBEvent_FreePluginInfo
Assembled method TTBasePlugInTest.Class1::TTBEvent_Init
Assembled method TTBasePlugInTest.Class1::TTBEvent_Unload
Assembled method TTBasePlugInTest.Class1::TTBEvent_Execute
Assembled method TTBasePlugInTest.Class1::TTBEvent_WindowsHook
Assembled method TTBasePlugInTest.Class1::.ctor
Creating PE file
Emitting classes:
Class 1: TTBasePlugInTest.Class1
Class 2: TTBasePlugInTest.PLUGIN_INFO
Class 3: TTBasePlugInTest.PLUGIN_COMMAND_INFO
Class 4: TTBasePlugInTest.LoadType
Class 5: TTBasePlugInTest.Menu
Class 6: TTBasePlugInTest.LogOut
Emitting fields and methods:
Global
Class 1 Fields: 1; Methods: 7;
Class 2 Fields: 9;
Class 3 Fields: 8;
Class 4 Fields: 4;
Class 5 Fields: 6;
Class 6 Fields: 6;
Resolving local member refs: 13 -> 13 defs, 0 refs, 0 unresolved
Emitting events and properties:
Global
Class 1
Class 2
Class 3
Class 4
Class 5
Class 6
Resolving local member refs: 0 -> 0 defs, 0 refs, 0 unresolved
Writing PE file
Operation completed successfully
¤ÈIL¤«¤éDLL¤òºîÀ®¡£¥á¥Ã¥»¡¼¥¸¤Î°ÕÌ£¤Ï¤è¤¯¤ï¤«¤é¤Ê¤¤¤±¤É¡¢Â¿Ê¬À®¸ù¤·¤Æ¤ë¡£
¤³¤ì¤Ç½ÐÍ褿DLL¤òTTBase¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥³¥Ô¡¼¤·¤ÆTTBase¤òµ¯Æ°¤¹¤ë¤â¡Ä¥×¥é¥°¥¤¥ó¤È¤·¤ÆÇ§¼±¤µ¤ì¤Ê¤¤¡£
¤É¤³¤¬¾å¼ê¤¯¹Ô¤Ã¤Æ¤Ê¤¤¤Î¤«¤â¤ï¤«¤é¤Ê¤¤¾õÂÖ¡£
http://twitter.com/takeshik/statuses/2419234928
¤È¤«¸À¤ï¤ì¤¿¤±¤ÉC++/CLI¤È¤«¥¥â¤¤¤·¡£
http://twitter.com/takeshik/statuses/2419254967
¤È¤«ÆÍ¤Ã¹þ¤Þ¤ì¤¿¤±¤É¤½¤ÎÄ̤ê¤À¤È»×¤¦¡£
C#¤Ç¤ä¤ë¤³¤È¤Ë°ÕÌ£¤¬¤¢¤ë¤Î¤Ç¤¹¤è¡£C#²Ä°¦¤¤¤è¡¢C#²Ä°¦¤¤¡£
¤Ç¤âC#¤Ç½ÐÍè¤ÆÌµ¤¤¤«¤é²¿¤Î°ÕÌ£¤â̵¤¤¤È¤¤¤¦¡Ä¡£
2009ǯ06·î10Æü
Twitter¤ËRSS¤Î¥Õ¥£¡¼¥É¤ò¥Ý¥¹¥È¤·¤Æ³§¤Ëɾ²Á¤·¤Æ¤â¤é¤¦BOT¤òºî¤Ã¤Æ¤ß¤¿
http://twitter.com/anis774_feed
¥Õ¥©¥í¡¼¤¹¤ë¤ÈTL¤ËRSS¤Î¥¨¥ó¥È¥ê¤¬Åê¹Æ¤µ¤ì¤Þ¤¹¡£
¡ú¤Î¿ô¤¬É¾²Á¤Î¾õÂÖ¤òɽ¤·¤Þ¤¹¡£
¡¡¡¡@anis774_feed + ¥¿¥¤¥È¥ë
¤Ç¥¨¥ó¥È¥ê¤Îɾ²Á¤¬¾å¤¬¤ê¤Þ¤¹¡£
¡¡¡¡@anis774_feed - ¥¿¥¤¥È¥ë
¤Ç¥¨¥ó¥È¥ê¤Îɾ²Á¤¬²¼¤¬¤ê¤Þ¤¹¡£
¡¡¡¡@anis774_feed add ¥Õ¥£¡¼¥É¤ÎURL
¤Ç¥Õ¥£¡¼¥É¤òÅÐÏ¿¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¥¨¥ó¥È¥ê¤Îɾ²Á¤Ï¥Ù¥¤¥ºÍýÏÀ¤Çµá¤á¤é¤ì¤ë¤Î¤Ç¡¢¿·¤·¤¤¥¨¥ó¥È¥ê¤Îɾ²Á¤¬¼¡Âè¤ËºÇŬ²½¤µ¤ì¤Æ¤¤¤¯»ÅÁȤߤǤ¹¡£
URL¤¬Ã»½Ì¤µ¤ì¤Æadd¥³¥Þ¥ó¥É¤¬¼ºÇÔ¤¹¤ë¤ó¤À¤±¤É¡©
@anis774_feed¤ÏhÈ´¤¤òÍý²ò¤·¤Þ¤¹¡£URL¤òhÈ´¤¤Ë¤·¤ÆURL¤Îû½Ì¤ò²óÈò¤·¤Æ²¼¤µ¤¤¡£
¥Õ¥©¥í¡¼¤¹¤ë¤ÈTL¤ËRSS¤Î¥¨¥ó¥È¥ê¤¬Åê¹Æ¤µ¤ì¤Þ¤¹¡£
¡ú¤Î¿ô¤¬É¾²Á¤Î¾õÂÖ¤òɽ¤·¤Þ¤¹¡£
¡¡¡¡@anis774_feed + ¥¿¥¤¥È¥ë
¤Ç¥¨¥ó¥È¥ê¤Îɾ²Á¤¬¾å¤¬¤ê¤Þ¤¹¡£
¡¡¡¡@anis774_feed - ¥¿¥¤¥È¥ë
¤Ç¥¨¥ó¥È¥ê¤Îɾ²Á¤¬²¼¤¬¤ê¤Þ¤¹¡£
¡¡¡¡@anis774_feed add ¥Õ¥£¡¼¥É¤ÎURL
¤Ç¥Õ¥£¡¼¥É¤òÅÐÏ¿¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¥¨¥ó¥È¥ê¤Îɾ²Á¤Ï¥Ù¥¤¥ºÍýÏÀ¤Çµá¤á¤é¤ì¤ë¤Î¤Ç¡¢¿·¤·¤¤¥¨¥ó¥È¥ê¤Îɾ²Á¤¬¼¡Âè¤ËºÇŬ²½¤µ¤ì¤Æ¤¤¤¯»ÅÁȤߤǤ¹¡£
URL¤¬Ã»½Ì¤µ¤ì¤Æadd¥³¥Þ¥ó¥É¤¬¼ºÇÔ¤¹¤ë¤ó¤À¤±¤É¡©
@anis774_feed¤ÏhÈ´¤¤òÍý²ò¤·¤Þ¤¹¡£URL¤òhÈ´¤¤Ë¤·¤ÆURL¤Îû½Ì¤ò²óÈò¤·¤Æ²¼¤µ¤¤¡£
2009ǯ06·î01Æü
2009ǯ05·î19Æü
ºÇ´ó¤Î¼«Å¾¼Ö²°¤µ¤ó¤Ë¹Ô¤Ã¤Æ¤ß¤¿
±Ñ¼°¥Ð¥ë¥ÖÍѤΥݥó¥×¤ò»ý¤Ã¤Æ¤¤¤Ê¤¤¤¿¤á¡¢¶õµ¤¤òÆþ¤ì¤Ë¶á½ê¤Î¼«Å¾¼Ö²°¤µ¤ó¤Ë¹Ô¤Ã¤Æ¤ß¤¿¡£¥·¥ç¡¼¥¦¥£¥ó¥É¥¦¤Ë¤ÏSORA¤È¤«TIAGRA¤È¤«¤¬ºÜ¤Ã¤¿¥í¡¼¥É¤¬¾þ¤é¤ì¤Æ¤¤¤ëŹ¡£
ŹƬ¤Î¶õµ¤Æþ¤ì¤À¤±»È¤Ã¤Æ¤¤¤¯¤Î¤Ï¤¢¤ì¤Ê¤Î¤Ç¡¢Å¹Æâ¤ò¸«¤Æ¤¤¤¯¤³¤È¤Ë¤·¤¿¡£
¡Ö¤´¤æ¤Ã¤¯¤ê¤É¤¦¤¾¡¼¡×
¤¢¤¡¡¢Îɤ¤Å¹¤À¡£¤³¤Îµ÷Î¥´¶¤Ï¹¥¤¤À¤Ê¡£¥×¥í¥·¥ç¥Ã¥×¤Ã¤Æ´¶¤¸¤Ç¤Ï¤Ê¤¤¤Ê¡£¤½¤ÎŹ¤Î¤ª·»¤µ¤ó¤È¾¯¤·Ïä·¤¿¤ó¤À¤±¤É¡¢¤Ê¤¼¤«¥é¥¤¥È¥¦¥§¥¤¤Î¥«¥¿¥í¥°¤òÅϤµ¤ì¤Æµ¢¤Ã¤Æ¤¤¿¡£
¤É¤¦¤»¤Ê¤é¥·¥Þ¥Î¤Î¥«¥¿¥í¥°Ìã¤Ã¤ÆÍè¤ì¤ÐÎɤ«¤Ã¤¿¡£º£¤ÏÁ´Éô10®¤é¤·¤¤¤·¡¢¸ß´¹À¤È¤«¤è¤¯¤ï¤«¤ó¤Ê¤¤¤·¡£
¥é¥¤¥È¥¦¥§¥¤¤Î¥«¥¿¥í¥°¡¢¸«¤ë¤È¤³¤í¤¬Ìµ¤¤¡Ä¡Ä¡£
ŹƬ¤Î¶õµ¤Æþ¤ì¤À¤±»È¤Ã¤Æ¤¤¤¯¤Î¤Ï¤¢¤ì¤Ê¤Î¤Ç¡¢Å¹Æâ¤ò¸«¤Æ¤¤¤¯¤³¤È¤Ë¤·¤¿¡£
¡Ö¤´¤æ¤Ã¤¯¤ê¤É¤¦¤¾¡¼¡×
¤¢¤¡¡¢Îɤ¤Å¹¤À¡£¤³¤Îµ÷Î¥´¶¤Ï¹¥¤¤À¤Ê¡£¥×¥í¥·¥ç¥Ã¥×¤Ã¤Æ´¶¤¸¤Ç¤Ï¤Ê¤¤¤Ê¡£¤½¤ÎŹ¤Î¤ª·»¤µ¤ó¤È¾¯¤·Ïä·¤¿¤ó¤À¤±¤É¡¢¤Ê¤¼¤«¥é¥¤¥È¥¦¥§¥¤¤Î¥«¥¿¥í¥°¤òÅϤµ¤ì¤Æµ¢¤Ã¤Æ¤¤¿¡£
¤É¤¦¤»¤Ê¤é¥·¥Þ¥Î¤Î¥«¥¿¥í¥°Ìã¤Ã¤ÆÍè¤ì¤ÐÎɤ«¤Ã¤¿¡£º£¤ÏÁ´Éô10®¤é¤·¤¤¤·¡¢¸ß´¹À¤È¤«¤è¤¯¤ï¤«¤ó¤Ê¤¤¤·¡£
¥é¥¤¥È¥¦¥§¥¤¤Î¥«¥¿¥í¥°¡¢¸«¤ë¤È¤³¤í¤¬Ìµ¤¤¡Ä¡Ä¡£
2009ǯ04·î04Æü
C#|PropertyGrid¥³¥ó¥È¥í¡¼¥ë¤Ëɽ¼¨¤µ¤ì¤ë¥×¥í¥Ñ¥Æ¥£Ì¾¤òÊѹ¹¤¹¤ë¤Ë¤Ï¡©
PropertyGrid¥³¥ó¥È¥í¡¼¥ë¤Ëɽ¼¨¤µ¤ì¤ë¥×¥í¥Ñ¥Æ¥£Ì¾¤òÊѹ¹¤¹¤ë¤Ë¤Ï¡©
SPDVer 1.74¤Ë¼è¤ê¹þ¤ß´°Î»¡£
¤È¥á¥â¤·¤Æ¤ª¤±¤ÐËü°ì¾åµ¥ê¥ó¥¯¤¬ÀÚ¤ì¤Æ¤âSPDVer 1.74¤Î¥³¡¼¥É¤«¤é¥µ¥ë¥Ù¡¼¥¸²Äǽ¡£¤¢¤Ë¤¹¤Î¥³¡¼¥ÉÊݴɸˤËžºÜ¤¹¤ë¤ï¤±¤Ë¤â¤¤¤«¤Ê¤¤¤·¤Í¡£
¤¢¤Ë¤¹¤Î¥³¡¼¥ÉÊݴɸˤϤ¢¤Ë¤¹¤¬½ñ¤¤¤¿¥³¡¼¥É¤ÎÊݴɸˤÀ¤±¤É¡¢¤¢¤Ë¤¹¤¬½ñ¤¤¤Æ¤Ê¤¤¥³¡¼¥É¤âÊݴɤ·¤¿¤¤¤Ê¡£²¿¤«Îɤ¤ÊýË¡¤Ï̵¤¤¤À¤í¤¦¤«¡£¸ø³«¥Ö¥Ã¥¯¥Þ¡¼¥¯Åª¤Ê¤â¤Î¤¬¤¢¤ì¤Ð¤¤¤¤¤Î¤«¤Ê¡£
SPDVer 1.74¤Ë¼è¤ê¹þ¤ß´°Î»¡£
¤È¥á¥â¤·¤Æ¤ª¤±¤ÐËü°ì¾åµ¥ê¥ó¥¯¤¬ÀÚ¤ì¤Æ¤âSPDVer 1.74¤Î¥³¡¼¥É¤«¤é¥µ¥ë¥Ù¡¼¥¸²Äǽ¡£¤¢¤Ë¤¹¤Î¥³¡¼¥ÉÊݴɸˤËžºÜ¤¹¤ë¤ï¤±¤Ë¤â¤¤¤«¤Ê¤¤¤·¤Í¡£
¤¢¤Ë¤¹¤Î¥³¡¼¥ÉÊݴɸˤϤ¢¤Ë¤¹¤¬½ñ¤¤¤¿¥³¡¼¥É¤ÎÊݴɸˤÀ¤±¤É¡¢¤¢¤Ë¤¹¤¬½ñ¤¤¤Æ¤Ê¤¤¥³¡¼¥É¤âÊݴɤ·¤¿¤¤¤Ê¡£²¿¤«Îɤ¤ÊýË¡¤Ï̵¤¤¤À¤í¤¦¤«¡£¸ø³«¥Ö¥Ã¥¯¥Þ¡¼¥¯Åª¤Ê¤â¤Î¤¬¤¢¤ì¤Ð¤¤¤¤¤Î¤«¤Ê¡£
2009ǯ03·î30Æü
C#|¥æ¡¼¥¶¡¼¥³¥ó¥È¥í¡¼¥ë¤òD&D¤Ç°Üư&¥µ¥¤¥ºÊѹ¹
[C#]¥æ¡¼¥¶¡¼¥³¥ó¥È¥í¡¼¥ë¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤Ç°Üư¤ÇÌÌÇò¤½¤¦¤Ê¤³¤È¤ä¤Ã¤Æ¤ë¤Î¤Ç½ñ¤¤¤Æ¤ß¤Þ¤·¤¿¡£·ë¹½Å¥½¤¯¤Ê¤ê¤Þ¤¹¤Í¡£¤Á¤ç¤Ã¤ÈÖȤäƤ·¤Þ¤Ã¤Æ»þ´Ö¤¬³Ý¤«¤Ã¤¿¤Î¤Ï¤³¤³¤À¤±¤ÎÈëÌ©¡£
using System.Drawing;
using System.Windows.Forms;
public partial class UserControl1 :UserControl {
Size lastMouseDownSize;
Point lastMouseDownPoint;
DAndDStatus status;
int sizeChangeArea = 8;
public UserControl1() {
InitializeComponent();
}
protected override void OnMouseDown(MouseEventArgs e) {
lastMouseDownPoint = e.Location;
lastMouseDownSize = this.Size;
//ưºî¤ò·èÄê
status = DAndDStatus.None;
if(getTop().Contains(e.Location)) {
status |= DAndDStatus.Top;
}
if(getLeft().Contains(e.Location)) {
status |= DAndDStatus.Left;
}
if(getBottom().Contains(e.Location)) {
status |= DAndDStatus.Bottom;
}
if(getRight().Contains(e.Location)) {
status |= DAndDStatus.Right;
}
if(status == DAndDStatus.None) {
status = DAndDStatus.Move;
} else {
this.Capture = true;
}
base.OnMouseDown(e);
}
protected override void OnMouseMove(MouseEventArgs e) {
//¥«¡¼¥½¥ë¤òÊѹ¹
if((getTop().Contains(e.Location) &&
getLeft().Contains(e.Location)) ||
(getBottom().Contains(e.Location) &&
getRight().Contains(e.Location))) {
this.Cursor = Cursors.SizeNWSE;
} else if((getTop().Contains(e.Location) &&
getRight().Contains(e.Location)) ||
(getBottom().Contains(e.Location) &&
getLeft().Contains(e.Location))) {
this.Cursor = Cursors.SizeNESW;
} else if(getTop().Contains(e.Location) ||
getBottom().Contains(e.Location)) {
this.Cursor = Cursors.SizeNS;
} else if(getLeft().Contains(e.Location) ||
getRight().Contains(e.Location)) {
this.Cursor = Cursors.SizeWE;
} else {
this.Cursor = Cursors.Default;
}
if(e.Button == MouseButtons.Left) {
int diffX = e.X - lastMouseDownPoint.X;
int diffY = e.Y - lastMouseDownPoint.Y;
if((status & DAndDStatus.Move) == DAndDStatus.Move) {
this.Left += diffX;
this.Top += diffY;
}
if((status & DAndDStatus.Top) == DAndDStatus.Top) {
int h = this.Height;
this.Height -= diffY;
this.Top += h - this.Height;
}
if((status & DAndDStatus.Bottom) == DAndDStatus.Bottom) {
this.Height = lastMouseDownSize.Height + diffY;
}
if((status & DAndDStatus.Left) == DAndDStatus.Left) {
int w = this.Width;
this.Width -= diffX;
this.Left += w - this.Width;
}
if((status & DAndDStatus.Right) == DAndDStatus.Right) {
this.Width = lastMouseDownSize.Width + diffX;
}
}
this.Refresh();
base.OnMouseMove(e);
}
protected override void OnMouseUp(MouseEventArgs e) {
this.Capture = false;
base.OnMouseUp(e);
}
protected override void OnPaint(PaintEventArgs e) {
e.Graphics.DrawRectangle(
Pens.Black,
0, 0,
this.Width - 1,
this.Height - 1);
base.OnPaint(e);
}
private Rectangle getTop() {
return new Rectangle(0, 0, this.Width, sizeChangeArea);
}
private Rectangle getBottom() {
return new Rectangle(0, this.Height - sizeChangeArea,
this.Width, sizeChangeArea);
}
private Rectangle getLeft() {
return new Rectangle(0,0,
sizeChangeArea, this.Height);
}
private Rectangle getRight() {
return new Rectangle(this.Width - sizeChangeArea, 0,
sizeChangeArea, this.Height);
}
private enum DAndDStatus {
None = 0,
Move = 1,
Top = 2,
Bottom = 4,
Left = 8,
Right = 16,
}
}
2009ǯ03·î21Æü
C#|¥Æ¥¥¹¥È¥Ü¥Ã¥¯¥¹¾å¤Ç¤ÎD&D¤Ç¥Õ¥©¡¼¥à¤ò°Üư¤¹¤ë
TextBox¥³¥ó¥È¥í¡¼¥ë¾å¤Ç¤Î¥É¥é¥Ã¥°¡õ¥É¥í¥Ã¥×¤Ç¥Õ¥©¡¼¥à¤ò°Üư¤µ¤»¤è¤¦¤È¤·¤¿¾ì¹ç¡¢Ê¸»úÎó¤òÁªÂò¤¹¤ëÁàºî¤È¥Ð¥Ã¥Æ¥£¥ó¥°¤·¤Ê¤¤¤è¤¦¤Ë¤¹¤ëɬÍפ¬¤¢¤ë¡£
°Ê²¼¤Î¼ÂÁõ¤ÇÎɤ¤´¶¤¸¤Ëư¤¤¤¿¡£
ÁÇÁ᤯¥É¥é¥Ã¥°¡õ¥É¥í¥Ã¥×¤·¤¿¤È¤¤Ëʸ»ú¤¬ÁªÂò¤µ¤ì¤Æ¤·¤Þ¤¤¥Õ¥©¡¼¥à¤Î°Üư¤¬¥¥ã¥ó¥»¥ë¤µ¤ì¤ë¤Î¤ò²óÈò¤¹¤ë°Ù¤ËdAndDMoveFlag(¥»¥ó¥¹¤Í¡¼Ì¾Á°£÷)¤Ç¥Õ¥é¥°¤òΩ¤Æ¤Æ¤¤¤ë¡£
¤¢¤È¤Ï¤½¤ó¤Ê¤ËÆñ¤·¤¤¤³¤È¤·¤Æ¤Ê¤¤¤È»×¤¦¡£
¢¨textBox1¤ÎText¤¬¶õ¤Î¾ì¹ç¤ËLines¥×¥í¥Ñ¥Æ¥£¤Î¶³¦³°¤ò»²¾È¤·¤ÆÎã³°¤¬È¯À¸¤·¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¤·¤¿¡£
¢¨µ¤¤¬ÊѤï¤Ã¤¿¤Î¤Ç°ã¤¦¥í¥¸¥Ã¥¯¤Ç¥´¥Ã¥½¥ê¤È½ñ¤´¹¤¨¤¿¡£
°Ê²¼¤Î¼ÂÁõ¤ÇÎɤ¤´¶¤¸¤Ëư¤¤¤¿¡£
Point mouseDownPoint = new Point();
bool dAndDMoveFlag = false;
private void textBox1_MouseDown(object sender, MouseEventArgs e) {
if(e.Button != MouseButtons.Left) return;
mouseDownPoint = e.Location;
bool flag = true;
int charHeight =
TextRenderer.MeasureText("A", this.textBox1.Font).Height;
for(int i = 0; i < this.textBox1.Lines.Length; i++) {
Point point = new Point(0, i * charHeight);
Size size =
TextRenderer.MeasureText(
this.textBox1.Lines[i],
this.textBox1.Font);
Rectangle rect = new Rectangle(point, size);
if(rect.Contains(e.Location)) {
flag = false;
break;
}
}
this.dAndDMoveFlag = flag;
}
private void textBox1_MouseMove(object sender, MouseEventArgs e) {
if(dAndDMoveFlag) {
Point p = this.Location;
p.Offset(
new Point(e.X - mouseDownPoint.X, e.Y - mouseDownPoint.Y));
this.Location = p;
}
}
private void textBox1_MouseUp(object sender, MouseEventArgs e) {
dAndDMoveFlag = false;
}
ÁÇÁ᤯¥É¥é¥Ã¥°¡õ¥É¥í¥Ã¥×¤·¤¿¤È¤¤Ëʸ»ú¤¬ÁªÂò¤µ¤ì¤Æ¤·¤Þ¤¤¥Õ¥©¡¼¥à¤Î°Üư¤¬¥¥ã¥ó¥»¥ë¤µ¤ì¤ë¤Î¤ò²óÈò¤¹¤ë°Ù¤ËdAndDMoveFlag(¥»¥ó¥¹¤Í¡¼Ì¾Á°£÷)¤Ç¥Õ¥é¥°¤òΩ¤Æ¤Æ¤¤¤ë¡£
¤¢¤È¤Ï¤½¤ó¤Ê¤ËÆñ¤·¤¤¤³¤È¤·¤Æ¤Ê¤¤¤È»×¤¦¡£
¢¨µ¤¤¬ÊѤï¤Ã¤¿¤Î¤Ç°ã¤¦¥í¥¸¥Ã¥¯¤Ç¥´¥Ã¥½¥ê¤È½ñ¤´¹¤¨¤¿¡£
2009ǯ03·î13Æü
C#|System.Windows.Forms.ColorDialog¤Î¥Ð¥°¡©
ColorDialog¥¯¥é¥¹¤ÎCustomColors¥×¥í¥Ñ¥Æ¥£¤¬´üÂÔÄ̤ê¤Ëưºî¤·¤Ê¤¤¡£
¥Õ¥©¡¼¥à¤ÎÇØ·Ê¿§¤òColor.FromArgb(50, 100, 150)¤ËÀßÄꤷ¤Æ¤¤¤ë¡£¤Á¤Ê¤ß¤Ë¤³¤ó¤Ê¿§¡£

¥Ü¥¿¥ó¤¬¥¯¥ê¥Ã¥¯¤µ¤ì¤ë¤ÈColorDialog¤ÎCustomColors¥×¥í¥Ñ¥Æ¥£¤ËColor.FromArgb(50, 100, 150)¤òÀßÄꤷ¤ÆÉ½¼¨¤¹¤ë¡£

¤ª¤«¤·¤¤¡¢Äɲä·¤¿¿§¤¬¹õ¤¯É½¼¨¤µ¤ì¤Æ¤¤¤ë¡£¿§¤ÎºîÀ®¥Ü¥¿¥ó¤ò²¡¤·¤ÆRGBÃͤò¸«¤Æ¤ß¤ë¤È

R¤ÈB¤¬È¿Å¾¤·¤Æ¤¤¤ë¡£¤³¤ì¤Ïº¤¤Ã¤¿¡£
¤É¤¦¤ä¤é¥Ð¥°¤Ç¤Ï¤Ê¤¤¤é¤·¤¤¡£
¥Õ¥©¡¼¥à¤ÎÇØ·Ê¿§¤òColor.FromArgb(50, 100, 150)¤ËÀßÄꤷ¤Æ¤¤¤ë¡£¤Á¤Ê¤ß¤Ë¤³¤ó¤Ê¿§¡£

¥Ü¥¿¥ó¤¬¥¯¥ê¥Ã¥¯¤µ¤ì¤ë¤ÈColorDialog¤ÎCustomColors¥×¥í¥Ñ¥Æ¥£¤ËColor.FromArgb(50, 100, 150)¤òÀßÄꤷ¤ÆÉ½¼¨¤¹¤ë¡£

¤ª¤«¤·¤¤¡¢Äɲä·¤¿¿§¤¬¹õ¤¯É½¼¨¤µ¤ì¤Æ¤¤¤ë¡£¿§¤ÎºîÀ®¥Ü¥¿¥ó¤ò²¡¤·¤ÆRGBÃͤò¸«¤Æ¤ß¤ë¤È

R¤ÈB¤¬È¿Å¾¤·¤Æ¤¤¤ë¡£¤³¤ì¤Ïº¤¤Ã¤¿¡£
using System;
using System.Drawing;
using System.Windows.Forms;
public partial class Form1 :Form {
Color color = Color.FromArgb(50, 100, 150);
public Form1() {
InitializeComponent();
this.BackColor = color;
}
private void button1_Click(object sender, EventArgs e) {
this.colorDialog1.CustomColors = new int[] { color.ToArgb() };
this.colorDialog1.ShowDialog();
}
}¤É¤¦¤ä¤é¥Ð¥°¤Ç¤Ï¤Ê¤¤¤é¤·¤¤¡£

