Форум программистов, компьютерный форум CyberForum.ru

Сервер занят (word) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Объектно-ориентированное программирование http://www.cyberforum.ru/cpp-beginners/thread298442.html
Составить описание класса одномерных массивов строк, каждая строка которых задается длиной и указателем на выделенную для нее память. Предусмотреть возможность обращения к отдельным строкам массива по индексам, контроль выхода за пределы индексов, выполнения операций поэлементного сцепления двух массивов с образованием нового массива, слияния двух массивов с исключением повторяющихся элементов,...
C++ Составить программу которая переворачивает список L, изменяет ссылки в этом списке так, чтобы его элементы оказались расположенными в обратном порядке Составить программу, которая переворачивает список L, т.е. изменяет ссылки в этом списке так, чтобы его элементы оказались расположенными в обратном порядке. http://www.cyberforum.ru/cpp-beginners/thread298440.html
C++ Произведение n первых нечетных чисел равно р. Сколько сомножителей взято?
Произведение n первых нечетных чисел равно р. Сколько сомножителей взято? Если введенное число n не является указанным произведением, сообщить об этом.
Создать файл wares, содержащий сведения об экспортируемых товарах (10 записей) C++
Создать файл wares, содержащий сведения об экспортируемых товарах (10 записей): указывается наименование товара, страна, импортирующая товар, и объём поставляемой партии в штуках. Найти страны, в которые экспортируется данный товар, и общий объём его экспорта.
C++ Найти сумму первых N членов арифметической (геометрической) прогрессии. http://www.cyberforum.ru/cpp-beginners/thread298435.html
Задачу нужно решить с помощью рекурсии.... Найти сумму первых N членов арифметической (геометрической) прогрессии.
C++ Структуры. Описать переменную служащий Описать переменную служащий, состоящую из имени, фамилии, отчества служащего, даты рождения, образования, домашнего адреса, профессии. Определить имена людей с высшим образованием. Выдать данные о служащем, который имеет ту или иную профессию. подробнее

Показать сообщение отдельно
Xtir
11 / 11 / 0
Регистрация: 10.07.2010
Сообщений: 130
18.05.2011, 10:28     Сервер занят (word)
кто может объяснить объяснить по какой причине вылетает такая ошибка?
делаю так, создаю глобальные переменные:
C++
1
2
3
4
_Application app;
Documents oDocs;
_Document oDoc;
COleVariant vOpt(DISP_E_PARAMNOTFOUND, VT_ERROR);
потом сам код, который сохраняет один файл в другой с заменой слов:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
    if(app == NULL)
    {
        if(!app.CreateDispatch("Word.Application"))
        {
            AfxMessageBox("ГЋГёГЁГЎГЄГ* ïðè Г±ГІГ*ðòå Word'Г*");
            return;
        }
    }
 
    app.SetVisible(false);
    oDocs = app.GetDocuments();
 
    oDoc = oDocs.Open(COleVariant("filefrom.doc"),
        vOpt, vOpt, vOpt, vOpt, vOpt, vOpt, vOpt,
        vOpt, vOpt, vOpt, vOpt,
        vOpt, vOpt, vOpt, vOpt);
    
    ReplaceWord("wordfrom", "wordto");
 
    COleVariant covTrue((short)TRUE), covFalse((short)FALSE);
 
    oDoc = app.GetActiveDocument();
 
    oDoc.SaveAs(COleVariant("fileto.doc"),
        COleVariant((short)0),
        covFalse, COleVariant(""), covTrue, COleVariant(""),
        covFalse, covFalse, covFalse, covFalse, covFalse, covFalse, covFalse, covFalse,
        covFalse, covFalse);
 
    oDoc.Close(covFalse, covFalse, covFalse);
    app.Quit(covFalse, covFalse, covFalse);
    app = NULL;
функция ReplaceWord:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
void ReplaceWord(CString find, CString replace)
{
    COleVariant covTrue((short)TRUE), covFalse((short)FALSE);
    Selection oSel;
    oSel = app.GetSelection();
    Find oFind = oSel.GetFind();
    oFind.ClearFormatting();
    oFind.ClearAllFuzzyOptions();
        oFind.Execute(COleVariant(find),    
        covFalse,                               
        covTrue,                                
        covFalse,                               
        covFalse,                               
        covFalse,                               
        covTrue,                                
        COleVariant(short(wdFindContinue)),     
        covFalse,                               
        COleVariant(replace),                   
        covTrue,                                
        covFalse,                               
        covFalse,                           
        covFalse,                           
        covFalse                            
        );
}
как-то непонятно, иногда рабоатет просто идеально, а иногда может вылезти такая ошибка(см. рисунок), от который можно избавить кликнув 1 раз "переключиться", а можно хоть 100 раз кликнув не изюавиться от неё. Может кто сталкивался с этим и знает в чём проблема? очень надеюсь на ваше помощь
Миниатюры
Сервер занят (word)  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 13:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru