- PR -

ライブラリーDLLの参照

1
投稿者投稿内容
maru
ぬし
会議室デビュー日: 2003/01/27
投稿数: 412
投稿日時: 2006-12-25 15:24
こんにちは。

現在、VC++2005(CLI)で開発しています。今まで、VB.NET 2005、C#.NET 2005 での
開発経験はあります。

VB.NET/C#であれば、1つのソリューションで複数のプロジェクトを追加し、ビルド
の順序をきちんと指定してやり、参照設定の追加でプロジェクトのライブラリ(DLL)
を指定してやるだけで、本体アプリからライブラリーDLLが使えるようになります。

同じように、VC++2005(CLI)でやろうとして、プロジェクトのプロパティにある参照
設定に追加しているのですが、いまいちうまくいきません。参照されていないよう
です。

ほかに何かすることはあるのでしょうか?

※いまいち、CLIに関する情報がなく、VB.NETやC#ならこうやるというような感じで
やっているため、なかなか思うようにいきませんね。結果的には超簡単なことなの
かもしれませんが・・・。
渋木宏明(ひどり)
ぬし
会議室デビュー日: 2004/01/14
投稿数: 1155
お住まい・勤務地: 東京
投稿日時: 2006-12-25 15:45
引用:

VB.NET/C#であれば、1つのソリューションで複数のプロジェクトを追加し、ビルド
の順序をきちんと指定してやり、参照設定の追加でプロジェクトのライブラリ(DLL)
を指定してやるだけで、本体アプリからライブラリーDLLが使えるようになります。



ビルド順序の整合を保ちたいなら、参照設定で追加するべきは「プロジェクトのライブラリ(DLL)」ではありません。

「プロジェクト参照」を追加します。
maru
ぬし
会議室デビュー日: 2003/01/27
投稿数: 412
投稿日時: 2006-12-25 16:02
こんにちは。返答ありがとうございます。

言葉足らずでした。
「参照の追加」の「プロジェクト」タブからプロジェクトを追加しています。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-12-25 16:19
引用:

maruさんの書き込み (2006-12-25 16:02) より:

言葉足らずでした。
「参照の追加」の「プロジェクト」タブからプロジェクトを追加しています。


でしたら、うまくいくハズです。
もう 1 度、ミニマム プロジェクトで試してみてください。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
maru
ぬし
会議室デビュー日: 2003/01/27
投稿数: 412
投稿日時: 2006-12-25 16:47
大変お騒がせしました。原因わかりました。

当初、1つのプロジェクトでアプリを作っていました。
その中で、クラスは宣言だけでなく中身の実装を含めてヘッダファイルに書いており、
アプリの本体のソースの頭でインクルードする形で使っていました。

まだ、実験的だったし、C++はここ最近使っていなかったし、最近Java/VB.NET/C#メイン
であったので、このような書き方がC++にふさわしいのかあまり考えずに、とりあえず
やってました。

そして、フレームワーク的に使用できるクラスが若干増えてきたため、プロジェクト
を分けようと思い、クラス(ヘッダファイル)を別プロジェクト側に移動したので
した。

この時点で、cppファイルにソースの実態を移動するか、実態の書かれたヘッダファイル
をcpp内でインクルードしていなかったため、コンパイルしてもDLLモジュール内に
コードが反映されず、アプリ本体からはクラスが存在しないという状態だったようで
した。

やっぱりCLIになってもプログラム組む場合は、ヘッダには型宣言のみ、ソースの実態は
cppにと書き分ける必要があるのですね。

C/C++の経験もあるのですが、どうもjava/VB.NET/C#になれてるうえ、CLIに不慣れな
ものでCLI特有の問題なのかどうか切り分けすることがまだできず、なにかCLIや環境
の違いを疑ってしまい、結果的には低次元な原因でした。

申し訳ありませんでした。


[ メッセージ編集済み 編集者: maru 編集日時 2006-12-25 16:50 ]
1

スキルアップ/キャリアアップ(JOB@IT)