YouTube | Facebook | Twitter  Feed

ArcMap のエクステンション ダイアログのチェック状態を変更する方法

2016/9/1 (木)

//エクステンションのチェックを外す操作はIExtension::Shutdownイベント内では効果がない
 
 
//C#
//http://resources.arcgis.com/en/help/arcobjects-net/componenthelp/inex.html#//0000000
 
IUID pUID = new UIDClass();
pUID.Value = "{3C5059FE-9F15-401A-94ED-EED914D73E3E}";  //Spatial Anayst
 
IExtensionConfig pExtensionConfig = (IExtensionConfig)ArcMap.Application.FindExtensionByCLSID((UID)pUID);;
 
if(pExtensionConfig != null)
{
    if(pExtensionConfig.State == esriExtensionState.esriESEnabled)
    {
        pExtensionConfig.State = esriExtensionState.esriESDisabled;
 
        MessageBox.Show("Spatial Analyst を無効にしました。");
    }
    else
    {
        MessageBox.Show("Spatial Analyst は有効ではありませんでした。");
    }
}
else
{
    MessageBox.Show("Spatial Analyst はインストールされていません。");
}
'http://resources.arcgis.com/en/help/arcobjects-net/componenthelp/index.html#//0042000000r8000000
Sub EnableExtension()
  Dim pUID As New UID
  pUID.Value = "{3C5059FE-9F15-401A-94ED-EED914D73E3E}"  'Spatial Analyst
  Dim pExtConfig As IExtensionConfig
  Set pExtConfig = Application.FindExtensionByCLSID(pUID)
 
  If Not pExtConfig Is Nothing Then
    If (Not pExtConfig.State = esriESUnavailable) Then
      pExtConfig.State = esriESEnabled  '有効
      pExtConfig.State = esriESDisabled '無効
    Else
      MsgBox "No licenses available"
    End If
  Else
    MsgBox "Extension is not installed"
  End If
End Sub

関連記事

  • この記事を書いた人

羽田 康祐

Twitter#一日一図法を連載中。GIS上級技術者、Esri認定インストラクター、CompTIA CTT+ Classroom Trainer、潜水士、元PADIダイブマスター、四アマ。WordPress は 2.1 からのユーザーで歴だけは長い。 代表著書『地図リテラシー入門―地図の正しい読み方・描き方がわかる』 GIS を使った自己紹介はこちら。ESRIジャパン(株)所属、青山学院大学非常勤講師を兼務。発言は個人の見解です。

-プログラミング, ArcGIS
-, ,