- 締切済み
VB6.0(SP6)にて開発を行なっています。参照設定に関して教えてく
VB6.0(SP6)にて開発を行なっています。参照設定に関して教えてください。 ソースコードはVSS(VisualSourceSafe)にて管理しています。 3つのフォルダにそれぞれVB6.0のプロジェクトがあります。 C:. +---フォルダ1 | ProjectA.dll ←このdllはVSS管理されていない。 | ProjectA.vbp | +---フォルダ2 | ProjectB.dll ←このdllはVSS管理されていない | ProjectB.vbp | \---フォルダ3 ProjectC.exe ←このexeはVSS管理されていない ProjectC.vbp 上図にはdllファイルもexeファイルも記載してありますが、dllファイルとexeファイルはVSSでは管理(登録)しておりません。各開発担当者はVSSから最新のソースコードを取得して、各自のローカル環境でビルドを行なってdllやexeを生成します。 ProjectA.vbpはProjectA.dllを生成します。 ProjectB.vbpはProjectB.dllを生成します。 ProjectC.vbpはProjectC.exeを生成します。 ここでProjectC.vbpはProjectA.dllとProjectB.dllを参照しています。 ここからが質問なのですが、A君の環境でProjectA.dllとProjectB.dllを生成したあとProjectC.vbpをビルドすると問題なくProjectC.exeが生成できます。ところが、B君の環境で同じことをやろうとすると、ProjectA.dllとProjectB.dllを生成まで問題なくできるもののProjectC.vbpをビルドしてProjectC.exeを生成する際に、ProjectA.dllとProjectB.dllが参照エラーとなってしまいます。参照設定をし直せばB君の環境でもProjectC.vbpをビルドしてProjectC.exeを生成できるようになります。ところが、参照設定し直したProjectC.vbpをVSSにチェックインして、A君の環境で最新ソースを取得してProjectC.vbpをビルドしようとすると今度はA君の環境でProjectA.dllとProjectB.dllが参照エラーとなってしまいます。 各開発担当者のローカル環境で参照設定をしなおさずに済むようなプロジェクトの設定方法がありましたら教えていただけないでしょうか。よろしくお願いします。 (なお、変更したのはProjectCの参照設定のみであり、ProjectAとProjectBには一切変更箇所はありません。)
- みんなの回答 (3)
- 専門家の回答
みんなの回答
単にバイナリ互換のコンパイルができていないだけのような 気がします。 コンパイルオプションは正しいでしょうか?
- don_go
- ベストアンサー率31% (336/1059)
バージョン間の互換性をバイナリ互換に変えてみて下さい。 http://support.microsoft.com/kb/161137/ja [VB6] プロジェクト互換とバイナリ互換の使い方
- don_go
- ベストアンサー率31% (336/1059)
プロジェクトプロパティの[コンポーネント]バージョン間の 互換性は、何に設定されていますか? ローカル環境でのコンパイル時のディレクトリが、異なって いたりしていませんか?
補足
返答が遅くなり申し訳ないです。 バージョン間の互換性は、 プロジェクト(P)-コンンポーネント-バージョン間の互換性 はプロジェクト互換(P)を選択しています。 ローカル環境でのコンパイル先(DLLファイルの保存場所)は同じです。