2011-10-04 2 views
1

나는 RabbitMQ의 c 라이브러리를 사용하고 있습니다. 그것은 amqp_login 함수를 가지고 있습니다.amqp_login이 "인수 목록이 너무 깁니다"오류가 발생합니까?

다음과 같이 사용하고 있습니다.

::amqp_rpc_reply_t c_amqp_rpc_reply = 
         ::amqp_login 
          (m_amqp_connection_state 
          , "fortytwo" 
          , 0 
          , FRAME_MAX 
          , 0 
          , 131072 
          , "guest" 
          , "guest" 
          ); 

오류로 인해 인수 목록이 너무 길어졌습니다.

누구든이 문제를 해결할 수있는 아이디어가 있습니다.

답변

0

당신이 사용하고있는 librabbitmq의 버전을 아는 것이 도움이 될 것입니다.

현재 버전에는 amqp_login에 대한 프로토 타입이 있으므로 여섯 번째 매개 변수 (131072)가 의심스러운 것 같습니다.

RABBITMQ_EXPORT amqp_rpc_reply_t amqp_login(amqp_connection_state_t state, 
              char const *vhost, 
              int channel_max, 
              int frame_max, 
              int heartbeat, 
              amqp_sasl_method_enum sasl_method, ...); 

의 예를 보면, 당신은 아마 원하는 같아요

amqp_login(conn, "/", 0, 131072, 0, 
      AMQP_SASL_METHOD_PLAIN, 
      "guest", "guest"); 

당신은 또한 새로운 신기한 AMQP URIparser을 시도 할 수 있습니다. 다시 예제를 사용하여 어떻게 사용되는지보십시오.

관련 문제