2

当 XLL 文件链接到其他 DLL 时,如何以编程方式将其加载到 Excel 中。使用 c# winforms application + Excel Automation 我正在创建 Excel Application 对象。然后我正在使用:

bool bXllLoadSuccess = _excelApp.RegisterXLL(_pathXll);

当 XLL 是独立的时就可以了。当它依赖于其他 DLL 时会出现此问题。即使我把它们放在同一个文件夹中,Excel 也不想把它们捡起来。在加载 XLL 之前,我尝试执行以下操作,但没有帮助:

_excelApp.DefaultFilePath = Path.GetDirectoryName(_pathXll);

我也试过这个:

Directory.SetCurrentDirectory(Path.GetDirectoryName(_pathXll));

Dependency walker 没有显示任何问题 - 所有必需的文件都与 XLL 位于同一文件夹中。有任何想法吗?

谢谢。

UPD:我尝试将所有需要的 dll 复制到一个文件夹中,然后将其路径添加到 PATH 变量中。没有帮助:)

UPD2:我尝试同时更改 c# 应用程序和 Excel 应用程序对象的当前目录。没有帮助:(

4

0 回答 0