Qbi*_*bik 5 excel r tcl dde tcltk2
通过Excel将Excel连接到'ABC',通过DDE连接R和Excel也可以,但是如何将R连接到'ABC'应用程序?
我有应用程序提供DDE接口,从Excel我可以使用此DDE参考从中检索值:
='ABC'|DDE!_nazwa_value
Run Code Online (Sandbox Code Playgroud)
从R我试图使用tcltk2库,如下:
tcltk2::tk2dde.request(service="ABC", topic="DDE", item="_nazwa_value")
Run Code Online (Sandbox Code Playgroud)
但是发生错误:
Error in structure(.External(.C_dotTcl, ...), class = "tclObj") :
[tcl] remote server cannot handle this command.
[1] "Error in structure(.External(.C_dotTcl, ...), class = \"tclObj\") : \n [tcl] remote server cannot handle this command.\n\n"
attr(,"class")
[1] "try-error"
attr(,"condition")
<simpleError in structure(.External(.C_dotTcl, ...), class = "tclObj"): [tcl] remote server cannot handle this command.
Run Code Online (Sandbox Code Playgroud)
我只是想用tcltk dde功能来检索应用程序数据,我认为item我的一部分tk2dde.request是错误的,但我已经尝试了各种修改(不_举例),你知道解决这个问题的任何线索或资源?
编辑
出现问题我在服务器主题列表上看不到ABC服务器和DDE主题:
tk2dde.services()但Excel仍然可以使用连接和检索值='ABC'|DDE!_nazwa_value,DDE查询也看不到它
小智 2
您可以阅读tcl/tk wiki 中有关DDE的文章:
(谈论使用 Internet Explorer) ...上述所有实验都应该可靠地“工作”,因为从用户的角度来看,IE 确实按照所描述的方式运行。然而,回到 Tcl 进程,[dde] 通常会抛出“远程服务器无法处理此命令”异常。这是因为,在 KBK 的分析中,DDE 没有给出“区分‘预期结果,但服务器未能提供结果’和‘没有预期结果’的方法”。不接收 DMLERR_NOTPROCESSED 的唯一方法是调用“dde exec -async ...”
注意:我尝试使用 Excel +“请求”的 DDE 的 tcl 示例,但得到了与您相同的错误:“远程服务器无法处理此命令”。
致敬!,