Last Update : 2009/11/xx
HSP3からCOMオブジェクトに標準で扱えるようになりました。
また、COMオブジェクトを利用するActiveXコントロールも設置できるようになりました。axobj命令の説明にあるように、「ATL.dll」or「ATL71.dll」がシステムに存在する必要があります。Windows 98では含まれてない可能性があり、その場合はInternet Explorer 6.0以降が導入されてる必要があるようです。
アニメーションGIFファイルの単純再生です。実際にはIEコンポーネント上での動作となってます。HSP標準のpicload命令はアニメーションとしては機能しません。他にも、mci命令でアニメーションGIF再生表示、Susieプラグインを利用したフレーム分解を掲載してます。
// アニメーションGIFファイル onexit *exit ; Cドライブ直下にアニメーションGIFファイルがあるとして axobj oIE, "C:\\hogehoge.gif", 200, 200 stop *exit delcom oIE end
Windows標準添付の音楽・動画再生プレーヤー「Windows Media Player」(WMP)を利用します。最新のWMPに相当するバージョン7以降(MSDN)、互換用として残っている旧式のバージョン6.4(MSDN)があります。
// Windows Media Player 7以降(by Kpan)
onexit *exit
pos 50, 50
axobj wmp, "{6BF52A52-394A-11d3-B153-00C04F79FAA6}", 300, 300
; WMPバージョン(「*.0.0.****」形式)
mes wmp("versionInfo")
; プレーヤー部品表示 ("none"/"mini"/"full"の3種、WMP9以降で非表示の"invisible")
wmp("uiMode") = "full"
; 右クリックメニュー表示(0=オフ、1=オン・デフォ)
wmp("enableContextMenu") = 0
; Settingsオブジェクト取得
wmpset = wmp("settings")
; 自動再生(0=オフ、1=オン・デフォ)
wmpset("autoStart") = 0
; ボリューム設定(0〜100)
wmpset("volume") = 100
; 消音ミュート(0=オフ・デフォ、1=オン)
wmpset("mute") = 0
; 再生回数 (1〜)
// wmpset("playCount") = 1
; 無限ループ再生(0=オフ・デフォ、1=オン)
wmpset->"setMode" "loop", 0
; 再生する音楽や動画のファイルパス、URLアドレスもOK
wmp("URL") = "sample\\demo\\se_tyuiin.wav"
; Controlsオブジェクト取得
wmpcnt = wmp("controls")
button "PLAY", *wmpplay
stop
*wmpplay
wmpcnt->"play"
; その他・・・
// wmpcnt->"pause"
// wmpcnt->"stop"
// wmpcnt->"next"
// wmpcnt->"previous"
stop
*exit
wmp->"close"
delcom wmpcnt
delcom wmpset
delcom wmp
end
// Windows Media Player 6.4版(by Kpan)
onexit *exit
pos 50, 50
axobj wmp, "{22D6F312-B0F6-11D0-94AB-0080C74C7E95}", 300, 300
; 他にもたーくさんあり。以下は部品表示オン/オフ。
wmp("ShowControls") = 1
wmp("ShowDisplay") = 1
wmp("ShowStatusBar") = 1
wmp("ShowAudioControls") = 1
; リピート数 (0は無限ループ)
wmp("PlayCount") = 0
; 再生する音楽や動画のファイルパスやURLアドレス
wmp("FileName") = "sample\\demo\\GX3_.MID"
stop
*exit
delcom wmp
end
オフィスソフト「Microsoft Office」の文章作成ソフト「Microsoft Word」を利用して、ドキュメントファイル(DOCファイル)を出力します(MSDN)。ちなみに、HSPの付属サンプルには、表計算ソフト「Microsoft Excel」の利用例が用意されてます。
// Mirosoft Word - DOCファイルの出力 (by Kpan)
onexit *exit
notesel buf
noteload "readme.txt"
newcom pWord,"Word.Application"
if stat != 0 : end
pWord("Visible") = 1 ; Word画面表示したいなら
pWord("DisplayAlerts") = 0 ; 警告メッセージなし
; バージョン (8.0=97、9.0=2000、10.0=2002、11.0=2003、12.0=2007、14.0=2010)
mes pWord("Version")
pDocments = pWord("Documents")
; 新しい文章を作成
pDoc = pDocments("Add")
; テキストを挿入
pRange = pDoc("Range", 0, 0)
pRange("Text") = buf
; 文章を保存
pDoc->"SaveAs" "C:\\hsp_hogehoge.doc"
; Microsoft Wordの終了
pWord->"Quit"
mes "完了"
stop
*exit
delcom pDoc
delcom pWord
end
Appleの無料音楽・動画再生プレーヤー「QuickTime」を利用します(Apple Developer Connection)。ちなみに、HSPの付属サンプルには、「Apple iTunes」の制御例が用意されてます。
// QuickTime (by Kpan)
onexit *exit
axobj qt, "QTOControl.QTControl.1", 300, 300
if stat = -1 : dialog "error" : end
button "", *play
stop
*play
dialog "", 16
if stat = 0 : stop
wait 1
qt("URL") = refstr
stop
*exit
delcom qt
end
Adobe(旧Macromedia)によるブラウザ上でマルチメディアを再生する無料アドオン「Adobe Flash Player」を利用して、Flashファイル(SWFファイル)を再生します。HSPとぜんぜん関係ない話ですが、このソフトの旧バージョンに存在する脆弱性(不具合)を悪用したウイルス攻撃が確認されてるので、ちゃんと最新バージョンが導入されてるか必ず確認してください。
// Adobe Flash Playe - SWFファイルの再生 (by Kpan) onexit *exit axobj flash, "ShockwaveFlash.ShockwaveFlash", 400, 400 button "再生", *load stop *load dialog "swf;*.jpg;*.png;*.gif", 16, "Flash ファイル" if stat = 0 : goto *exit flash->"loadMovie" 0, refstr flash->"play" stop *exit delcom flash end
Adobeによる無料のPDF閲覧ソフト「Adobe Reader」を利用して、PDFファイルを表示します。HSPとぜんぜん関係ない話ですが、このソフトの旧バージョンに存在する脆弱性(不具合)を悪用したウイルス攻撃が確認されてるので、ちゃんと最新バージョンが導入されてるか必ず確認してください。
// Adobe Reader - PDFファイルの表示 (by Kpan)
#define CLSID_AcroPDF "{CA8A9780-280D-11CF-A24D-444553540000}"
onexit *exit
axobj AcroPDF, CLSID_AcroPDF, ginfo(12), ginfo(13) - 50
if stat = -1 : dialog "error" : end
button "読み込み", *loadpdf
stop
*loadpdf
dialog "pdf", 16, "PDFファイル"
if stat = 0 : goto *exit
AcroPDF->"LoadFile" refstr
stop
*exit
delcom AcroPDF
end
Copyright © 2005-2012 Kpan. All rights reserved.