2012-02-03 21 views
0

C#プログラミングが初めてで、DLLの作成に問題があります。Visual Studio 2010 dllでエラーが発生する

私はクラスライブラリプロジェクトを開いて、自分のクラスにpublic staticメソッドを書きました。クリックしてデバッグし、コピーしたdllとpdbファイル(bin/debug/..の下)を自分のWPFアプリケーションプロジェクトにコピーします。

私は私が私のプログラムを実行したとき、私は私のことを見た、しかし...

をも編集者は、通常、私の方法を示して、私はそれらを使用する場合にも、それは私にエラーや警告を与えない任意の参照の問題を取得していませんメソッドを呼び出すdllメソッドは機能しません。また、デバッグモードでも私のメソッドをジャンプするので、コードをトレースすることはできません。

どこが間違っていますか? DLLを作成するための他の方法はありますか?またはここでトリックを逃していますか? が..

+0

呼び出し元のメソッドが正確に何を意味していないのですか?デバッガがソースを見つけることができないため、デバッグモードがメソッドをジャンプしています。同じプロジェクトにdllソリューションを添付し、dllの出力を参照すると、その問題を解決するはずです。 –

+0

私はお勧めします:あなたのDLLとpdbファイルをコピーしないでください。 WPFプロジェクトでは、ライブラリDLLへの参照を追加し、WPFプロジェクトをビルドするときは、出力ディレクトリにDLLおよびpdbファイルを自動的に作成する必要があります。 –

答えて

4

のではなく、あなたのWPFアプリケーションのbinディレクトリにDLLをコピーするありがとう、あなたはあなたのWPFアプリから自分のクラスライブラリにプロジェクト参照を追加、またはクラスの出力ディレクトリへの参照を追加する必要がありますどちらかとしょうかん。それ以外の場合は、おそらくあなたの手でコピーされたファイルをコピーしています。基本的には、ビン内の何かを "Visual Studioによって制御される"ものとして扱うべきです。IMO - 手動で何もコピーしないでください。これは、特定のファイルを参照するのではなく、プロジェクト参照を使用する場合にも役立ちます。つまり、各ビルドが依存関係の適切な構成を取得する方法です。

+0

ありがとうございます。プロジェクト参照の追加をクリックすると、空のリストが表示されます。これらの2つのプロジェクトを1つのソリューションに統合する必要がありますか? もしそうなら、問題があります。 WPFアプリケーションは私を含む4人で書かれており、DLLのコードは私だけが見ることができます。私たちはsvnを使い、ソリューション全体をコミットしています。コードをコンパイルして参照を追加しなかった場合、コードを隠す方法はわかりません。 –

+0

@ErcanÖzdemir:同じ解決策ではないことは明らかでした。なぜあなたの同僚からあなたのソースコードを隠したいのですか?あなたはsvnを使用している場合、あなたのコードをとにかく見ることができませんか?あなたが本当に別のソリューションでそれらを必要とするならば、あなたはあなたのライブラリをコピーする場所である "lib"ディレクトリか何かを持っておいて、*その*への参照を追加することをお勧めします。 –

+0

私たちのグループメンバーの1人は会社の外にいるので、いくつかの方法(解読、認証などを含む)を隠す必要があります。 libディレクトリを作成し、そこにdllをコピーするのが私の最初の試みです。私はWPFプロジェクトでdllを参照しましたが、エラーがなくてもメソッドが機能しません。 –

関連する問題