現在、以下の2つのプロジェクトを含む
ソリューションMySol1.slnがあります。
■MyLibプロジェクト(DLL)
Public Class MyXxxx
Enum XxxxEnum
Xxxx1
Xxxx2
End Enum
Sub New(ByVal xxx As ExxxEnum)
'省略
End Sub
Sub Calc()
Select Case yyy
Case XxxxEnum.Xxxx1
'省略
Case XxxxEnum.Xxxx1\2
'省略
End Select
End Sub
End Class
■MyApp1プロジェクト(EXE) ※MyLib.dllを参照。
Public Class Main
Private Sub MySub1()
Dim xxx = New MyLib.MyXxxx(MyLib.MyXxxx.XxxxEnum.Xxxx2)
End Sub
End Class
ビルドし、同一フォルダに
MyLib.dll
MyApp1.exe
を格納して、使用しています。
今回、別件でMyLibプロジェクトを修正しました。
MyLibプロジェクトは他のソリューションでも使用しています。
■MyLibプロジェクト(DLL)
Public Class MyXxxx
Enum XxxxEnum
Xxxx1
Xxxx2
Xxxx3 'Enumに1つメンバを追加。
End Enum
Sub New(ByVal xxx As ExxxEnum)
'省略
End Sub
Sub Calc()
Select Case yyy
Case XxxxEnum.Xxxx1
'省略
Case XxxxEnum.Xxxx2
'省略
Case XxxxEnum.Xxxx3 'Case分岐追加。
'省略
End Select
End Sub
End Class
この場合、フォルダに格納するモジュールは
MyLib.dllだけの差し替えで問題ありませんでしょうか?
フォルダに格納されるファイルは
下記のような状態でも、MyApp1.exeは問題ないでしょうか?
MyLib.dll '修正版でビルドしたファイルで差し替え
MyApp1.exe '古いMyLibでビルドしたファイルのまま
プロパティを削除したり、メソッドを削除したり、
メソッドの引数を変更した場合は、参照しているexeをリビルドしないといけない
とは思うのですが、
Enumのメンバーを追加した時に、リビルドが必要かどうかを教えてください。