Получение исключения "System.AccessViolationException" в C# с использованием RightFax

Я пытаюсь отправить факсы через библиотеку API RightFax COM:

  RFCOMAPILib.FaxServer server = new RFCOMAPILib.FaxServer();
  server.ServerName = "xxx";
  server.Protocol = CommunicationProtocolType.cpTCPIP;
  server.UseNTAuthentication = BoolType.True;

  // Error happens here
  server.OpenServer(); 

  RFCOMAPILib.Fax fax = (RFCOMAPILib.Fax)server.get_CreateObject(RFCOMAPILib.CreateObjectType.coFax);

  fax.ToName = "Batman";
  fax.ToFaxNumber = "23434484";
  fax.FromFaxNumber = "78678676";
  fax.FromName = "Robin";
  fax.Send();

Я зарегистрировал файл DLL rfcomapi.dll:

C:\Program Files\RightFAX> RegSvr32 rfcomapi.dll     

К сожалению, при запуске этого кода я получаю следующую ошибку;

Необработанное исключение: system.AccessViolationException: попытка чтения или записи в защищенную память. Это часто указывает на то, что другая память повреждена.

Я использую версию 9.4.0.0 RightFax.

Как мне исправить эту проблему?

2 ответа

Решение

Проблема заключалась в том, что имя сервера было неверным, так как мы не могли разрешить это имя в нашей сети. Я пинговал сервер и ничего не получил, однако получил IP-адрес, и он работал нормально!

Всегда пингуйте сервер с RightFax! Сообщения об ошибках, которые вы собираетесь получить, не очень наглядны!

Ваш код сам по себе идеален. Я могу запустить его с моим 9.4 RightFax без каких-либо проблем. Вы можете проверить с вашей авторизацией, чтобы убедиться, что ваша учетная запись полностью авторизована на сервере.

Другие вопросы по тегам