[トップ][編集][ノート][編集履歴][一覧][最近の更新][->English]

拡張プラグインの拡張子

HSP3に追加して欲しい機能のリストからの議論です。

Windows 9xはデフォルトで.dllが見えない設定になってしまっているので、HSP3以降はすべて.hpiに統一した方がいいかも知れません。


  • 別に統一する必要はないと思います。
    特に拡張子が*.dll/*.hpiでなくてもWin32DLLなら宣言部分の指定で使用できるはずなので意味無いです。
    DLLであることが分かる方がいいとかいろいろ理由もあるのでこのままで・・・。
  • 統一とは言っても、別に.hpiでなければロードを拒否するとかいうことではなくて、.hpiというファイル名にすることを推奨するようにしてはどうか、ということです。プログラマにとっては.dllのほうがいいかも知れませんが、ユーザー(特にパソコン初心者)はDLLが何であるとか、わからないことも多いでしょう。むしろ、上に書いてある理由で混乱する人のほうが多いのではないかと思います。
  • それはプラグインの開発者の意図によりますね。
    現状でも*.hpiの使用は推奨されています。
    *.hpiにするのはプラグインを使用開発者が単独で変更しても問題ないと思います。
    プラグインの作成時はプロジェクトやソリューションの設定でファイル名や拡張子を変更できますがやり方知らない人は手動で変更することになると思います。
    プラグイン作成者からすれば面倒なこともあるかも知れないですね。
    また、プログラム開発時は拡張子を表示しない設定はいろいろ混乱の元になるので絶対にやめた方がいいです。
    普通の人でも拡張子を表示する設定にしている人は結構いると思いますよ。
    • というより拡張子を表示しない設定はジャマなだけです。
      何故こんな設定を用意してしかもデフォルトになっているんだろう・・・。
    • マイクロソフト自身が拡張子の存在自体をジャマだと認識している証左かと。
  • ですから、私たちHSPプログラマについてはそうかもしれませんが、ユーザーの方はDLL非表示とか拡張子非表示とかに設定されている人も多いのではと。(ちなみに、ここで言っている「ユーザー」はHSPユーザー(つまりHSPプログラマー)ではなくて、HSPで作られたソフトウェアを使うユーザーのことですよ。) 配布ソフトにインストーラーが付いていて、インストール・アンインストールを自動的に行うのなら問題はないのでしょうけど、単に圧縮だけして配布し、インストール等はユーザー任せという場合、DLL非表示設定によって問題が起こることもあるでしょう。
    • すみません。
      それは分かっています。プラグインを使用したアプリを作成した開発者が配布するときに
      上記のように思うなら各自変更して配布すればいいのではないでしょうか?ということです。
      あと、文章的に批判風に見えるかもしれませんが別に反対しているわけではないです。
      ただ、拡張子の種類については開発者や配布者が独自に考慮して考えればいい問題で強要(と言うのかな?)する
      必要性はないのでは?と思っただけです。
      あと、推奨だけなら現状でも拡張子HPIの使用は推奨されています。
      (もしかすると現行のドキュメントには書いてないかも?3.0のα版には推奨するとの記述があります)

      また、「HSP拡張プラグインDLL」の拡張子は、DLLまたはHPIのどちらかを使うよう 推奨しています。拡張子HPIは、通常のDLLと区別するためと、Windowsの設定で 拡張子DLLが表示されなくなっている場合に対処したい方のためのものです。

    • DLLが表示されない為にファイルコピーがされず、上手く動かないと作者に苦情が来る事は度々ある様ですので、エンドユーザの事を考えるなら.HPIを使うのが望ましいと思います。(HSP以外用のインターフェイスをもっている等、特殊な事情がある時以外は。)なお、度合いの問題かも知れませんが、ファイル名を勝手に変えるのは好ましい事とは思えません。変なトラブルの原因と成りかねませんので。(勝手にファイル名を変えられて・・・という話を聞いた事があるので。)
  • ところで、.DLLのメリットって何でしょうか?開発者が楽なだけ?それ以外のメリットは?もしメリットがこれだけなら、デメリットが大きいですし、.DLLは特に推奨しない方が良いのでは?