COM 服务器执行失败
COM Server failed execution
我有一些 dll 和 exe 文件。我注册了这些文件并创建了所需的实例。在一种情况下,实例未创建。任何其他 dll 和 exe 都会导致成功的结果,只有这个是问题。当我上次注册有问题的文件时,没有创建实例,但是如果没有注册有问题的文件,我尝试注册一个给了我成功结果的文件,但同样,没有创建实例。代码没有改变,相同的代码不再创建实例,这对我来说似乎很奇怪,因为相同的代码可以在注册有问题的文件之前创建实例。我尝试用相同的结果替换 CoCreateInstance 为 CoGetClassObject。错误是服务器执行失败。
我使用 Visual Studio 2010 和 CLSCTX_LOCAL_SERVER 标志。
我的假设是这种奇怪的行为是由 64 位环境和 32 位 COM 对象引起的。我尝试了这个 workaround 但结果是一样的 服务器执行失败 。有什么想法吗?
编辑: 我搜索了一个用于 COM 对象的接口 IID,但在注册表中不是这个 IID。这是这种情况的可能线索吗?
问题已解决。原因是某些东西删除了一个.dll文件,当我尝试注册.exe时,由于缺少dll而注册不成功。
我有一些 dll 和 exe 文件。我注册了这些文件并创建了所需的实例。在一种情况下,实例未创建。任何其他 dll 和 exe 都会导致成功的结果,只有这个是问题。当我上次注册有问题的文件时,没有创建实例,但是如果没有注册有问题的文件,我尝试注册一个给了我成功结果的文件,但同样,没有创建实例。代码没有改变,相同的代码不再创建实例,这对我来说似乎很奇怪,因为相同的代码可以在注册有问题的文件之前创建实例。我尝试用相同的结果替换 CoCreateInstance 为 CoGetClassObject。错误是服务器执行失败。
我使用 Visual Studio 2010 和 CLSCTX_LOCAL_SERVER 标志。
我的假设是这种奇怪的行为是由 64 位环境和 32 位 COM 对象引起的。我尝试了这个 workaround 但结果是一样的 服务器执行失败 。有什么想法吗?
编辑: 我搜索了一个用于 COM 对象的接口 IID,但在注册表中不是这个 IID。这是这种情况的可能线索吗?
问题已解决。原因是某些东西删除了一个.dll文件,当我尝试注册.exe时,由于缺少dll而注册不成功。