初めまして,お世話になります.現在,あるアプリケーション(A)内で,カスタマイズ
DLLを実行する機能を使って,そのテンプレートを参考にして,DLLから他のアプリケー
ション(B)で提供されているAPI(.dll,.lib)の関数を実行するC++コードを作成し
ています.環境は,XP(Sp1)で,.NET2003です.作成したコードは,ビルドすると問題な
く,Debugフォルダの下にdllが作成されています.このdllをアプリケーション(A)から
呼出すと,DLLファイルをロードすることができないというエラーが出ます.公開されて
いるテンプレートのCPPファイルは,DLLMainが記述され,OPENSIMUSER(),RUNSIMUSER
(),CLOSESIMUSER()がdefファイルと共に,与えられています.この各関数内に,計算処
理等を外部ライブラリを使用しないで記述し,アプリ(A)から呼出すと問題なく,動きま
す.問題を解くヒントを頂けると助かります.
読みにくい…適宜改行を心がけてください。
呼び出している DLL の DllMain が失敗している可能性があります。
外部ライブラリ云々ということですので、その DLL から外部ライブラリとやらが
呼び出せていないのではないかと思いますが。
DLL がリンクしている別の DLL が存在するかどうか、DllMain が失敗していないかどう
かをチェックしてみてください。
すいませんした,読み難い文章を書いてしまって.
シャノンさん,ヒントありがとうございます.
assert()関数を使って,::LoadLibrary()の戻り値などを確認しております.
どうやら,この::LoadLibrary()で引っ掛かっているような感じです.
また,アプリ(B)のAPIをMFCアプリケーションのダイアログの中から
公開されている関数を呼出すと問題なく起動しているので,シャノンさんの
推測のように,他のDLLが必要であるかも知れません.
この辺りを調べて見ます.ありがとうございます.
一歩前に進みました.どうやら,DLLファイルが,1つ不足していたようです.
少なくとも,DLLの読込みまでは,到達できました.
いろいろとお世話になり,ありがとうございました.