- - PR -
マネージ拡張DLLの/NOENTRYについて
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2003-07-16 19:41
VisualC++6.0で作成したADOを使用した拡張DLLがありました。
これを.NETに移行してADO部分をADO.NETに書き直そうと考えました。 MFCの拡張DLLのプロジェクトを作成しマネージ拡張を「はい」と設定しました。 ソース(抜粋)は↓こんなかんじです。 ------------------------------------------- Foo.h ------------------------------------------- class AFX_EXT_CLASS CFoo { public: CFoo() {} int Func(CString str); }; ------------------------------------------- Foo.cpp ------------------------------------------- #include "stdafx.h" #include "Foo.h" #using <mscorlib.dll> #using <System.dll> #using <System.data.dll> using namespace System; using namespace System: using namespace System: int CFoo::Func(CString str) { int ret = 0; SqlConnection* conn; conn = new SqlConnection(str); ・ ・ ・ return ret; } ------------------------------------------- とりあえずは動作するのですが、ビルドすると「LINK : warning LNK4243:/clr を使用してコンパイルされたオブジェクトを含む DLL は、/NOENTRY とリンクされていません。イメージが正しく実行されない可能性があります。」がでます。 http://support.microsoft.com/?id=814472 あたりが、関連情報ではないかと思います。 ビルドの警告をこのままにしておくと問題ありそうなのですが、結局どうすればよいのかがよくわかりません。 どなたかご教授いただけませんでしょうか。 また、MFCのCStringをそのままSqlConnectionとかに渡して問題ないものなのでしょうか。 よろしくお願いします。 |
1
