2009-09-07 4 views
9

몇 대의 PC에서 원격 GUI를 실행하고 있으며, 모두 메인 애플리케이션이 실행되는 중앙 서버와 통신합니다. 우리 자신의 수동 네트워크 프로토콜을 해킹하고 단추 누르기와 다양한 이벤트를위한 계층을 정렬하는 대신, 이것이 어떻게 든 더 교묘하게 해결 될 수 있다는 희망입니다.네트워크를 통해 Qt 신호/슬롯을 실행하기위한 아이디어가 있습니까?

실제로 이러한 Qt 객체에 대한 네트워크 프록시를 자동 생성하거나 RPC 인터페이스에서 신호/슬롯을 연결하는 등의 방법으로 멋지게 만들 수 있습니다.

  • 행할 수 있어야 Qt의 .ui 파일을 기반으로 코드 생성기를 작성,하지만 어쩌면 다른 사람이 (성공 또는없이) 전에이 작업을 시도하고있다?

  • 또 다른 아이디어는 네트워크 프록시 객체를 위해 Python에서 PyQt와 일부 메커니즘을 사용하는 것입니다.

  • Qt 특정 작업에 실패하면 일반적으로 원격 GUI를 어떻게 해결할 수 있습니까?

(우리가 필요로하는 웹 서버/클라이언트를 사용하여, ok가 우리의 Qt는 스타일, 그리고 더 멋진 위젯 아마 더 빠른 GUI).

답변

9

Qt를위한 Qxt 확장 라이브러리는 QxtRPCPeer 클래스

QxtRPCPeer가 Qt는 신호를 캡슐화 및 네트워크 연결을 통해 이들을 송신하는 도구를 가진다. 신호는 이어서 연결의 수신 끝 에서 다시 방출됩니다.

마지막 편집 (관련 영업 이익의 댓글이 16시 23분에서 2월 26일 '11에 아래 게시) : 1,5 년 후

업데이트. 우리는 1 년 동안 생산 소프트웨어에서 QxtRPCPeer를 사용해 왔습니다. 전혀 결함이 없습니다.(2015년 5월 22일에 영업 이익으로)

마지막 편집 :

LibQxt 내부 API 변경으로 유지하면, 0.6.2 기준으로 더 이상 유지되지는 저자에 대한 너무 많은 작품입니다 . 일부 부품은 여전히 ​​사용할 수 있지만 직접 유지해야합니다.

+0

아무 경험이 있습니까? 그것은 소켓 + 직렬화에 대한 대안으로 작동 할 수 있습니까? – rpg

+0

경험이 없으므로 모든 의견을 환영합니다. – TimW

+0

흥미 롭군요. 조사하고 돌아올 것입니다. – Macke

1

하는 "원격 GUI Qt는"에 대한 구글 검색, 나는 this 프로젝트를 Vedga라고 불렀다. Qt를 기반으로하며 간략하게 설명하면 다음과 같습니다.

Vedga는 네트워크 GUI 응용 프로그램을 개발하기위한 툴킷입니다. 개발자는 서버 측에 대해 Qt 프로그래밍 스타일을 사용하여 코드를 작성하고 클라이언트 측을 잊어 버릴 수 있습니다.

찾고 가치가 있습니다. 그것을 확인하고 나중에 참조 할 수 있도록 관측을 게시하면 좋을 것입니다.

+0

2002 년에 마지막으로 커밋 된 것 같습니다. – Macke

0

코드 작성시이 문제는 해결되지 않습니다. 나는 이미 존재하는 도구를 사용할 것이다.

이것은 다른 OS에 대해 Windows 용 RDP (터미널 서비스) 또는 X (간단히 말해 내장 네트워크 지원으로 인해)입니다.

+0

내 문제를 해결하기 위해 Windows 용 RDP를 설정하는 방법에 대한 링크가 있습니까? 나는 결코 RDP를 사용하지 않았기 때문에 성능이나 구현 난이도면에서 무엇을 기대해야하는지 거의 알지 못합니다. – Macke

관련 문제