1

私は次のファイルを持っています。私はそれをコピーして別のプログラムに貼り付けるC++プログラムを作成しました(追加のものと一緒に)。しかし、私はそれを取り除きたいです。つまり、実行可能ファイルとこのファイルの両方を配布したくありません。"その内容をハードコーディングしようとしましたが、特殊文字( 、、\nなど)があり、文字列変数がそのすべてのデータを保持するために必要なメモリを常に持っているとは限らないため、面倒です。

他に何ができますか?

4

1 に答える 1

1

私が最初に提案しようとしたのは、ファイルの内容をエンコードすることです。もちろん、自動的に。それを入力することの悪夢を想像することができました。そうは言っても、そこにはさまざまなツールがあります。たとえば、bin2hです。または、たとえば、確かに優れているQtリソースフレームワークがありますが、すでにQtを使用していない限り、依存関係を取り込む価値はないでしょう。

ただし、対処しようとしている内容がメモリに収まらないほど大きい場合は、そのファイルをプログラムとともに外部に配布する以外に方法はありません。実際、これは物事を行うためのかなり一般的な方法です。たとえば、OS X(およびiOS)用のヘビーウェイト(およびiOS)アプリケーションのほとんどは、「バンドル」として配布されます。これは、リソースファイルと実行可能ファイルを含むzip圧縮ファイルにすぎません。そのような配布慣行を促進するプラットフォームの1つをターゲットにしている場合は、それも解決策になる可能性があります。

それが役に立てば幸い :)

于 2012-12-01T01:56:29.193 に答える