何熙颖
路人甲
路人甲
  • 注册日期2004-10-22
  • 发帖数71
  • QQ
  • 铜币439枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:4203回复:7

在CreateFeatureClass 时出现没有许可权限怎么办?

楼主#
更多 发布于:2006-07-02 09:28
<P>用Arcgis engine在图层组FeatureDataset下创建图层,采用以下语句</P>
<P><EM>object</EM>.<B>CreateFeatureClass</B> <B>(</B><I>Name</I>, <I>Fields</I>, <I>CLSID</I>, <I>EXTCLSID</I>, <I>FeatureType</I>, <I>ShapeFieldName</I>, <I>ConfigKeyword</I><B> )</B></P>
<P>运行出现异常,提示:“应用没有创建或修改这种类型数据的方案的许可权”,同样的一段代码,放到其他的系统运行却没有问题,这是怎么回事?</P>
<P>我想了不少办法都不行,请高手帮帮忙,不胜感激,谢谢!</P>
喜欢0 评分0
gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15951
  • QQ
  • 铜币25345枚
  • 威望15368点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
1楼#
发布于:2006-07-03 16:00
在你的程序里检测gdbedit的license,只有检测成功后才能使用
GIS麦田守望者,期待与您交流。
举报 回复(0) 喜欢(0)     评分
何熙颖
路人甲
路人甲
  • 注册日期2004-10-22
  • 发帖数71
  • QQ
  • 铜币439枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2006-07-05 15:53
<P>我不知道自己错在哪里,请你帮忙看看我的思路是在哪里出现问题的:</P>
<P>1。读取并验证LICENSE文件</P>
<P>2.连接SDE数据库,获取workspace</P>
<P>3。通过workspace->FeatureWorkspace,然后通过FeatWorkspace.OpenFeatureDataset打开一图层组FeatureDataset</P>
<P>4。通过FeatureDataset.<STRONG>CreateFeatureClass</STRONG> <B>(</B>Name, Fields, CLSID, EXTCLSID, FeatureType, ShapeFieldName, ConfigKeyword<STRONG> )</STRONG>创建图层</P>
<P>这样的步骤,以前都这样用过很多次了,都没有问题。这次虽然指定license可能出现问题了,但是实在不知道问题出在哪里。</P>

<P>你说的这个GeodatabseEdit的license如何验证,能否具体说清楚一点?</P>
<P>期待您的回复,谢谢!</P>
举报 回复(0) 喜欢(0)     评分
cl991036
管理员
管理员
  • 注册日期2003-07-25
  • 发帖数5917
  • QQ14265545
  • 铜币29669枚
  • 威望217点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • GIS帝国铁杆
3楼#
发布于:2006-07-06 10:06
<P>看情况,一般这样既可以地打开验证(c#)</P>
<P>   AoInitialize aoini =new AoInitializeClass();<BR>   if(aoini==null)return;<BR>   <BR>   if(aoini.IsProductCodeAvailable(esriLicenseProductCode.esriLicenseProductCodeEngine)==esriLicenseStatus.esriLicenseAvailable)<BR>   {<BR>    aoini.Initialize(esriLicenseProductCode.esriLicenseProductCodeEngine);<BR>   }</P>
没钱又丑,农村户口。头可断,发型一定不能乱。 邮箱:gisempire@qq.com
举报 回复(0) 喜欢(0)     评分
何熙颖
路人甲
路人甲
  • 注册日期2004-10-22
  • 发帖数71
  • QQ
  • 铜币439枚
  • 威望0点
  • 贡献值0点
  • 银元0个
4楼#
发布于:2006-07-06 15:52
<P>我想我对license的检验已经是成功的,如下代码</P>
<PRE>    Public Function InitializeApplication() As Boolean</PRE><PRE>        Dim bInitialized As Boolean<BR>        bInitialized = True</PRE><PRE>        m_AoInitialize = New AoInitialize<BR>        If m_AoInitialize Is Nothing Then<BR>            System.Windows.Forms.MessageBox.Show("Unable to initialize ArcGIS. This application cannot run! Please check that ArcGIS (Desktop, Engine or Server) is installed.","ESRI License Initializer")<BR>            bInitialized = False<BR>        End If</PRE><PRE>        'Initialize the application<BR>        Dim licenseStatus As esriLicenseStatus<BR>        licenseStatus = esriLicenseStatus.esriLicenseUnavailable</PRE><PRE>        licenseStatus = CheckOutLicenses(esriLicenseProductCode.esriLicenseProductCodeEngineGeoDB)<BR>        If licenseStatus <> esriLicenseStatus.esriLicenseCheckedOut Then<BR>            licenseStatus = CheckOutLicenses(esriLicenseProductCode.esriLicenseProductCodeEngine)<BR>            If licenseStatus <> esriLicenseStatus.esriLicenseCheckedOut Then<BR>                'System.Windows.Forms.MessageBox.Show(LicenseMessage(licenseStatus),"ESRI License Initializer")<BR>                bInitialized = False<BR>            End If<BR>        End If</PRE><PRE>        InitializeApplication = bInitialized</PRE><PRE>    End Function</PRE><PRE> </PRE><PRE>如果我把自己的程序独立出来,不挂在项目的解决方案里,是没有问题的,可是放到项目里就出现这样的问题,让我百思不得其解,头痛得很。。。真希望高手能给予提点一下</PRE><PRE> </PRE>
举报 回复(0) 喜欢(0)     评分
何熙颖
路人甲
路人甲
  • 注册日期2004-10-22
  • 发帖数71
  • QQ
  • 铜币439枚
  • 威望0点
  • 贡献值0点
  • 银元0个
5楼#
发布于:2006-07-08 10:00
<P>我终于解决这个问题了,还是得谢谢Mr gis,:)</P>
<P>是这样的,项目的解决方案里,首次AoInitialize的时候,不知道何缘故,<a href="mk:@MSITStore:C:\Program%20Files\ArcGIS\DeveloperKit\Help\COM\VB\esriSystem.chm::/IAoInitialize_InitializedProduct.htm" target="_blank" >InitializedProduct</A>为<STRONG>esriLicenseProductCodeEngineGeoDB,</STRONG>这导致我无法使它checkout,从而数据导入数据库时没有许可权。</P>
<P>所以我先把AoInitialize的所有扩展先checkin,然后AoInitialize.Shutdown,重新AoInitialize,问题就这样解决了。</P>
举报 回复(0) 喜欢(0)     评分
aplsc
路人甲
路人甲
  • 注册日期2006-08-15
  • 发帖数2
  • QQ
  • 铜币106枚
  • 威望0点
  • 贡献值0点
  • 银元0个
6楼#
发布于:2006-11-16 18:03
请教一下高手,好像直接用IFeatureWorkSpace创建FeatureClass 的话会出现错误,请问这样不可以吗?我现在不想用IFeatureDataSet来创建!
举报 回复(0) 喜欢(0)     评分
license
路人甲
路人甲
  • 注册日期2003-08-20
  • 发帖数235
  • QQ33281522
  • 铜币366枚
  • 威望0点
  • 贡献值0点
  • 银元0个
7楼#
发布于:2006-11-16 22:59
o
Gis的小石块 QICQ:33281522 EMAIL:license@vip.sina.com GIS的麦田守望者,希望和大家交流。 〓〓〓〓〓〓〓〓〓 〓 GISEMPIRE 〓 〓 灌水★波菜 〓 〓 专 用 章 〓 〓〓〓〓〓〓〓〓〓
举报 回复(0) 喜欢(0)     评分
游客

返回顶部