COM API RightFax 0x80072710 Недопустимый идентификатор владельца

Добрый день! Пытаемся заставить COM API RightFax работать на нас. В obj_Fax.Send(); я получаю сообщение об ошибке 0x80042710, и я понятия не имею, почему. Я не могу найти никаких подробностей в Интернете об этом, надеюсь на некоторые предложения.

Сообщение об ошибке:

System.Runtime.InteropServices.COMException (0x80042710): Invalid owner ID.

Метод отправки факса:

    public DataPackage<FaxInfoResponse> SendFax(string faxNumber, string recipientName, byte[] data)
    {
        try
        {
            DataPackage<FaxInfoResponse> dp = new DataPackage<FaxInfoResponse>();
            if ((faxNumber.Length != 10) || (!faxNumber.All(Char.IsDigit)))
            {
                dp.ErrorId = Guid.NewGuid().ToString();
                dp.ErrorMessage = "Fax Number must consist of 10 numbers";
                dp.Data = new FaxInfoResponse();
                return dp;
            }
            RFCOMAPILib.Fax obj_Fax = (RFCOMAPILib.Fax)_server.get_CreateObject(RFCOMAPILib.CreateObjectType.coFax);
            obj_Fax.ToFaxNumber = faxNumber;
            obj_Fax.ToName = recipientName;
            var filePath = String.Format("{0}{1}.pdf", ConfigurationManager.AppSettings["TempWriteDirectory"], faxNumber);

            using (var fStream = new FileStream(filePath, FileMode.Create))
            {
                fStream.Write(data, 0, data.Length);
            }

            obj_Fax.Attachments.Add(filePath, RFCOMAPILib.BoolType.True);
            /*********** ERROR OCCURS HERE ***********/
            obj_Fax.Send();
            /*****************************************/
            int faxHandle = obj_Fax.Handle;
            obj_Fax = _server.get_Fax(faxHandle);
            dp.ErrorMessage = "";
            dp.ErrorId = "";
            FaxInfoResponse resp = new FaxInfoResponse { FaxHandle = faxHandle, FaxStatus = obj_Fax.FaxStatus.ToString(), FaxUniqueId = obj_Fax.UniqueID.ToString() };
            dp.Data = resp;
            Log.Info("Fax successfully sent for fax: Fax Number = " + faxNumber + " Recipient Name = " + recipientName);
            return dp;
        }
        catch (Exception ex)
        {
            // Blah blah error handling
        }
    }

person Thomas    schedule 17.10.2016    source источник


Ответы (1)


Справедливости ради, мы на самом деле не «решили» это, а нашли обходной путь. Мы развернули на сервер, в котором была наша установка RightFax. По какой-то причине это было проблемой. Все, что требовалось, — это развертывание локально или на любом другом сервере и установка RF-клиента. Проблема решена.

person Thomas    schedule 31.10.2016