Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Corba";
Текущий архив: 2006.10.15;
Скачать: [xml.tar.bz2];

Вниз

The server threw an exception   Найти похожие ветки 

 
Lotus   (2005-08-15 01:25) [0]

Использую в своей программе OLE-автоматизацию Ворда. Когда программно открываю doc-файл, то все путем. Когда этим же кодом пытаюсь открыть dot, то возникает сабжевая ошибка.
Как лечить?


 
kblc ©   (2005-08-15 06:51) [1]

Кофем и пивом ;)
 .dot как я понимаю шаблон... так? ... у меня всё нищтяк открываеться и никаких ошибок. Поподробнее опиши проблему, приведи свой код.


 
Lotus   (2005-08-15 11:06) [2]

да, .dot - шаблон

Попробуйте у себя этот код, плиз:

     try
       WD := GetActiveOleObject("Word.Application");
     except
       WD := CreateOleObject("Word.Application");
     end;
     try
       WD.Visible := False;
       WD.Documents.Open(LoadFName);
       WD.ActiveDocument.SaveAs(RTF_FName, $00000006);
       WD.ActiveDocument.Close;
       WD.Quit;
       WD := Null;
     except
       WD.Quit;
       WD := Null;
     end;


 
kblc ©   (2005-08-15 11:14) [3]

try
 WD := GetActiveOleObject("Word.Application");
except
 WD := CreateOleObject("Word.Application");
end;

try
 WD.Visible := False;
 WD.Documents.Open(LoadFName);
 WD.ActiveDocument.SaveAs(RTF_FName, $00000006);
 Sleep(3000);
 WD.ActiveDocument.Close;
 WD.Quit;
 WD := Null;
except
 WD.Quit;
 WD := Null;
end;


 
Lotus   (2005-08-15 16:13) [4]

А зачем Sleep?


 
kblc ©   (2005-08-15 16:50) [5]

А затем что один поток ворда пытаеться сохранить документ, и ты, не дождавшись конца сохранения пытаешься его закрыть!


 
Lotus   (2005-08-15 18:55) [6]

а почему именно 3 сек?
почему не 5 или 10?
зависит ли это от процессора?


 
kblc ©   (2005-08-16 07:44) [7]

я примерно написал что 3. По идее в ворде есть ф-ия которая должна возврщать занятость ворда, ели ты узнаешь как она называеться - сообщи и мне. А пока пользуйся именно так. Если файл небольшой то и секунды хватит


 
Lotus   (2005-08-16 09:17) [8]

Интересует, почему нужно это делать с dot-ом. С doc же все путем, без всяких слипов.


 
kblc ©   (2005-08-18 07:10) [9]

Потомучто .. размер .dot всегда больше .doc. Фиг знает что туда нафигачивают, но это всегда занимает бльшое время. вот.


 
Lotus   (2005-08-18 08:30) [10]

а как оно на самом деле - наверное, знают только в мелкософте, да?


 
kblc ©   (2005-08-18 09:17) [11]

Тебе нужно где-то найти описание интерфейса с именем Word.Application. Тогда сразу всё поймёшь ;)


 
Lotus   (2005-08-18 17:16) [12]

thanks!


 
Джо ©   (2005-08-21 22:28) [13]


>      try
>        WD := GetActiveOleObject("Word.Application");
>      except
>        WD := CreateOleObject("Word.Application");
>      end;

Это что за ужас?


 
Lotus   (2005-08-22 07:11) [14]

не понимаешь - не ужасайся



Страницы: 1 вся ветка

Форум: "Corba";
Текущий архив: 2006.10.15;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.045 c
2-1159175122
Серый
2006-09-25 13:05
2006.10.15
Сообщение об ошибке


1-1157533336
apl
2006-09-06 13:02
2006.10.15
Как сохранить Items в TreeView


15-1159278063
PHPDeveloper
2006-09-26 17:41
2006.10.15
Вопрос по HTML


2-1159269540
iamdanil
2006-09-26 15:19
2006.10.15
Ещё два вопроса по мыши


2-1159348886
webpauk
2006-09-27 13:21
2006.10.15
Что использовать?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский