2014-09-06 138 views

回答

2

您可以毫无问题地使用C/C++ SDK和map函数调用到带有external关键字的Delphi中。请参阅this example了解更多信息。

然而,正如有人在您提到的API中提到的只是将调用嵌入到Web服务中一样,您可以从Delphi调用Web服务或基于Web服务规范在Delphi上定义您自己的API。你可以看看C/C++的源代码,并尝试将其转换为Delphi。

如果直接调用Web服务或将API转换为Delphi不是您的选择,您可以使用C/C++ API作为外部函数调用。

+0

我不知道彭博API什么,而是从快速看起来,它似乎包括一个Web服务,Delphi应用程序原则上应该能够直接使用它? – MartynA 2014-09-06 10:43:15

+0

当然可以。我没有看过库本身,但是因为它有一个C/C++ SDK被建议使用它... – aleroot 2014-09-06 10:51:20

+0

'你可以看一下C/C++的源代码 - 是可用的源代码?我只能看到二进制文件,或者在Python/Perl的情况下需要导入动态库(DLL)。 – mjn 2014-09-06 11:04:57

0

通常,如果我遇到需要使用Delphi集成并不容易的Web服务的需求,我建议使用其中一个可用的SDK编写一个精简的“代理”。

代理和德尔福方之间的通信可以使用简单的文件传输或网络协议(如HTTP)来实现。

在这种情况下,它可能是:

(Bloomberg) <== Java SDK ==> (Java proxy) <== HTTP ==> (Delphi application) 

的主要优点是,第一protoype可以实现非常快的,因为所有需要的部件都已经存在:

  • 下载SDK,并创建Java Web服务(服务器)项目
  • 创建小型Delphi原型,它使用Indy
  • 在Java Web服务中发送HTTP请求,映射t他请求参数到BB API调用
  • 地图BB API呼叫响应到Java Web服务响应
  • 读取Delphi应用程序响应