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.