一括表示
タイトル
記事No
投稿日
投稿者

kbgxscc.kpiとkbhtsfms.kpiがx64版に限り再生失敗する
391
2024/10/19(Sat) 13:53:10
匿名希望
こんにちは。MIDIやゲーム音源の再生に長年愛用させていただいております。

【概要】

プラグイン置き場にて配布されているMIDI再生プラグイン「kbgxscc.kpi」(バージョン0.14alpha)と「kbhtsfms.kpi」(バージョン0.08alpha)が、x64(64bit)版プラグインに限り再生に失敗します。

再生失敗時は「データに誤りがあります」旨のエラーが出ます。

x86(32bit)版プラグイン、およびXP対応版プラグインは問題なく再生できます。

【備考】

・KbMedia Player本体が32bit版か64bit版かに関わらず発生します。
・その他のMIDI再生プラグイン(「kbfmmidi.kpi」「kbemidi.kpi」「kbfmoplmidi.kpi」「kbtim95.kpi」「kbbassmidi.kpi」)も試してみましたが、32bit版・64bit版プラグインどちらでも正常に再生できました。

PCのOSをWindows10からWindows11(バージョン23H2)にアップデートした直後に確認したので、当方の環境依存の問題である可能性が高いです。もし同様の問題が起きている方がいたら参考になればと思い、投稿させていただきました。
pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re: kbgxscc.kpiとkbhtsfms.kpiがx64版に限り再生失敗する
394
2024/10/19(Sat) 19:06:33
Kobarin

不具合報告ありがとうございます。

> プラグイン置き場にて配布されているMIDI再生プラグイン「kbgxscc.kpi」(バージョン0.14alpha)と「kbhtsfms.kpi」(バージョン0.08alpha)が、x64(64bit)版プラグインに限り再生に失敗します。

64bti 版のプラグイン(kbgxscc.kpi/kbhtsfms.kpi) と同じフォルダに

・get_x86_loadlibrary_address.exe
・hook_gxscc.dll または hook_htsfms.dll

はありますか。

get_x86_loadlibrary_address.exe

は 32bit 版の方にはありません。

同梱し忘れたのかもしれないと思って試しにプラグイン置き場からダウンロードしてみたら

64bit 版、32bit 版ともに hook_htsfms.dll はノートンに削除されてしまいましたが
間違いなく同梱はされています。(実際はどちらに置いてある DLL も 32bit 版です)

再生出来ないのはウイルス対策ソフトに削除されてしまったせいではないかと思います。
DLL の性質上、ウイルス対策ソフトに引っかかりやすいのは間違いないです。

ちなみに、hook_gxscc.dll と hook_htsfms.dll は中身はどちらも 32bit 版のプラグイン
のフォルダにあるものと同じですので、32bit版のフォルダにあるものを64bit版のフォルダ
にコピーするだけで動作する筈です。

配布時に同梱されてるのはタイムスタンプが違うかもしれないのでバイナリ比較すると微妙
に違うかもですが。
pagetop
タイトル
記事No
投稿日
投稿者

Re^2: kbgxscc.kpiとkbhtsfms.kpiがx64版に限り再生失敗する
395
2024/10/20(Sun) 06:58:36
匿名希望
返信ありがとうございます。

> 64bti 版のプラグイン(kbgxscc.kpi/kbhtsfms.kpi) と同じフォルダに
>
> ・get_x86_loadlibrary_address.exe
> ・hook_gxscc.dll または hook_htsfms.dll
>
> はありますか。

確認してみたところ、ちゃんとありました。ウイルス対策ソフトに消されてしまった訳ではないようです。一応参考ですがタイムスタンプ(更新日時)はすべて「2024‎/05‎/‎26‎ ‏‎0:00:00」でした。

問題が発生するPCとは別のPC(OSは同じくWindows11 バージョン23H2)にKbMedia Playerをインストールして検証してみたのですが、64bit版プラグインで正常動作を確認しました。どうやら完全に当方のPC環境依存の問題のようです。

問題が発生する方のPCでは32bit版プラグインを使うようにすればいい話なので、これで解決とさせていただきます。お手間をおかけして失礼いたしました。
pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re^3: kbgxscc.kpiとkbhtsfms.kpiがx64版に限り再生失敗する
396
2024/10/20(Sun) 10:49:14
Kobarin

ありがとうございます。

64bit 版と 32bit 版の違いは 32bit版の kernel32.dll の LoadLibraryW という
API のアドレスの取得方法だけで、そのアドレスの取得に

get_x86_loadlibrary_address.exe

を使用しています。これがあって hook_xxx.dll もあるのに、32bit 版が動作して 64bit版
が動作しないのは不思議です。

ちなみに同じ環境で

kbsmaf.kpi v0.14alpha
kbzmdrive.kpi v0.16alpha
kbeup.kpi v0.02alpha

の 64bit版は動作しますか。zmdrive と eup は必要なプログラム以外にも動作確認用のデータ
がないとテスト出来ませんが、kbsmaf.kpi の方は MidRadio Player をインストールすれば
データは MIDI だけ確認して頂ければ大丈夫です。
pagetop
タイトル
記事No
投稿日
投稿者

Re^4: kbgxscc.kpiとkbhtsfms.kpiがx64版に限り再生失敗する
397
2024/10/26(Sat) 11:32:15
匿名希望
返信が遅れまして申し訳ありません。

> 64bit 版と 32bit 版の違いは 32bit版の kernel32.dll の LoadLibraryW という
> API のアドレスの取得方法だけで、そのアドレスの取得に
>
> get_x86_loadlibrary_address.exe
>
> を使用しています。これがあって hook_xxx.dll もあるのに、32bit 版が動作して 64bit版
> が動作しないのは不思議です。

長年システム周りの整備をしていないPCなので何が起きてもおかしくないです・・(^^;)。ウイルス対策ソフトを一時無効化したり、C++ 2022のランタイムを入れ直したりと色々試したのですが手応えはなく・・。

どうにも根が深そうなこちらの環境依存の問題にKobarinさんを付き合わせてしまって恐縮なのですが、手短に検証結果だけをご報告します。

> ちなみに同じ環境で
>
> kbsmaf.kpi v0.14alpha
> kbzmdrive.kpi v0.16alpha
> kbeup.kpi v0.02alpha
>
> の 64bit版は動作しますか。

【kbsmaf.kpi v0.14alpha】

32bit版と64bit版の両方が再生失敗します。

こちらだけは少々事情が違いまして、最初にご報告した「kbgxscc.kpi」「kbhtsfms.kpi」の64bit版が再生失敗するようになる以前から、当方の環境ではなぜか動きませんでした(「kbvsti.kpi」で代用していました)。

MidRadio Player 7.2.1のパスは指定できていて、プラグイン設定画面の「MidRadio Playerを起動」ボタンは正しく機能します。

【kbzmdrive.kpi v0.16alpha】

32bit版は動いて64bit版は動かず、という結果でした。

【kbeup.kpi v0.02alpha】

こちらは動作確認に必要なeupファイルがどうしても見つからず・・検証できておりません。すみません。
pagetop

- Web Forum v8.0 -
++ Edited by Hamel ++