Прошу прощения за свою тупость. В функции
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.ApplicationClass" к интерфейсному типу "Microsoft.Office.Interop.Word._Application".
Операция завершилась со сбоем, поскольку вызов QueryInterface COM-компонента для интерфейса с IID "{00020970-0000-0000-C000-000000000046}"
возвратил следующую ошибку: Интерфейс не поддерживается (Исключение из HRESULT: 0x80004002 (E_NOINTERFACE)).