Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.08.2011, 20:32   #1
tumanovalex
Пользователь
 
Регистрация: 07.03.2011
Сообщений: 83
Вопрос Проверка правописания в C#

Нашел с Интернете пример проверки правописания в C# с помощью Word, в котором в функции правописания
Код:
public void fSpellCheck(TextBox tBox, Label lLbl)
{
  int iErrorCount = 0;
  Word._Application app = new Word.Application();
  if (textBox1.Text.Length > 0)
  {
    app.Visible = false; // ошибка
    object template = Missing.Value;
    object newTemplate = Missing.Value;
    object documentType = Missing.Value;
    object visible = true;
    object optional = Missing.Value;
    Word._Document doc = app.Documents.Add(ref template, ref newTemplate, ref documentType, ref visible); // ошибка
    doc.Words.First.InsertBefore(tBox.Text);
    Word.ProofreadingErrors we = doc.SpellingErrors;
    iErrorCount = we.Count;
    doc.CheckSpelling(ref optional, ref optional, ref optional, ref optional,
      ref optional, ref optional, ref optional,
      ref optional, ref optional, ref optional, ref optional, ref optional);
    if (iErrorCount == 0)
      lLbl.Text = "Spelling OK. No errors corrected ";
    else if (iErrorCount == 1)
      lLbl.Text = "Spelling OK. 1 error corrected ";
    else
      lLbl.Text = "Spelling OK. " + iErrorCount + " errors corrected ";
    object first = 0;
    object last = doc.Characters.Count - 1;
 
    tBox.Text = doc.Range(ref first, ref last).Text;
  }
  else
    lLbl.Text = "Textbox is empty";
  object saveChanges = false;
  object originalFormat = Missing.Value;
  object routeDocument = Missing.Value;
  //app.Quit(ref saveChanges, ref originalFormat, ref routeDocument); 
}
на строках, в комментариях которых указана ошибка, программа дает исключение:
"Невозможно привести COM-объект типа "Microsoft.Office.Interop.Word.Appl icationClass" к интерфейсному типу "Microsoft.Office.Interop.Word._App lication". Операция завершилась со сбоем, поскольку вызов QueryInterface COM-компонента для интерфейса с IID "{00020970-0000-0000-C000-000000000046}" возвратил следующую ошибку: Интерфейс не поддерживается (Исключение из HRESULT: 0x80004002 (E_NOINTERFACE)).". Подскажите, пожалуйста, как исправить. Прикрепляю проект.
Вложения
Тип файла: zip MySpellCheck.zip (11.0 Кб, 20 просмотров)
tumanovalex вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Функции VBA для проверки правописания tumanovalex Microsoft Office Word 8 28.04.2011 18:59
excel.Проверка VBA и проверка функции Будда Помощь студентам 0 14.04.2011 21:10
Как программно отключить подчёркивание правописания Il'Yak Microsoft Office Word 2 18.12.2010 17:59
Пропала проверка правописания dima9 Microsoft Office Word 13 11.10.2010 01:08
Проверка правописания в TRichEdit TIgor4 Общие вопросы Delphi 1 03.07.2008 17:17