VB.NETモジュールでいくつかの拡張メソッドを作成しました。私はそれらをクラスの中に入れて、DLLを作りました。 別のプログラムから、そのDLLへの参照を作成し、Imports
を使ってインポートしました。 拡張メソッドがIntelliSenseに表示され、機能しますが、エラーコンソールに警告が表示され、DLLへの拡張メソッド
この参照を解決できませんでした。アセンブリ "nK0deExtendedMethods"を見つけることができませんでした。アセンブリがディスク上に存在することを確認します。
DLLを参照したにもかかわらずこのエラーが発生する理由は誰にも分かりますか?
これは私が拡張メソッドで自分のモジュールを配置したクラスです。
Imports System.Runtime.CompilerServices
Imports System.Drawing
Namespace nK0deExtendedMethods
Public Module ExtMethods
<Extension()>
Public Function Merge(ByVal img1 As Image, ByVal img2 As Image) As Image
Dim bmp As New Bitmap(Math.Max(img1.Width, img2.Width), img1.Height + img2.Height)
Dim g As Graphics = Graphics.FromImage(bmp)
g.DrawImage(img1, 0, 0, img1.Width, img1.Height)
g.DrawImage(img2, 0, img1.Height, img2.Width, img2.Width)
g.Dispose()
Return bmp
End Function
'Public Class NewImageMethods
'End Class
End Namespace
もう1つの疑問があります。 Imports
ステートメントでは、DLLの名前とNamespace
の名前について言及する必要があります。このように、
Imports ExtendedMethods.nK0deExtendedMethods
通常、名前空間の名前はインポートする必要がありますか?なぜそれが起こっているのですか?
ありがとうございます。
ソリューションをクリーニングして再構築しようとしましたか? –
@AmenAyachはい、何も変更されていません。 – Isuru
これらの悪い状況では、プロセスモニタ(http://technet.microsoft.com/fr-fr/sysinternals/hh205949)を使用して、dllのロードが失敗した場所を確認します。がんばろう。 – remio