【发布时间】:2014-11-03 16:48:16
【问题描述】:
我正在使用 Microsoft Sync 2.1 SDK 进行开发 当我尝试从我的硬盘驱动器同步到外部硬盘驱动器(东芝 1,5 Gb)时,我遇到了这个问题: 从我的开发环境(个人电脑)
“System.Runtime.InteropServices.COMException”类型的第一次机会异常发生在 Microsoft.Synchronization.dll 中 从我的笔记本电脑(其他计算机)
检索具有 CLSID {....} 的组件的 COM 类工厂失败,原因是以下错误:80040154 未注册类(HRESULT 异常:0x80040154 (REGDB_E_CLASSNOTREG))
我在这个网站上阅读了很多条目(例如:System.Runtime.InteropServices.COMException (0x80040154):) 解释问题,我的问题与平台(x32/x64)无关,我的问题与注册有关,但我不知道如何在计算机中注册或运行“regsvr32.exe dll” 如何获取硬盘的 COM 对象? 如果我想使用其他外置硬盘驱动器,是否需要安装所有驱动程序的所有驱动程序?
我附上所有的错误信息:
SyncException Data: System.Collections.ListDictionaryInternal
SyncException Message:
SyncException InnerException: System.Runtime.InteropServices.COMException (0x80041007)
at Microsoft.Synchronization.CoreInterop.ISyncSession.Start(CONFLICT_RESOLUTION_POLICY resolutionPolicy, _SYNC_SESSION_STATISTICS& pSyncSessionStatistics)
at Microsoft.Synchronization.KnowledgeSyncOrchestrator.DoOneWaySyncHelper(SyncIdFormatGroup sourceIdFormats, SyncIdFormatGroup destinationIdFormats, KnowledgeSyncProviderConfiguration destinationConfiguration, SyncCallbacks DestinationCallbacks, ISyncProvider sourceProxy, ISyncProvider destinationProxy, ChangeDataAdapter callbackChangeDataAdapter, SyncDataConverter conflictDataConverter, Int32& changesApplied, Int32& changesFailed)
SyncException HelpLink:
SyncException Source: Microsoft.Synchronization
SyncException StackTrace: at Microsoft.Synchronization.KnowledgeSyncOrchestrator.DoOneWaySyncHelper(SyncIdFormatGroup sourceIdFormats, SyncIdFormatGroup destinationIdFormats, KnowledgeSyncProviderConfiguration destinationConfiguration, SyncCallbacks DestinationCallbacks, ISyncProvider sourceProxy, ISyncProvider destinationProxy, ChangeDataAdapter callbackChangeDataAdapter, SyncDataConverter conflictDataConverter, Int32& changesApplied, Int32& changesFailed)
at Microsoft.Synchronization.KnowledgeSyncOrchestrator.DoOneWayKnowledgeSync(SyncDataConverter sourceConverter, SyncDataConverter destinationConverter, SyncProvider sourceProvider, SyncProvider destinationProvider, Int32& changesApplied, Int32& changesFailed)
at Microsoft.Synchronization.KnowledgeSyncOrchestrator.Synchronize()
at Microsoft.Synchronization.SyncOrchestrator.Synchronize()
at Eric.Form1.Synchronize(String source, String destination)
SyncException TargetSite: Void DoOneWaySyncHelper(Microsoft.Synchronization.SyncIdFormatGroup, Microsoft.Synchronization.SyncIdFormatGroup, `enter codehere`Microsoft.Synchronization.KnowledgeSyncProviderConfiguration, Microsoft.Synchronization.SyncCallbacks, ISyncProvider, ISyncProvider, Microsoft.Synchronization.ChangeDataAdapter, Microsoft.Synchronization.SyncDataConverter, Int32 ByRef, Int32 ByRef)
感谢您的帮助! 弗兰克
【问题讨论】:
-
sn-p 中的错误是 SYNC_E_ITEM_MUST_EXIST,“同步提供程序报告其副本中不存在项目,尽管该项目的创建版本包含在该提供程序的知识中”。您所说的错误是完全不同的,它表明计算机没有安装 Windows Sync 或您的程序正在 32 位模式下运行。
标签: c# visual-studio-2010 microsoft-sync-framework hresult