【初心者歓迎】C/C++室 Ver.86【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
0565デフォルトの名無しさん
2013/10/08(火) 03:33:51.61その説明だと「ダイアログ生成を含む関数(以下init)」を呼びさえしなければ、
Project.dllからDebugLog.dllにリンクして、
「文字列をリッチエディットへsendする関数(以下send)」を呼んでも特に問題無いような…
「exe側で複数呼べる(=initを複数回呼ぶとダイアログを増やせる?)」って説明からの想像だけど、
sendを呼ぶためにはinitが返す情報(ダイアログのハンドルなど)が必要で、
Project.dll側でsendを呼ぶ為にはそれをinitを呼ばずに得なければならないって問題だったりする?
もしそうなら、initが返した情報をProject.dll側に渡すための関数をProject.dll側に追加すれば良いと思う。
initとsendの解釈が間違っててinitとsendが同一関数だったりした場合は、
DLLのロードの問題じゃなくてDebugLog.dllの設計/仕様の問題だと思う。
「exe側で複数呼べる」の意味が「initを複数回呼ぶとダイアログを増やせる」ではなくて
「exeからinitを複数回呼んでもダイアログが増えないがProject.dllから呼ぶと増える」だった場合も、
呼び出し時点でのスレッド/プロセスID見てたりその他DebugLog.dllの設計/仕様の問題だと思う。
念のため確認するけど、Project.dllってグローバルフックとかプラグインとかの他プロセスにロードされるDLLじゃないよね?
■ このスレッドは過去ログ倉庫に格納されています