Convertendo do formato rich text para problemas de texto simples

Atualmente, temos um aplicativo (serviço do Windows) que se conecta a outro dos nossos aplicativos e captura faturas. Nas faturas, há um campo RTF para os campos de rodapé / cabeçalho. Quando pegamos os dados, o RTF é convertido em texto simples com o seguinte código:

<code>public static string ConvertFromRTFToPlainText(string rtfString)
{
    if (rtfString == null)
        return null; 

    System.Windows.Forms.RichTextBox rtBox = new System.Windows.Forms.RichTextBox();

    if (rtfString.StartsWith("{\\rtf1"))
        rtBox.Rtf = rtfString;
    else
        rtBox.Text = rtfString;

    return rtBox.Text;
}
</code>

Isso funcionou na maior parte, mas em alguns casos (um cliente específico obtém isso sempre) recebo essa exceção:

<code>Exception Message:Error creating window handle.
Stack trace:
at System.Windows.Forms.NativeWindow.CreateHandle(CreateParams cp)
at System.Windows.Forms.Control.CreateHandle()
at System.Windows.Forms.TextBoxBase.CreateHandle()
at System.Windows.Forms.RichTextBox.set_Rtf(String value)
at SmartTrade.Common.API.Tools.RTFHelperUtility.ConvertFromRTFToPlainText(String rtfString)
at SmartTrade.Desktop.Proxy.API.ObjectMapper.InvoiceObjectMapper.CovertToAPIInvoice(Invoice domainInvoice)
</code>

Qualquer ajuda sobre por que isso está acontecendo ou como podemos contorná-lo seria muito apreciado.

Editar: Obrigado a Jeremy pela explicação, estou atrás de sugestões para alternativas de conversão RTF.

questionAnswers(2)

yourAnswerToTheQuestion