0

CenterSnap.clsを vb バージョンから vb.NET に移行しています。vb6 プロジェクトを VS 2008 にインポートした後、次の 2 つのエラーについて混乱しています。

エラー 1

Imports System.Runtime.InteropServices
Imports ESRI.ArcGIS.esriSystem

<System.Runtime.InteropServices.ProgId("StackMap.CenterSnap")> 
Public Class CenterSnap
    Implements ESRI.ArcGIS.Editor.ISnapAgent
    Implements ESRI.ArcGIS.esriSystem.IPersistVariant ' <<<<ERROR 1

エラー 1 クラス 'CenterSnap' は、インターフェース 'ESRI.ArcGIS.esriSystem.IPersistVariant' の 'ReadOnly Property ID As UID' を実装する必要があります。実装するプロパティには、一致する 'ReadOnly' または 'WriteOnly' 指定子が必要です。C:\Projects\VB_ActiveX_dll\StackMap\StackMap\CenterSnap.vb 9 16 StackMap

エラー 2

Private ReadOnly Property IPersistVariant_ID() As ESRI.ArcGIS.esriSystem.IUID _
Implements ESRI.ArcGIS.esriSystem.IPersistVariant.ID '<<<< ERROR 2

エラー 2 インターフェイス「ESRI.ArcGIS.esriSystem.IPersistVariant」に一致するプロパティがないため、「IPersistVariant_ID」は「ID」を実装できません。C:\Projects\VB_ActiveX_dll\StackMap\StackMap\CenterSnap.vb 16 94 StackMap

        Get
            Dim pID As New ESRI.ArcGIS.esriSystem.UID
            pID.Value = "CenterSnap.clsCenterSnap"
            IPersistVariant_ID = pID

        End Get

なぜImplements ESRI.ArcGIS.esriSystem.IPersistVariant実装されていないのですか?プロジェクトで参照されている ESRI.esriSystem があります。

4

1 に答える 1