アプリケーションの配布について

解決


ビギナ  2015-01-19 04:34:57  No: 46968

RAD STUDIO Enterprise のライセンスを購入し、win32用のdelphiアプリケーションを作成した者です。お伺いしたいことがあるのですがご回答願えませんでしょうか。アプリケーションの概要ですが、組み込み型データベースの形をしていてドライバはIB(IBLiteを使用していることになると思います)VCLフォームアプリケーションです。完成したわけではないのですが、配布する先に概要を見てもらうために相手先のマシンでデバッグ版を走らせて見てもらおうとしましたができません。debugフォルダのなかのexeとXXX.gdbをUSBメモリにコピーし別マシンで起動させたところ動きません。データベースのためのdllが足らないのかと思いibclient.dll、ibclient64.dll、ibtogo.dll、ibtogo64.dll、gds32.dllをアプリケーションと同じディレクトリにコピーしても起動しません。[FIREDAC][IB][Phys]unavailable databaseとでます。どうしたらよいでしょう。お知恵を拝借できませんか。


DEKO  URL  2015-01-19 09:14:02  No: 46969

こんにちは。

> ドライバはIB(IBLiteを使用していることになると思います)
> VCLフォームアプリケーションです。

VCL で組み込みなら Interbase To-Go Edition となります。
ちなみに Interbase To-Go Edition は無償ではなく

・9,000円 (税抜) / 1 配布ライセンス

となっています (無償なのは IBLite でモバイル向けです)。

http://ht-deko.minim.ne.jp/delphiforum/?vasthtmlaction=viewtopic&t=882.0

配置方法については
http://docwiki.embarcadero.com/RADStudio/XE6/ja/RAD_Studio_%E3%81%A7%E3%81%AE_InterBase_ToGo_InterBase_ToGo
http://docwiki.embarcadero.com/RADStudio/XE7/ja/IBLite_%E3%81%8A%E3%82%88%E3%81%B3_IBToGo_%E3%81%AE%E3%83%86%E3%82%B9%E3%83%88%E9%85%8D%E7%BD%AE%E3%83%A9%E3%82%A4%E3%82%BB%E3%83%B3%E3%82%B9
http://support.codegear.com/article/43726
この辺りをご覧ください。


DEKO  URL  2015-01-19 09:31:02  No: 46970

詳細なドキュメントもあります。

[Embarcadero InterBase XE3 ToGo Edition クイックスタート]
http://docs.embarcadero.com/products/interbase/IBXE3Update4_JP/ToGoQS_XE3up4_ja.pdf

恐らく、今回の件はライセンスファイルの配布ミスかと思われます。

テスト用のライセンスファイルは無償で取得できますが 3ヶ月で期限が切れます。
もちろん、テスト用のライセンスファイルを本番環境で使う事はできません。


igy  2015-01-19 09:45:09  No: 46971

XE7は、もっていないのですが・・・

> 無償なのは IBLite でモバイル向けです

RAD Studio XE7 機能一覧
http://www.embarcadero.com/images/jp/dm/products/radstudio-xe7-feature-matrix-jp.pdf

を見ると、

> New in XE7!無制限配布ライセンスつきのInterBase IBLite for Windows 

とあり、無償で使えそうな気がしますが、

> VCL で組み込みなら Interbase To-Go Edition となります。

この情報は、どこかに書かれてますか?


igy  2015-01-19 10:04:18  No: 46972

InterBase
http://www.embarcadero.com/jp/products/interbase
の下のほうにある、
組み込みデータベースIBLite
では、

> IBLite XE3は、無料で再配布可能なWindows、OS X、Android、iOSで利用できる組み込みデータベースです。
> IBLiteを用いれば、スタンドアロン環境でInterBaseのエンジンを利用するアプリケーションを作成できます。
> IBLiteは、Delphi XE7およびC++Builder XE7(Professional +Mobile Add-On Pack または Enterprise版以上)
> およびRAD Studio XE7(全エディション)に含まれています。

とありますので、

> RAD STUDIO Enterprise のライセンスを購入し

バージョン書かれてませんが、XE7だったら、IBLiteが無料で使えそうな・・・

もし、XE6以下だったら、DEKOさんが書かれているとおり、

> VCL で組み込みなら Interbase To-Go Edition となります。

になるのかもしれませんね。


ビギナ  2015-01-19 10:56:30  No: 46973

数々の情報をありがとうございます。お伝えする情報に不足がありました。お詫びします。
まずプラットフォームですがwin32と書きましたが64ビットで設計しています。またRADのエディションはXE5です。で、DEKOさんのお話にあるような内容は把握しておりませんでした。私は
XE5についてくるInterbaseがXE3なので、制限はあるもののIBliteを使ってシンプルで軽量な組み込み型データベースのwinアプリがライセンスフリーで配布できるものと認識していました。ちょっと困りました。
話をリセットするようですが、私が目的とするようなアプリケーションはどのデータベースをチョイスすればいいのでしょう。私の目的とはもう大体お分かりいただいていると思いますが、ごく小規模なwinアプリケーションに軽量でストレスのないデータベースを組み込ませ、日常業務のデータをとにかく記録し、集計その他の自動化をするものです。多くのユーザーがアクセスするわけではないのでサーバークライアント形式のシステムは必要なく、データも膨大になるわけではないのでIBliteでいけるだろうと踏んだのですが...


通りすがり  2015-01-19 11:12:39  No: 46974

XE3のEnt版ならFirebirdでいいのでは?


通りすがり  2015-01-19 11:17:01  No: 46975

あ、XE5でしたね。どっちにしてもFirebirdでいいと思います(DBX、FireDACのどちらでも使えます)。


DEKO  URL  2015-01-19 11:22:23  No: 46976

> バージョン書かれてませんが、XE7だったら、IBLiteが無料で使えそうな・・・

そのようですね!確認してみたら、
"New in XE7! 無制限配布ライセンスつきの InterBase IBLite for Windows"
という記述が XE7 の機能一覧にありました。
http://www.embarcadero.com/images/jp/dm/products/delphi-xe7-feature-matrix-jp.pdf

> 軽量な組み込み型データベースのwinアプリがライセンスフリーで配布

そうなると、SQLite か Firebird Embedded ですね。

http://ht-deko.minim.ne.jp/delphiforum/?vasthtmlaction=viewtopic&t=866.0
http://ht-deko.minim.ne.jp/delphiforum/?vasthtmlaction=viewtopic&t=862.0


TS  2015-01-19 18:05:45  No: 46977

FirebirdならZEOSを使用すればライセンスの問題は無いと思いますが、
この認識は正しいでしょうか。
ZEOSのダウンロードは
http://en.sourceforge.jp/projects/sfnet_zeoslib/downloads/Zeos%20Database%20Objects/zeosdbo-7.2.0-beta/ZEOSDBO-7.2.0-beta.zip/


maru03  2015-01-19 18:42:58  No: 46978

開発環境は  FireBird +  IBX  で
配布先環境は  Firebird Embedded で
ライセンスの問題もないと思いますがいかがでしょうか?

この場合IntreBaseはUnInstallされていたほうが開発時点でのトラブルを起こしにくいと思います。

実際に、スタンドアロンの釣果関連のDBを作成・配布していますが、
10年近く(XP、Vista、7)で稼動しています。(win32ですが)
必要なファイルを相手先のPCの適当なフォルダー
(フォルダー名に2バイト文字はだめですが)
にコピーするだけで動きます。


DEKO  2015-01-20 00:44:06  No: 46979

> ZEOS
余談になりますが、スタンドアロンで新規作成ならいいのですが、
最近の Zeos はちょっとだけ問題があります > 対 Firebird。

http://ht-deko.minim.ne.jp/delphiforum/?vasthtmlaction=viewtopic&t=1264.0


ビギナ  2015-01-20 00:44:43  No: 46980

いろいろとご意見をありがとうございます。私のような「小さなデータベース
を抱いたアプリケーションをサーバープログラムインストールなしで、はいポンで
配布」という目的にはFireBird  Embeddedが最適のようですね。早速実験を敢行
しました。が、ここで新たな問題が生じました。教えていただけませんでしょうか。
本家よりFirebird-2.5.3.26780-0_x64_embedをダウンロードし、アプリケーション.exeと
同じディレクトリにコピーし、fbembed.dllをgds32.llにリネームしました。
Delphi_XE5の設定もすべてFBとしFDPhysIBDriverLink1もFDPhysFBDriverLink1
に入れ替えVenderLibプロパティも先ほどのgds32.dllを指すように設定しました
が、エラーが出ます。「xxx\xxx\fbembed.dllが開けません。Pathをチェックするか
exeのディレクトリに置くかまたはx86であることを確認するかしろ」という旨の
エラーが出ます。そのくせokを押すとアプリケーションは先に進みます。ドキュメントや
ブログを参考にしてやってみましたが何がおかしいのでしょう。


DEKO  URL  2015-01-20 00:51:53  No: 46981

> Firebird

Ent なら、IBX / dbGo / DBX / FireDAC どれからでも Firebird は使えますし、
Pro であっても IBX / dbGo に加え、Zeos でも接続できます。

ライセンスに関しても Firebird なら問題ないですね。 

> (フォルダー名に2バイト文字はだめですが)

最近の Firebird Embeddded は日本語フォルダ名でも通りますよ。


DEKO  URL  2015-01-20 01:04:39  No: 46982

> アプリケーション.exeと同じディレクトリにコピーし、fbembed.dllをgds32.llにリネームしました。

64bit アプリを作ろうとされているので、
64bit 版 Embedded を DL して配置されたのだと思いますが IDE は 32bit なのです。

[何度も出てくるので Firebird の接続方法]
http://ht-deko.minim.ne.jp/delphiforum/?vasthtmlaction=viewtopic&t=1255.0

Embedded は配布の際に使うようにし、
開発時は通常の Firebird を使うようにするといいですよ。


ビギナ  2015-01-20 03:45:45  No: 46983

重ね重ねありがとうございます。なんとなくですがわかってきました
なんとかアプリケーションはぎくしゃくとしながらデータベースにつながった
ようです。あと何点か疑問を払拭させていただけませんか。
現在お勧めのように開発段階ではサーバーソフトをインストールし
ローカル-ローカルの形で作業を行っています。そこで、
(1)私はよくFDQueryのクエリエディタでデータをちら見したり、フィールド定義を
再確認したりするのですが、これをやろうとするとまたしても「fbclient.dll
が見つからない」とかいわれますが、これはひょっとしたら当たり前ですか?
つまりクエリエディタの動作にFDPhysFBDriverLinkが関係していないのではないかと思うのです。
(2)もしそうなら、皆さんはデータやデータ構造のちら見(確認)はどうなさっているのですか?
(3)配布時にはこのままexeのディレクトリに32bitのembed.dllをコピーして渡せばよい?..?...?
のですか?


DEKO  URL  2015-01-20 04:08:26  No: 46984

短い答えです。

(1) 私はコンポーネントを貼り付けて使っていません。
    動的に生成して使っています。

(2) 私は主に IBConsole 日本語版+α を使っていますが、
    http://ht-deko.minim.ne.jp/junkbox.html#IBCONSOLE
    一般的には FlameRobin がよく使われているかと思います。
    http://www.flamerobin.org/

(3) 配布にはルールがあります。fbembed.dll だけの配布だけではダメです。
    http://edn.embarcadero.com/article/images/40857/a4.pdf#page=89
    (DBX / FireDAC の場合、クライアント DLL のリネームは不要です)


DEKO  URL  2015-01-21 01:40:53  No: 46985

またまた余談ですが、XE7 には IBLite for OS X もライセンスされているそうです。
https://www.youtube.com/watch?v=2dwJ2dN7vK4


DEKO  URL  2015-01-21 01:49:31  No: 46986

失礼しました、先程のリンクは C++ 用でした。

[Embedding Local and Remote Data Access into your Applications with IBLite - Object Pascal]
https://www.youtube.com/watch?v=XAZQfYzvxHc


ビギナ  2015-01-21 07:54:47  No: 46987

皆さんいろいろなご意見、ご指導をありがとうございました。おかげさまで
delphi+firebirdで目的のものが作れそうです。delphiを知ったのは古いのですが
(delphi7だったか)最初は単純なフォームにちょこっとした計算をする(旅館のお客
さん向けの滞在日数から宿泊費等を計算できるものとかそんなんです)ものを
作っていたのですが、徐々に大きなものを作りたくなったためにentを購入
現在に至っています。正直言ってひとつ解決をみるとひとつ問題が発生するといった
ことの繰り返しで遅々として進まないのが実態ですが、今後ともよろしくお願いします
...またわからないことが発生しました...            ビギナ


ビギナ  2015-01-21 07:56:48  No: 46988

あっ  すみません  解決です


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加