このページでは、 95Reader/98Readerと Delphi 2.0で、簡単なプログラムを試しに作ってみたので その過程を紹介します。
Visual C++ 4.0からSoundp.libを使ってみるを 参照してください。
インストールが済むと、d:\WINDOWS\SYSTEM\SOUNDP.DLL に 95Readerのライブラリがインストールされるようです。 (私のWindows95はD:にあります。) SOUNDP.DLLを使用して音声を出力するプログラムを作ってみました。
Delphiの最新版はDelphi4です。 つい最近Delphi5もアナウンスされましたが、 私のWindows95には、Delphi2しか入っていません。 (Windows NTの方にはDelphi4を入れてあるのですが…)
Delphi2.0でもプログラムは作れるので、作ってみました。 まず、次のようなフォームを作成しました。
フォームの上にButtonを一つ置いただけです。 何の意味もないプログラムですが、 95Readerの音声ライブラリSoundp.dllを使用して しゃべらせるのが目的なのでよしとしましょう。
95ReaderのCD-ROMに入っていた説明書には、 「VC++ でご利用の方は 用意したヘッダファイルをご利用下さい。 VBでご利用の方は、ヘッダファイルでの定義に変わる処理を行って下さい。」 としか書いてありませんでした。 Delphiユーザはどうしたら良いのでしょうか?
Visual Basicでの宣言を参考に、 以下のようなコードを書きました。 次に、ボタンをクリックしたときの動作を以下のように記述しました。 ボタンを押すと"こんにちは"としゃべるはずです。
unit hellofm;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private 宣言 }
public
{ Public 宣言 }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
function SoundMessage(str: PChar; flags: Integer) : Boolean; Stdcall;
external 'Soundp.dll' name 'SoundMessage';
procedure TForm1.Button1Click(Sender: TObject);
begin
SoundMessage('こんにちは', 0);
end;
end.
本当は、他にもいろいろな関数があるので、それらの関数を 使用する場合には、宣言をしておかなければいけませんが、 今回は記述しませんでした。
プロジェクトを保存するでファイルを保存してから、実行してみました。 ボタンをクリックすると、「こんにちは」としゃべりました。 もちろん、このとき95Readerを起動しておかないと 音声は出ません。
実行時にできた実行形式ファイルを含めてリンクを張っておきます。 Delphi用のDLLがインストールされていないと、 実行できないかどうかは分かりません。
E-mail : nnakamur@mxq.mesh.ne.jp