我使用QuickFIX c ++ API为FIX事务创建了一个应用程序。应用程序正在连接到服务器,但服务器发送"提供用户名< 553>"信息。我寻找和结果,发现我需要添加用户名和密码到toAdmin方法创建此代码,以实现这一目标
void Application::toAdmin( FIX::Message& message, const FIX::SessionID& sessionID)
{
if (FIX::MsgType_Logon == message.getHeader().getField(FIX::FIELD::MsgType))
{
FIX44::Logon& logon_message = dynamic_cast<FIX44::Logon&>(message);
logon_message.setField(FIX::Username("my_username"));
logon_message.setField(FIX::Password("my_password"));
}
}
然后它抛出和异常。请建议做什么
答案 0 :(得分:1)
删除此行并处理异常
FIX44::Logon& logon_message = dynamic_cast<FIX44::Logon&>(message);
之后将其放入
<强> message.setField(FIX ::用户名(&#34; my_username&#34)); ``````` message.setField(FIX:密码(&#34; MY_PASSWORD&#34)); 强>