.Net によって提供されるいくつかの列挙を使用する、C++\CLI で記述されたアセンブリがあります。次のようなプロパティがあります。
property System::ServiceProcess::ServiceControllerStatus ^ Status
{
ServiceControllerStatus ^ get()
{
return (ServiceControllerStatus)_status->dwCurrentState;
}
}
正常に動作しますが、C# コードからこのアセンブリを使用すると、このプロパティの型は
System.Enum
そして私は型キャストをしなければなりません
if ((ServiceControllerStatus)currentService.Status == ServiceControllerStatus.Running)
//do smth
質問は簡単です。なぜそうなのか、どうすれば修正できるのでしょうか。