zoukankan      html  css  js  c++  java
  • ArcGIS Engine 10 开发常见问题的解决方法

    【都是自己在开发过程中遇到的问题,写出来与大家共享,让同道人少走些弯路!有写的不对的地方还请大家指正!】

    环境:Win7 64bit + VS2010 + AE10.0
    Q1:You are not Licensed for 弹出提示框,点击确定,VS工程自动关闭!

    Analysis: LicenseControl被我们拖入窗体中,由于使用SDE数据库,或者其他高级功能,仅授权Engine许可无法满足我们的需要,所以我们会通过右键属性,将其授权改成ArcInfo或者Engine Enterprise Geo等等,由此造成了上述问题!

    Solution:在该窗体的初始化代码中添加如下代码,将授权更改为ArcInfo完全权限或其他。

    1         public MainForm()
    2         {
    3             InitializeComponent();
    4             //解决LicenseControl右键属性改为ArcInfo或其他后总弹出"You are not Licensed for"然后VS自动关闭的问题
    5             IAoInitialize pAoInitialize = new AoInitializeClass();
    6             esriLicenseStatus licenseStatus = esriLicenseStatus.esriLicenseUnavailable;
    7             licenseStatus = pAoInitialize.Initialize(esriLicenseProductCode.esriLicenseProductCodeArcInfo);
    8         }

    或者

     1 IAoInitialize m_AoInitialize = new AoInitializeClass();
     2 esriLicenseStatus pLicesestatus = (esriLicenseStatus)m_AoInitialize.IsProductCodeAvailable(esriLicenseProductCode.esriLicenseProductCodeEngineGeoDB);
     3 if (pLicesestatus == esriLicenseStatus.esriLicenseAvailable)
     4 {
     5 if (pLicesestatus != esriLicenseStatus.esriLicenseCheckedOut)
     6 {
     7 pLicesestatus = (esriLicenseStatus)m_AoInitialize.Initialize(esriLicenseProductCode.esriLicenseProductCodeEngineGeoDB);
     8 }
     9 else
    10 {
    11 System.Windows.Forms.MessageBox.Show("程序初始化失败");
    12 }
    13 }
    14 else
    15 {
    16 System.Windows.Forms.MessageBox.Show("没有程序运行许可");
    17 }

    (需要把LicenseControl控件删除,如果LicenseControl中选择了Engine授权或包括Engine的多个授权,仍然只能读到Engine授权,否则在运行到CreatFeatureClass()等方法时还是会报错!)

    -------------------------------------------------------------------------------------
    Q2:ArcMap中无法启动编辑SDE中的图层。

    Analysis:

    Solution: 这个在ArcMap中会有提示如何解决,具体操作就是,打开Catolog,找对想要编辑的图层,右键点击“Register As Versioned...”

    然后就可以在ArcMap中编辑了。 不过随之而来又会引起Q3.
    -------------------------------------------------------------------------------------
    Q3: 在调用IFeature.Store()等一些方法时又会报出组件异常错误(ComException)

    Analysis:

    Solution: 只能删除这个图层,重新建一个这样的图层了。。。Bug

  • 相关阅读:
    三分钟了解Activity工作流
    从sum()求和引发的思考
    关于JS事件的几点总结
    JS学习:第二周——NO.4DOM库
    JS心得——判断一个对象是否为空
    JS学习:第二周——NO.3盒子模型
    JS学习:第二周——NO.2正则
    &&&&数组去重方法总结&&&&&
    JS学习:第二周——NO.1回调函数
    JS学习:第一周——NO.4继承
  • 原文地址:https://www.cnblogs.com/XWCloud/p/2512776.html
Copyright © 2011-2022 走看看