2011-11-04 6 views
4

저는 C#의 라이브러리에서만 작동하는 RFID 리더를 사용하는 프로젝트를 진행하고 있습니다. 문제는 Java로 작업 (프로그램, GUI 등의 나머지 부분을 개발)하고 C# 프로그램을 사용하여 정보를 읽고 Java 프로그램에 문자열을 반환하도록 요청하는 것입니다.Java와 C를 교환하십시오 #

그래서 내가 할 수있는 방법이 있습니까?

미리 감사드립니다.

+0

가능한 중복 :-) 작동하는 가장 빠른 방법입니다 당신이 프로세스 통신 얻을이 방법 : http://stackoverflow.com/questions/468198/consuming-a-net-library -via-com-or-direct-in-java – kubal5003

답변

1

이 문제에 접근하는 한 가지 방법은 프로세스 간 통신의 문제로 간주하는 것입니다. 여러 가지 옵션이 있습니다 (Java가 필요한 Windows API에 액세스 할 수 있다고 가정 할 때, 실제로 Java 개발자는 아닙니다).

명명 된 파이프, TCP는/IP, 파일 시스템, 메일 슬롯, 등등

다음은 몇 가지 옵션에 대한 좋은 기사입니다 : http://msdn.microsoft.com/en-us/library/windows/desktop/aa365574(v=vs.85).aspx

또 다른 옵션, I 대해 말을 충분히 모르는 노력하고있다 .Net 라이브러리를 자바 프로세스로로드한다.

+0

팁 주셔서 감사합니다. 당신이 나열한 것들 중에서 가장 쓸모있는 것이 Named Pipes였습니다. 그러나 프로세스가 다른 컴퓨터에있는 것이 문제가됩니까? 그리고 내가 읽은 한 거기에는 흐름 제어 프로토콜이 없습니다. –

1

소켓을 사용할 수 없습니까? 그들은 둘 다 지원하지만 다른 언어간에 시도하지 않았습니다.
행운을 빈다.

0

너무 깊게 신경 쓸 필요가 없다면 Java Native Interface를 사용하여 Java에서 C#으로 호출을 마샬링하고 다시 호출하도록 코드를 생성 할 수 있습니다. c/C++에서 "다리"를 만들어야합니다 (일반적으로 C++가 약간 더 쉽습니다).

관련 문제