Last Update : 2007/09/xx
HSPの全般的なプログラミング情報のトピックスをいろいろとー。(^◇^)
HSPで音楽/動画の一般的な再生手段として、mmload命令(HSP3)・sndload命令(HSP2)とmci命令があります。
HSP入門などで紹介されている「mplayer.exe」を指定した音楽再生。これは、「Windows Media Player」(WMP)とは全くの別物で、「Microsoft Media Player」というMCI機能を利用した旧世代プレーヤーの起動となります。(このプレーヤーの実行ファイルはOSによって異なり、NT系は「mplay32.exe」を指定する必要あり・・・
; Windows 95/98/MEの場合 exec "mplayer /play sample.mid" ; コマンドラインスイッチ ; /open ... 再生ファイル無指定の場合、起動時に開くダイアログ表示 ; /play ... 起動後すぐに再生開始 (デフォルトは読み込みのみ) ; /close ... 再生終了後にプレーヤー終了
; Windows 2k/XPの場合 (Windows Vistaは不可能?) exec "mplay32 /play sample.mid"
ついでに、「Windows Media Player」の起動です。単純に音楽ファイルや動画ファイルのパスだけを指定する方法。
; 起動と再生 (実際には関連付けられたプレーヤーの起動) exec "sample.mid", 16
; ちなみに、単純な起動 exec "wmplayer", 16
; ちなみに、旧バージョンの「Windows Media Player」起動 (Windows Vistaは不可能?) exec "mplayer2", 16
WMPのフルパス指定で起動する場合。再生するファイルにスペースが含まれている場合を想定して、「"」(ダブルクオーテーション)でくくります。(スクリプト上では「\"」
playerpath = "C:\\Program Files\\Windows Media Player\\wmplayer.exe" filepath = "C:\\hoge.wmv" ; 「/fullscreen」をつけるとフルスクリーン表示 exec ""+playerpath+" /fullscreen \""+filepath+"\""
Windows標準搭載のファイラー「エクスプローラ」を起動する。HSPのexec命令を使用します。
; 単純な起動 exec "explorer"
; 特定フォルダ指定で起動 exec "explorer C:\\Program Files" ; フォルダ選択のみで起動 // exec "explorer /select, C:\\Program Files" ; フォルダツリー付きで起動 // exec "explorer /e, C:\\Program Files"
この「エクスプローラ」で、Windowsの特殊なフォルダを開く。(→ 関連、HSP3 あれこれ 特殊なダイアログを開く、HSP3 あれこれ 仮想キーの利用)
; 「explorer」で特殊フォルダを開く (by Kpan)
; 「/e,」を含めると、フォルダツリー付きで起動
; 例: exec "explorer /e, ::{(〜省略〜)}"
; マイコンピュータ
exec "explorer ::{20D04FE0-3AEA-1069-A2D8-08002B30309D}"
; マイネットワーク (ネットワークコンピュータ)
// exec "explorer ::{208D2C60-3AEA-1069-A2D7-08002B30309D}"
; ゴミ箱
// exec "explorer ::{645FF040-5081-101B-9F08-00AA002F954E}"
; プリンタとFax
// exec "explorer ::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{2227A280-3AEA-1069-A2DE-08002B30309D}"
; コントロールパネル
// exec "explorer ::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}"
Microsoftのウェブブラウザ「インターネットエクスプローラ」(Internet Explorer)を起動する。ヘルプにもある単純にURLアドレスを指定したexec命令は、標準ブラウザに設定されているブラウザが起動しますが、これはIE固定です。
; 「explorer」でIEを起動する (by Kpan)
; インターネットエクスプローラ
exec "explorer ::{871C5380-42A0-1069-A2EA-08002B30309D}"
; 特定のページを開く場合
// exec "explorer http://lhsp.s206.xrea.com/, ::{871C5380-42A0-1069-A2EA-08002B30309D}"
[1] 拡張プラグイン (*.dll/*.hpi) の場合
HSP2用拡張プラグインは、互換機能により一部を除きHSP3からでも基本的に利用できます。命令リファレンスなどでプリプロセッサ命令「#func」の説明を参照してください。
実際のところ、拡張プラグインで用意されているすべての命令が使えない、ということはそれほど起こらないと思います。commonフォルダに入れるよう促している拡張プラグインのインクルードファイル(*.as)をHSP3のスクリプトエディタで読み込み、コンパイル実行してみてください。
何のエラーも表示されなかった場合は問題なしです。もし、非対応の命令が含まれている場合は、「互換性のない拡張命令タイプを使用しています (XX行目)」というエラーが表示されます。この場合は、該当箇所の「#func 命令名 〜」の行をコメントアウトします。当然ながら、この命令はHSP3で利用できなくなりますが、これがプラグインの動作上必要不可欠な命令でなければOKなわけです。(^ー^)b
ちなみに、画像ファイル関連プラグインや音楽ファイル関連プラグインの一覧。(→ 参照、HSP Tips : 画像ファイルの表示 & HSP Tips : 音楽ファイルの再生)
[2] 拡張ランタイム (*.hrt) の場合
拡張プラグインを添付せず実行ファイル単体だけの配布で済む拡張ランタイム機能ですが、これはたとえばHSP 2.55用、HSP 2.6用、HSP 2.61用、HSP 3.0用、HSP 3.1用というような感じでHSPのバージョンごとにそれぞれ用意していかなければならないものです。
そのため、HSP 2.x向けの拡張ランタイムをHSP3で利用するというのは、残念ながら100%不可能です。
<< HSP Tips 5 || HSP Tips 7 >>
Copyright © 2005-2008 Kpan. All rights reserved.