2016-01-14 2 views
0

Для меня не работает следующее. Просто сбой, без исключения.R.NET вылетает, когда я запускаю приложение для аппетита для торта

REngine engine = null; 
try 
{ 
    REngine.SetEnvironmentVariables(@"C:\Program Files\R\R-3.2.3\bin\x64", Directory.GetCurrentDirectory()); 

    engine = REngine.GetInstance(); 
} 
catch (Exception ex) 
{ 
    Console.WriteLine("Error: " + ex.Message); 
    Console.ReadKey(); 
    return; 
} 

Я установил R для версии 3.2.3 Windows без опции реестра.

Я использую R.NET.Community версию 1.6.5, ориентированную на .NET framework 4.0.

Я попробовал путь @ "C: \ Program Files \ R \ R-3.2.3 \ Bin \ i386", а также и я получаю

%1 is not a valid Win32 application Error: This 64-bit process failed to load the library R.dll. Native error message is 'The system cannot find the file specified'

Спасибо за любые советы.

+0

Звоните M $ ... вы оплатили подписку, не так ли? –

+0

ха-ха, это хорошо. Я все равно работал. См. Мой ответ – superfly71

ответ

1

Хорошо, я получил его работу.

Вам нужно настроить таргетинг на 64-битную версию R. Я где-то читал, что последние разработки R ориентированы на 64-битную Windows.

Вам нужны записи в реестре. Вы можете сделать это, выполнив RSetReg.exe в каталоге R bin.

После этого, просто сделать это, и он будет работать:

REngine.SetEnvironmentVariables(); 
engine = REngine.GetInstance(); 

Я испытал это на R 3.2.3 и 3.2.2 RRO и они оба работают с Rdotnet 1.6.5.

+0

Вызов 'REngine.SetEnvironmentVariables();' не требуется. Этот вызов выполняется неявно по вызову 'REngine.GetInstance();'. –

Смежные вопросы