スポンサーリンク

ブラウザ上で,Officeのヘルプキャラクターを動かしてみよう (IE上でJavaScriptからMS Agentを呼び出す方法)


Officeのヘルプキャラクタ(例えば「マーリン」とか,「カイル君」とか,「冴子先生」)を,ブラウザのHTML上で表示する。

IE上だけでなく,WSHでバッチとしてデスクトップで呼び出す事も可能。



サンプル(IEで閲覧)
http://www.name-of-this-site.org/codi...
※初回は警告が出ます。




IEの場合

IEで閲覧すること

<input type="button" onclick="f()" value="キャラクタを表示">

<script>

function f()
{

	// MSエージェントの下準備
	var agent_factory = new ActiveXObject("agent.control");
	agent_factory.Connected = true;
	agent_factory.Characters.Load( "Merlin", "merlin.acs" );

	// MSエージェントを生成
	var agent = agent_factory.Characters("Merlin");
	agent.LanguageID = 0x411;
	agent.Balloon.FontCharSet = 128;

	agent.MoveTo( 300, 300 ); // 移動
	agent.Show(); // 出現
	agent.Play("Greet"); // おじぎ
	agent.Speak("Hello, World!"); // ふきだしでしゃべらせる
	agent.Play("Wave"); // 手をふる
	agent.Hide(); // 隠れる
}

</script>


WSHの場合

以下のファイルをagent.jsで保存してダブルクリックするだけ


// MSエージェントの下準備
var agent_factory = WScript.CreateObject("agent.control");
agent_factory.Connected = true;
agent_factory.Characters.Load( "Merlin", "merlin.acs" );

// MSエージェントを生成
var agent = agent_factory.Characters("Merlin");
agent.LanguageID = 0x411;
agent.Balloon.FontCharSet = 128;

agent.MoveTo( 300, 300 );
agent.Show();
agent.Play("Greet");
agent.Speak("Hello, World!");
agent.Play("Wave");
agent.Hide();

// これがないと即座に終了してしまう
WScript.Sleep(10000);


Webページ上では,メッセージ通知用のインタフェースとして使える場合があるのではないか。

リンク集

MSAgentに関するページ
http://www2s.biglobe.ne.jp/~yukio_s/s...

  • C:\WINDOWS\MSAGENT\chars\Peedy.acs


【MSエージェント】
http://www.salty1.com/rakuraku/backnu...

  • MSエージェントは Windows Me/XP に標準で搭載
  • 代表的なアクションの説明


マイクロソフト・エージェントで遊びましょう
http://www.geocities.jp/suzukicpu/age...

  • Genie・Peedy・Robbyなどのキャラクタがいる
  • 音声をしゃべらせる事も


MS Agentを使った文章読み上げソフト(後編)
http://codezine.jp/article/detail/870

  • JavaScriptでのコーディングサンプル