2011-01-03 10 views
0

ビットマップ、アイコン、カーソルなどのリソースを含む静的リンクライブラリ(SLL)があります.SLLの関数はこれらのリソースを使用します。これらのエクスポートされた関数は、実行可能ファイルによって使用されます。私が以前に直面していた問題は、リンク中にリソースが実行可能ファイルに含まれていないことでした。しかし、StackOverflowの別の投稿のおかげで、解決されました。これは生成された.resファイルをリンクすることを提案しました。静的にリンクされたライブラリのリソースを含む

しかし、私はより洗練されたソリューションを望んでいました。私は.libファイルをリンクするだけで、リソースも含めています。私は.libファイルでdumpbinを実行しましたが、すべてのリソースデータを含んでいるようですが、それらのリソースをリンクする間は最後のバイナリには含まれません。

私は、リンカが有効なリソースセクション名として認識しない混乱のために、lib.exeが(.rsrc $ 01と.rsrc $ 02のような)mangledリソースセクション名を持つ出力を生成すると思われます。

答えて

0

ここに同様の質問があります:あなたのオプションは、ライブラリ自体がそれらへのアクセスを提供するようにリソースを解析し、またはそれを使用する場合は、ライブラリ「ビルドのリソースを持っているよう

VC++ resources in a static libraryはそうで。

+0

私が前に述べたように、私があなたが言及した投稿記事を認識していますが、私はもっときれいな方法を探していました。その投稿には、.libファイルや.resファイルなど、私が望むものではない方法が記載されています。 .resファイルの内容はすでに.libファイルに入っているので、.lib自体からリソースデータを抽出できる方法があることを期待していました。 –

+0

これは言及された3番目の方法です、私は実行可能なオプションとして最初と2番目を参照しています。 – Vanwaril

関連する問題