我有一个传统的第三方COM .dll,用于为专有数据库产品提供Excel可调用的接口。 .dll在与Excel相同的物理计算机上运行。我需要在远程服务器上执行.dll(以及它正在调用的数据库),同时仍然保持客户端的简单Excel可调用性。我对所有不同的MS技术感到困惑,似乎暗示有一种简单的方法可以做到这一点。有人可以指出我正确的方向(更容易更好)?
答案 0 :(得分:2)
有3个步骤:
配置安全性。
为了使作为DLL的COM服务器在其自己的进程中运行,它需要一个COM代理(参见MSDN)。
在Excel中,如果使用VBA来获取COM DLL,则CreateObject方法有一个可选参数,即服务器所在的机器,这正是您所需要的。 如果您不使用VBA,我担心您需要编写一个代理服务器,将调用转发给真实服务器。我无法通过配置找到一种方法。
使用远程服务器上的组件服务来设置安全性,以便Excel中的用户可以启动和使用COM服务器。