【问题标题】:Cannot add reference to Skype4COM .dll on Windows 7 x64无法在 Windows 7 x64 上添加对 Skype4COM .dll 的引用
【发布时间】:2011-12-20 14:17:33
【问题描述】:

我收到了使用 regsvr32 成功注册 Skype4COM.dl 的对话框。
但是,当我尝试将 COM 选项卡中对 Skype4COM 1.0 类型库的引用添加到我的 VS 2008 项目中时,我得到“无法加载对 Skype4COM 1.0 类型库的引用”。

在 32 位 XP 上没有遇到这个问题。

Dependency walker 说我缺少 GPSVC.DLL 和 IESHIMS.DLL,但它们分别位于 c:\system\windows32 和 c:\program files\internet explorer 中。

我该如何解决这个问题?

TIA。

【问题讨论】:

    标签: visual-studio-2008 windows-7-x64 skype4com


    【解决方案1】:

    skype4com.dll 中嵌入的类型库不是很干净,会产生警告。足以阻止 IDE 添加它。您将不得不手工完成。启动 Visual Studio 命令提示符并运行 tlbimp.exe utility 以生成导入库。您会看到警告,但会获得所需的 .dll。 Afaik 只要您仅在平台目标设置为“x86”的项目中使用警告,警告就是良性的。

    【讨论】:

    • 我现在收到“检索 COM 类工厂以获取具有 CLSID {830690FC-BF2F-47A6-AC2D-330BCB402664} 的组件失败,原因是以下错误:80040154。”当我尝试实例化一个 Skype 对象时。我安装了 Skype 5.5.0.124。有任何想法吗?再次感谢。
    • 另外,我刚刚发现如果我以管理员身份运行命令提示符并使用 c:\windows\system32\regsvr32 注册 dll,我可以使用 Add Reference 的 COM 选项卡将其导入 VS对话框。
    • ... 并且我在构建针对 x86 的解决方案后解决了检索 COM 类的错误,如您在上面指定的。再次感谢。
    • 我有同样的错误,但我无法以管理员身份注册dll。我收到“模块“C:\Windows\System32\mydll.dll”已加载,但未找到入口点 DllRegisterServer。”。我该怎么办?
    【解决方案2】:

    我的方法不同,但它对我有用。在命令行中: regsvr32 skype4com.dll ,然后你可以像往常一样在IDE中添加引用。

    【讨论】:

      【解决方案3】:

      here 的指令终于让我解决了这个问题并解释了我遇到的问题。想发布它以防其他人发现它有用。

      【讨论】:

        【解决方案4】:

        为 32 位编译您的应用。 构建 -> 平台目标:x86。 这适用于 32 位和 64 位

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-03-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多