2

我正在按照如何以编程方式打开特定的彭博终端页面的步骤进行操作?通过 DDE (ActiveX/Javascript) 控制 Bloomberg 终端窗口:

xlApp = new ActiveXObject("Excel.Application");
var app = xlApp.DDEInititate("winblp", "bbk");
xlApp.DDEExecute(app,"<blp-1><home>MSFT US<EQUITY><GO>DES<GO>");
xlApp.DDETerminate(app);
app = "";
xlApp.Quit();

但是,调用 DDEInitiate 失败(IE8)并显示“对象不支持此属性或方法”——我可以看到 xlApp 已定义,并且 Visual Basic 中的等效调用似乎工作得很好:

ch = DDEInitiate("winblp", "bbk")

谁能确定为什么 javascript 不起作用?

谢谢

瑞安

4

1 回答 1

3

我也遇到过同样的问题,而且我现在相当确信没有办法用 javascript 做到这一点。我对 vbscript 没有任何问题,所以如果它有帮助的话:

<html>
<body>

<input id="button1" type="button" value="Bloomberg Test" onclick="button1_onclick()" />

<script type="text/vbscript" src="test2.vbs"></script>

</body>
<html>

test2.vbs:

Sub button1_onclick()
    Dim ch
    Dim oXL

    Set oXL = CreateObject("Excel.Application")

    ch = oXL.DDEInitiate("winblp", "bbk")
    oXL.DDEExecute ch, "<blp-3><home>AAPL US<EQUITY><GO>BRC<GO>"
    oXL.DDETerminate ch

    oXL.Quit
End Sub
于 2012-09-18T21:50:05.887 回答