arcgisengine中調用gp報錯的問題

問題描述:在調用gp的時候,有些工具中如clip、轉換工具、3d分析中的一些工具idwclassfiy等工具的時候添加了引用就不報錯,但是在使用eliminatesmooth Polygon的時候就會提示錯誤如下圖:

arcgisengine中調用gp報錯的問題 - Shawn Lee - 墨是黑水

 

這種錯誤在排除了是輸入參數錯誤之後,問題就是license權限不夠。

一般方法是添加arcinfolicense

解決方式:

arcgis10.2中,找不到

esriLicenseProductCode.esrilicenseproductcodearcInfo這個參數,但是比以前多了其他一些參數,比如:basicstandardadvanced等。如下圖,可以試一下下面的幾個。

經過嘗試,發現對於smooth Polygonarcgis engine enterprise geodatabase已經足夠,但是對於eliminate,必須要用advanced權限才能足夠,經過嘗試,arcgis server也可以。

需要注意的是,不需要多選,如果多選,系統會默認最低級的權限,而忽略高級權限,這就是我想了一天多才能夠解決的原因,血的教訓啊。

arcgisengine中調用gp報錯的問題 - Shawn Lee - 墨是黑水

 

當然也參考了下面這篇文章。深表感謝。

http://blog.csdn.net/hsg77/article/details/7643819

 

具體方式如下:

1Vs2010中,切換到代碼模式,項目——add arcgis license checking

arcgisengine中調用gp報錯的問題 - Shawn Lee - 墨是黑水

 

2、單擊“advanced”,如果涉及到3d分析或者空間分析,需要在右邊勾選,不然在調用響應gp的時候會報錯。(切記,在左邊選advanced的時候,不要再選上面的項,不然系統會默認選最低級的license)。

 arcgisengine中調用gp報錯的問題 - Shawn Lee - 墨是黑水

 

如果是選arcgis server,不需要選extensions,不知道爲什麼。

3、這樣,在program.cs的代碼中,會自動添加相關license的代碼。如果需要可以加判斷語句,以使用戶在使用的時候會提示缺什麼license

當然,這個程序在用的時候,是需要arcgis desktop支持的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章