我看着帮助的例子写了一段在SDE表空间中创建要素集的代码,但是运行不成功,提示是:“The supplied command does not exist in command pool”。中间找别人讨论了不少,有说空间参考参数设定的问题,有说机器环境问题,许可证问题,代码问题。
我连的是Oracle数据库,参数怎么设定我不是很清楚(中间调试的时候 定义的空间参展spatialRef有参数异常,后来直接引用了axmapcontrol控件的空间参照异常就没有了,下面我参数图发出来),机器环境应该没问题(不是很确定XP professional,arcGIS9.3是破解的,好在注册licence很全),许可证就不是很了解了,不过我自己拼起来的那个简单的框架能读SDE的数据,能编辑能保持。也引用了一段初始化licence的代码。下面是代码和调试时的参数 。请大家帮忙看下,到底是哪里出的问题?
IWorkspaceFactory pWksFactory = null;
IPropertySet sdeProperty = new PropertySet();
sdeProperty.SetProperty("Server", "HL-TEST");
sdeProperty.SetProperty("Instance", "esri_sde ");
sdeProperty.SetProperty("User", "sde");
sdeProperty.SetProperty("Password", "sde");
sdeProperty.SetProperty("Version", "sde.DEFAULT");
pWksFactory = new SdeWorkspaceFactoryClass();
IWorkspace m_SdeWorkspace = pWksFactory.Open(sdeProperty, 0);
IFeatureWorkspace pFeatWks = (IFeatureWorkspace)m_SdeWorkspace;
ISpatialReference spatialRef=ShowaxMapControl.SpatialReference; pFeatWks.CreateFeatureDataset("dd", spatialRef);
MessageBox.Show("创建成功");
初始化licence和axmapcontrol的空间参考代码:
private IAoInitialize m_AoInitialize = new AoInitializeClass();
private void FrmMain_Load(object sender, EventArgs e)
{
ISpatialReferenceFactory spatialReferenceFactory = new SpatialReferenceEnvironmentClass();
ShowaxMapControl.SpatialReference = spatialReferenceFactory.CreateGeographicCoordinateSystem((int)esriSRGeoCSType.esriSRGeoCS_WGS1984);
m_AoInitialize.Initialize(esriLicenseProductCode.esriLicenseProductCodeEngineGeoDB);
定义的空间参考spatialRef在调试时查看的属性(我日,没法插入图片,不过属性中没有提示异常的)
------解决方案--------------------
请找 Esri技术支持