Я разрабатывал платформу, используя ZMQ (2.2) в качестве основного уровня связи. Ранее на этой неделе я решил воспользоваться советом на веб-сайте zeromq и обновиться до последней стабильной сборки 3.2.2.
Однако после мучительного обновления до нового API я был серьезно разочарован, обнаружив, что существует проблема с привязкой clrzmq, заключающаяся в том, что она не может загрузить библиотеку libzmq на машинах с Windows XP (SP3). Я продолжаю получать исключение SEHException?!
Мне просто интересно, была ли у кого-нибудь такая же проблема, и есть ли обходной путь (или, что еще лучше, исправление) для нее?
Ваше здоровье :)
EDIT Просто чтобы уточнить, библиотека загружается нормально, я знаю это, потому что контекст создается без каких-либо проблем. Проблема возникает, когда метод CreateSocket вызывается в контексте... см. фрагмент кода ниже
ZmqContext context = ZmqContext.Create();
ZmqSocket socket = context.CreateSocket(SocketType.REQ);
После добавления трассировки, предложенной Джейкобом, я получаю следующий вывод
Assertion failed: Connection refused (..\..\..\src\signaler.cpp:310)
Есть идеи, что это значит?
РЕДАКТИРОВАНИЕ Я также должен упомянуть, что эта проблема не возникает на всех компьютерах с XP, только на некоторых из них. Я пытался выяснить, в чем разница между работающими машинами и теми, которые не работают. Не зная этого, было бы слишком рискованно обновлять и выпускать в производственную среду.