问题描述
我正在尝试使用 rDotNet 访问 R 中的 C# dll。请注意,我根本不精通 C# 和 Visual Studio。
在 R 中,当我第一次尝试运行 .cinit()
函数时,我得到:
NOTE: starting CLR server
Warning message:
In system2(exe,args,wait = FALSE,stderr = FALSE,stdout = FALSE) :
'"C:/Users/User/DropBox/My PC (DESKTOP-T9I5J)/Documents/R/win-
library/3.6/rDotNet/server/bin/Debug/Clrserver.exe"' not found
随后尝试使用任何函数(例如 .cnew
)会导致:
Error in internal_cnew(classname,argv) :
problem communicating with CLR,Could not complete message
我在我的计算机和互联网上对 Clrserver.exe
进行了多次搜索。几乎没有任何地方提到它!唯一提到这个文件存在的地方是在 rDotNet 文档中,否则我完全不知道从哪里获得这个 .exe。
我通过 R 安装了 rDotNet,并作为 Visual Studio 中的包安装。我找到了 nuget
和 msbuild
文件并将它们添加到我的路径中。我需要做的就是找到这个 Clrserver.exe。
解决方法
源代码在此 repo 中,如果您不知道如何构建 dotnet 项目,则可以从此处下载二进制文件:
https://github.com/tr8dr/.Net-Bridge/tree/master/bin/Debug
抓取所有文件(可执行文件和dll)