2011-04-09 2 views
0

Windows에서 RPC를 사용하고있어 기본 클라이언트/서버 모델 설정과 작업을하고 있습니다. 2에서 OK를 문자열로 전달할 수 있지만 지금은 확장해야합니다. 2와 2 사이의 이진 구조를 전달하는 방법을 알 수 없습니다. MIDL 컴파일러는 구조체 크기를 전혀 알지 못하기 때문에 분명히 void *를 전달하려고 시도하지만이 작업을 수행하기 위해 IDL에 구조를 정의하는 방법이 필요합니다. 나의 현재 IDL은 다음과 같습니다Windows에서 RPC를 통해 UDT를 보내십시오.

[uuid("1D51414D-150C-4F4C-8742-0C08AFBE409E"), version(1.0)] 
interface RpcVendor 
{ 
    void SendMessage([in] handle_t hBinding, [in, string] char *message); 
} 

그리고 내 구조는 다음과 같다 : IDL에서 그 정의를 통해 전달할 수있는 방법이

struct { 
    char *title; 
    char *message; 
    int type; 
} 

있습니까?

감사합니다, J

답변

1

개체는 두 개의 문자열과 int를 가지고있다. 이러한 객체를 IDL 소스 파일에 정의하고 컴파일러에서 필요한 스텁을 뱉어 내면 패스 할 수 있습니다.

시작하려면 here을 시작하십시오.

+0

고마워, 그건 내가 원하는 바보 야. IDL 소스 파일에서 객체를 어떻게 정의합니까? 나는 MSDN 사이트를 살펴 보았고 찾을 수있는 유일한 정보는 객체가 아닌 함수를 정의하는 것과 관련이있다. – JWood

관련 문제