2012-01-07 8 views
0

ではありません。これは、この時点で私に1日分の作業をもたらしました。 Visual Studioでは、カスタムメイドの.dllファイルへの参照を追加できます。参照が追加されると、.dllファイルを呼び出すことができます。CodeDomの参照が正しく追加されました.dllファイルは

someClass_inDll sc = new someClass_inDll(); 
sc.someVoid_in_dll(); 

アセンブリを使用せず、呼び出しなどを行う必要があります。私はこれを行うことができるようにしたい正確な CodeDomを使用して同じもの!だから、カスタムの.dllファイル(既に作成したものと私のハードドライブ上にあるもの)があると仮定して、フルのパスを上記のdllファイルに追加しました。ただし、実際の.dllファイルはVisual Studioの場合と同様にプロジェクトでコンパイルされていません。

誰かがこの理由を教えてもらえますか?これまでどんなことが起こっているのか分かりません。

私はdllファイル内の関数を呼び出すことができる唯一の方法は、私はむしろ、個人のためにしないだろう何かでそれを呼び出すことであろうので、私は ませ埋め込まれたリソースとして.dllファイルを追加したいん

理由。

本当に助けていただきありがとうございます。

おかげで、 エヴァン

+0

コードワードコードプロバイダを使用するプロジェクトは、ビジュアルスタジオプロジェクト自体ではないと言っていますか? – insipid

+0

いいえ、CodeDomで生成された実行可能ファイルには、.dllが組み込まれていないように見えます(したがって、dllファイルは使用できなくなります)。 –

答えて

0

私は私はあなたが求めているものを理解しますが、ここに確認していない...

Visual Studioは」に設定された出力ディレクトリにあなたの参照のすべてをコピーしていますコンパイル後に.projファイルの "ローカルコピー"を実行します。コンパイラ自体は依存関係の展開には関係しません。これはmsbuildの目的です。

プロバイダのCompilerParametersへの参照を追加すると、参照を使用して実行可能ファイルが構築されますが、自分でコピーする必要があります。

+0

さて、CodeDomでは、私が使用したいdllファイルの完全なパスへの参照を追加します。その後、実行可能ファイルが適切な参照でコンパイルされると、そのフルパスからコンパイルされたCodeDom実行可能ファイルのパスにdllをコピーする必要がありますか? –

+0

そうですね、彼らは同じディレクトリにいなければなりません。 – insipid

+0

それを避けるためにとにかくありますか? –

関連する問題