Получение исключения "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 без каких-либо проблем. Вы можете проверить с вашей авторизацией, чтобы убедиться, что ваша учетная запись полностью авторизована на сервере.