The EnvironmentManager singleton object in the ServerLogger.GetServerEnvironment method is not instantiated following the documentation.
上次发布: June 22, 2017ArcGIS GIS Server
漏洞 ID 编号
BUG-000102447
已提交
January 26, 2017
上次修改时间
July 28, 2020
适用范围
ArcGIS GIS Server
找到的版本
10.2.1
服务器平台
Windows
客户端平台
N/A
Version Fixed
10.5.1
状态
Fixed
此漏洞已得到修复。 有关详细信息,请参阅“版本修复”和“其他信息”(如果适用)。
附加信息
The issue is not reproducible using our own programs and no code has been submitted that does reproduce the issue. Additional steps have been requested to reproduce the issue, but no further steps are available. If additional steps to reproduce the problem can be provided then the issue can be re-evaluated.
解决办法
Several ArcGIS GIS Server 10.6.1 users experienced "System.InvalidCastException: Unable to cast object of type 'System.__ComObject' to type 'ESRI.ArcGIS.esriSystem.EnvironmentManagerClass'." exception thrown at IEnvironmentManager environmentManager = new EnvironmentManager() as IEnvironmentManager;To fix the above exception, instantiate EnvironmentManager as singleton as the code below:Type t = Type.GetTypeFromProgID("esriSystem.EnvironmentManager");System.Object obj = Activator.CreateInstance(t);IEnvironmentManager pEnvMgr = obj as IEnvironmentManager;