【发布时间】:2011-02-22 09:45:41
【问题描述】:
我正在尝试使用 R(D)Com 界面。我在机器上安装了 R 2.12.1。为了在 C# 中使用这个接口,我加载了 rscproxy_1.3-1 包,然后在我的机器上安装了 R_Scilab_DCOM3.0-1B5。另外,我将 sciproxy.dll 从 Program Files\R(D)COM Server\Scilab 复制到 Program Files\R(D)COM Server\bin,安装界面时告知。
我的问题:
作为测试的一部分,我尝试了博客文章 http://vvella.blogspot.com/2010/08/integrate-c-net-and-r-taking-best-of.html 中的代码。但是由于语句 rconn.Init(“R”) 引发的异常,我的表单应用程序失败了。异常文本是 HRESULT 中的异常:0x80040013 我尝试从 Programs->R->R(D)COM Server->Server 01 Basic Test 运行示例。在启动的表单上,我单击了“Start R”按钮,但它失败并在文本框中打印为“Initializing R...Function call failed Code: -2147221485 Text: installation problem: unable to load connector”
我试过这个:
我尝试在Index html页面的帮助下对其进行故障排除,在安装部分,我发现安装的R/Bin文件夹下必须有rproxy.dll。另外,HKEY_LOCAL_MACHINE\Software\R-core\R\InstallPath 应该指向安装文件夹。
我的机器上缺少的东西是
- 安装的 R/bin 文件夹没有 包含 rproxy.dll。我在哪里可以得到 这个dll?或者是 sciproxy.dll 而是?
- HKEY_LOCAL_MACHINE\Software\R-core\R\InstallPath 指向安装文件夹,但是 下没有条目 HKEY_CURRENT_USER\软件。
我猜想安装或注册 COM 服务器有些问题。但我没有成功地弄清楚。
你能告诉我哪里出错了吗?
谢谢,
卡皮尔
【问题讨论】:
-
从比表单更简单的东西开始 - 尝试使用控制台应用程序,然后将 mrnye 的代码放入
Main。 -
另外,我记得旧版本中存在一个错误,这意味着 rcom 必须安装在默认库位置 (
R.home("library")) 或找不到连接。不知道这是否已经修复。 -
嗨卡皮尔,如果你得到了这个问题的解决方案,请回复解决方案。提前致谢