0

我正在使用 Microsoft Sync 2.1 SDK 进行开发当我尝试从我的硬盘驱动器同步到外部硬盘驱动器(东芝 1.5 Gb)时,我遇到了这个问题:从我的开发环境(个人计算机)

在我的笔记本电脑(其他计算机)中的 Microsoft.Synchronization.dll 中发生了“System.Runtime.InteropServices.COMException”类型的第一次机会异常

由于以下错误,检索具有 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)

谢谢你的帮助!坦率

4

1 回答 1

0

如果您已正确安装 Sync Fx,则不必为 DLL 执行 regsvr。该错误主要是由于应用程序的目标平台与安装的 Sync Fx 平台不匹配。(你不能让 exe 以 x64 为目标并安装 x86 Sync Fx)。您需要在运行同步的机器上安装 Sync Fx,而不是在外部驱动器上

于 2014-11-04T18:45:24.523 回答