【问题标题】:.xll Add-in isnt work without Visual Studio full version installed.xll 加载项在没有安装 Visual Studio 完整版的情况下无法工作
【发布时间】:2020-09-18 18:48:43
【问题描述】:
  • 更新*

我制作了一个 Excel 插件(.xll 文件),带有一些数学函数,用 C++ 编译,它在我的计算机上正常工作。好吧,当我尝试发送给其他人时,它不起作用。 Excel 显示文件已损坏的消息,当我们尝试打开它时,打开一个带有一些代码/单词/符号的工作表

我试图找到解决方案,但无济于事。但我发现了真正的问题。 在这台机器上安装 Visual Studio(完整版)后无法正常工作,xll 插件工作!

所以,我想我有一个程序、功能、组件与使程序运行的 Visual Studio(完整版)一起安装。我尝试了 SDK,但没有成功。 请问你能帮帮我吗?我附上了 3 张图片,一张有插件工作,另外 2 张有错误。

PS:我尝试为两个 Excel 编译 32 位和 x64 版本,并在两个 Excel(32 位和 64 位)中发生

erro 1

erro 2

working

一位同事要求我更新 -dumpbin /dependents Addin.xll 的结果 关注以下:

文件类型:DLL

图片有以下依赖:

KERNEL32.dll
USER32.dll
MSVCP140D.dll
VCRUNTIME140_1D.dll
VCRUNTIME140D.dll
ucrtbased.dll

总结

    1000 .00cfg
    3000 .data
    4000 .idata
    1000 .msvcjmc
    A000 .pdata
   29000 .rdata
    2000 .reloc
    1000 .rsrc
   70000 .text
   32000 .textbss
    1000 .tls

【问题讨论】:

  • 打开 developer command prompt 并运行 dumpbin /dependents addin.xll 以查看您的插件需要哪些 DLL。
  • 非常感谢!我会这样做的!...然后...之后,我能告诉你它是哪一个吗?
  • 一旦你收集到这些信息,你应该edit它进入问题。

标签: visual-c++ excel-addins


【解决方案1】:

1) 确保您发送给其他人的是发布版本,而不是调试版本。

2) 尚未安装 VC++ 运行时的用户将需要从 The latest supported Visual C++ downloads 页面(其中位数取决于您发送给他们的 XLL 的 x86 和 x64 版本,而不是他们的 Windows 安装的位数。

MSVCP140D.dll
VCRUNTIME140_1D.dll
VCRUNTIME140D.dll
ucrtbased.dll

这些 DLL 名称中的 'D' 后缀代表“调试”。这些是 debug C/C++ 运行时 DLL,由 Configuration = Debug 构建使用,并作为 Visual Studio 安装程序的一部分安装。根据Determining Which DLLs to Redistribute,它们将在开发期间使用,但不会以其他方式部署:

应用程序的调试版本和各种 Visual C++ 调试 DLL 不可再分发。

【讨论】:

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