2012-10-11 2 views
0

R을 C# 웹 응용 프로그램과 인터페이스하려고합니다. 제공되는 많은 솔루션을 시도했지만 통과하지 못했습니다. 오류 : HRESULT 예외 : 나는 다음 0x80040013HRESULT에서 예외 : 0x80040013 : C와 함께 Intregating R :

단계했다 :
  • 는 R에 rscproxy_1.3-1 패키지를로드 윈도우 XP (32 비트)
  • 설치된 R_Scilab_DCOM3.0-1B5에 대한 R 2.15.1을 설치
    1. /R.15.1/library
    2. 는 C에 시스템 변수 경로를 설정합니다 :/프로그램 파일/R/R.15.1/빈
    3. 추가 3 COM 참조 - STATCONNECTORCLNTLib, StatConnectorCommonLib, STATCONNECTORSRVLib 코드 :

    개인 StatConnectorClass의 _statconnector = 새로운 STATCONNECTORSRVLib. StatConnectorClass(); _statconnector.Init ("R")은 -> 라인 HRESULT에서 예외를 보여줍니다 0x80040013

    내가 잘못 가고 어디 있는지를 알아 내기 위해 제발 도와주세요!

    +0

    참조 http://stackoverflow.com/questions/5377070/c-sharp-r-interface – Contango

    답변

    5

    저는 몇 년 전에 C#과 인터페이스하기 위해 COM 메소드를 사용했지만 각 버전 변경시 ​​언급 한 것과 비슷한 문제가 있었기 때문에 포기했습니다. 또한 R (D) COM의 라이센스 체계는 다소 불분명하며 .NET/COM/R 둘러보기에는 너무 많은 부분이 있습니다.

    내 현재 선택은 Rserve이며 유지 관리가 잘되고 나를 실망시킨 적이 없습니다. 나는 my own test bed을 C#으로 작성했지만, RserveCLI이 더 완전하기 때문에 폐기 된 것으로 간주합니다.

    R.NET은 이론적으로 더 좋은 개념이지만 이상한 이유로 저자가 "안정적"이라고 생각합니다. 주로 메모리 관리에서 많은 버그가 있기 때문에 매우 완곡 적입니다. 너무 좋지 않아서 결코 벗어나지 않았습니다.

    +1

    @Dieter에게 즉각적인 응답을 부탁드립니다. 나는 R.NET을 사용해 보았고 완벽한 결과를 얻었다. 또한 나는 http://rcom.univie.ac.at/download.html에서 RAndFriends 패키지를 다운로드했다. 내 문제를 해결하는 데 도움이되었습니다. 귀하의 답변에 대해 Dieter에게 다시 한 번 감사드립니다. – Aada

    +0

    Howard Mansell이 저에게 연락하여 R.NET과 관련된 F # 관련 작업에 대해 알려줍니다 : https://github.com/BlueMountainCapital/FSharpRProvider. R.NET 사이트에 좀 더 안정적인 메모리 관리 기능을 갖춘 새 릴리스를 요구하는 약간의 폭풍이 있었으면 좋겠습니다. –

    4

    R.NET이 C#에서 R 기능에 액세스하는 훨씬 더 좋은 방법이라고 생각합니다. 그것은 모두 프로세스 내에서 실행되므로 외부 R 프로세스를 실행할 필요가 없습니다.

    the NuGet package을 설치하면 1.5 버전이 설치됩니다. 이것은 내가 사람들이보고 한 대부분의 충돌을 해결하기 위해 만든 몇 가지 메모리 관리 픽스를 통합합니다. 디터가 지적했듯이 우리는 F# RProvider을 통해 R.NET을 광범위하게 사용하며, 최신 버전에서 매우 안정적입니다. RProvider에는 C#에서 사용할 수있는 R 함수에 대한 래퍼 함수를 ​​생성하는 래퍼 생성기도 함께 제공됩니다. 예를 들어, C#에서 R.plot (... params ...)으로 plot 함수를 호출 할 수 있습니다. 그리고 당신은 Intellisense를 얻습니다.

    +0

    NuGet 버전 1.5를 사용하여 오늘 1.4 버전의 시스템을 손상시킨 그래픽 예제 코드를 사용해 보았습니다. 이제 Ok가 작동하는 것 같습니다. 아직 자세히 테스트하지는 않았지만 데모를 다시 시작합니다. –

    +1

    코드! 하나님의 사랑을 위해서 ...CODE를 보여주세요! –

    관련 문제