c++ - Excel 调用 C++ 程序的函数

标签 c++ excel

  1. 我有一个 C++ 程序 program.exe,它有一个函数 doSomething()
  2. 但不是在 program.exe 中调用 doSomething() 的逻辑,我需要 excel 作为前端来决定何时调用此 doSomething() - 基于特定单元格中的一些变化
  3. XML/CSV IO 已过时,因为决策是实时的、低延迟的
  4. 那么我该如何将 excel 与 program.exe 连接起来,以便 excel 调用 doSomething()

我希望有人能指出我的方向。我使用 QT 4.8.5 开发 c++ 项目。 我一直在阅读,但是 COM 模型对我来说很新。我要写 COM 模型吗?动态链接库?

COM/DLL 如何“知道”excel 调用了它并因此提供某种“确认”并反过来调用 program.exe 中的 doSomething()?

最佳答案

执行此操作的一种方法是创建一个包含函数 doSomething 的 DLL,并按照这篇 MSDN 文章中的描述从 Excel 中调用它:How to: Access DLLs in Excel

您还可以从您的应用程序中创建一个 COM 组件。这会更容易从 Excel 访问(尤其是涉及到参数类型时),但是如果您从未这样做过(并且您只需要调用一个函数),那么尝试“纯 DLL”可能会更好"-先接近。

关于c++ - Excel 调用 C++ 程序的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18539377/

相关文章:

c++ - 如何在不缓存到数组的情况下对 0、1、...、n-1 中的 k 个随机数进行采样

c++ - 编译器似乎不接受 Agent 类

用于选择要从中复制的 Outlook 文件夹的 Excel VBA 用户表单

vba - 如何附加或组合范围?

excel - 将列转换为大写的动态范围

C++ GTKmm - 如何获取我的 TextView (TextBuffer) 的内容

c++ - __STDCPP_DEFAULT_NEW_ALIGNMENT__ 和alignof(std::max_align_t)之间的顺序

vba - 如何编写 VBA 函数来求和无限范围

excel - 每次循环递减

java - JNI GetMethodID 在 native 线程中导致错误