VC++2005で、
1ソリーションに2プロジェクト用意した環境に於いて、
(このソリーション内で)別プロジェクトの関数コールはできるのでしょうか?
そのプロジェクトの関係によります。
呼ばれる側が可能な作りになっていれば可能です。
REEさん、シャノンさん 返信ありがとうございます。
> そのプロジェクトの関係によります。
> 呼ばれる側が可能な作りになっていれば可能です。
何が出来るかわかっておらず、調査しているところです。
もし、参考となりそうな URL、書籍等、Web検索キーワード等
の情報がありましたが、ご教授願えないでしょうか。
(探している最中なのですが、Web、MSDNヘルプで見つからず)
やりたいことは、以下です。
下記コードだとビルドエラーになってしまいます。
<例>
1.プロジェクト(VC++2005 1ソリーションに2プロジェクト)
① CLR「Windowsフォームアプリケーション」<-- 起動プロジェクト
ここから②プロジェクトのライブラリC関数を使う。
② Win32アプリケーション スタティックライブラリ
2.コード
①
extern int proj2LibFunc(void);
void proj1Func( void )
{
BOOL bRetLib;
bRetLib = proj2LibFunc();
}
②
int prj2LibFunc( void )
{
int iRet;
iRet = 1; //← 実際には、ある計算結果
return iTemp
}
<ビルドエラー>
エラー 44 error LNK2028: 未解決のトークン (0A00000B) int __clrcall
prj2LibFunc(void) (?prj2LibFunc@@$$FYMHXZ) が関数 int __clrcall
main (cli::array<class System::String ^ >^) (?
main@@$$HYMHP$01AP$AAVString@System@@@Z) で参照されました。
main.obj
エラー 45 error LNK2019: 未解決の外部シンボル int __clrcall
prj2LibFunc(void) (?prj2LibFunc@@$$FYMHXZ) が関数 int __clrcall
main(cli::array<class System::String ^ >^) (?
main@@$$HYMHP$01AP$AAVString@System@@@Z) で参照されました。
main.obj
①のプロジェクトに
②のプロジェクトで出来たライブラリファイルを
リンクするようにしていますか?
# 同じソリューションでも違うソリューションでもやることは同じです。