您的位置:首页 > 产品设计 > UI/UE

Visio中ArcGIS UML Semantics Checker 始终出现“This operation requires an ArcInfo or ArcEditor seat.”问题的解决

2006-11-10 13:00 411 查看
在Visio使用UML对ESRI Geodatabase进行建模时,发现ESRI提供的UML语义检查器Semantics Checker总是报错:
This operation requires an ArcInfo or ArcEditor seat.
Use the ArcGIS Desktop Administration Utility to set your seat type.
可是我的License在ArcCatalog或ArcMap里LicenseType明明已经显示为ArcInfo啊,郁闷,在Google里找了找,发现ESRI中国给了下面的解释:

Private Function GetDeploymentName() As String
Dim pLicense As IESRILicenseInfo
Set pLicense = New ESRILicenseInfo
Select Case pLicense.DefaultProduct
Case esriProductCodeViewer
GetDeploymentName = "ArcView"
Case esriProductCodeEditor
GetDeploymentName = "ArcEditor"
Case esriProductCodeProfessional
GetDeploymentName = "ArcInfo"
End Select
MsgBox GetDeploymentName
End Function

[/code]
先增加了一个ESRI System Object Library的引用,然后把这段代码放到里面一运行,提示"ArcView",难怪呢.好了,有这个信息就好办了,好了,说干就干,修改你现在Visio工程里的ESRI=>Semantics Checker宏代码如下:(最好把ESRI那个模版也修改一下,这样新的工程就都OK了)
Private Function GetDeploymentName() As String
Dim pLicense As IESRILicenseInfo
Set pLicense = New ESRILicenseInfo
Select Case pLicense.DefaultProduct
Case esriProductCodeViewer
GetDeploymentName = "ArcView"
Case esriProductCodeEditor
GetDeploymentName = "ArcEditor"
Case esriProductCodeProfessional
GetDeploymentName = "ArcInfo"
End Select
End Function

Sub Semantics_Checker()
If GetDeploymentName() = "ArcView" Then
Dim pAo As IAoInitialize
Set pAo = New AoInitialize
pAo.Initialize esriLicenseProductCodeArcInfo
pAo.Shutdown
End If
StartChecker
End Sub

本人QQ1283205,欢迎大家交流,一起提高。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐