pxeasy.dll

pxtone.dll を C/C++ 以外の言語で利用しようのコーナー。

Pixel さんが開発中の「ピストンコラージュ」は、独自の再生エンジンを持つ作曲ソフトです。特に、ゲーム音楽に利用されることが想定されているため、ループ機能や独自音声による省サイズが簡単に実現できます。そして、他のアプリケーションに組み込むための dll が存在してます。

しかし、dll のインターフェースは非常に無駄のない一方で、C/C++ 以外の言語で扱うのに多少苦労する (もしくは直接は使えない) という問題もあります。

pxeasy.dll は pxtone.dll を他の言語でも扱えることを目標とした中継 dll です。pxtone.dll を直接呼び出せなくて挫折した人も、これを使えば夢がかなうかもしれません (私の実力不足でかなわないかもしれません)。

dll 利用に __stdcall が必須の言語へ

VisualBasic, ActiveBasic など、__stdcall が指定されたインターフェースを必須としたり、推奨したりする言語があると思います。pxtone.dll は __cdecl が指定されているので、直接呼び出せません。pxeasy.dll は __stdcall が指定されているので、これらの言語にも対応できる可能性があります。

ウィンドウの生成をしたくない開発者へ

ウィンドウを意識せずに pxtone.dll を扱うことができれば、非常に快適なプログラミングができます。また、仕様上ウィンドウを生成できない言語もあります。pxeasy.dll では既存のデスクトップウィンドウを利用するので、開発者が新たにウィンドウを生成する必要がありません。

ポインタ概念のない言語へ

LightGameProgramming など、ポインタのない言語にも、DLL ロード機能がある場合があります。pxeasy.dll は整数型 (int) と文字列型 (char*) だけのインターフェースになっています。ポインタの概念のない言語や、ポインタがよく分からない人におすすめです。

ピストンノイズの再生・アプリケーション終了時の自動開放付き

ピストンノイズは wave データと同等のバッファを生成しますが、再生方法までは提供されていません。再生エンジンはユーザが自由に決めて実装することができます。しかし、そういうことのできない言語もあります。簡単ではありますが、pxeasy.dll のヘルパ関数はピストンノイズの再生を提供します。

また、ウィンドウが閉じられたときに開放処理が書けない言語・ライブラリの環境では、ウィンドウを閉じることで開放忘れの心配があります。しかし、pxeasy.dll は DLL 開放時に pxtone.dll の開放処理も行ってくれるので、その心配はないはずです (異常時などは保障し切れません)。

免責事項

このライブラリによる損害は全て、自己責任でお願いします。

ダウンロード

pxeasy.dll ver. 2.0
やっつけ仕事的にワイド文字版 API 追加。ピストンノイズの音声を同時再生可能に。
pxeasy.dll ver. 1.5
前バージョンとの互換性が全くなくなるほど改造、簡略化。
pxeasy.dll ver. 1.2
pxeasyDll_GetLastError, pxeasyDll_CopyLastError を追加。内部構造を改良。
pxeasy.dll ver. 1.0
最初のリリース。

リファレンス

戻る