Главная страница
    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.47 MB
Время: 0.047 c
15-1159108905
Проггер из библиотеки
2006-09-24 18:41
2006.10.15
Информация о мониторе Samtron 76 BDF


15-1158845961
oldman
2006-09-21 17:39
2006.10.15
А вот если Вы все такие умные, почему Вы строем не ходите?


9-1136804138
Tonich
2006-01-09 13:55
2006.10.15
Комета... )


1-1156439374
Serega41
2006-08-24 21:09
2006.10.15
Утечки памяти в TShellComboBox


2-1159181228
iamDANIL 2006
2006-09-25 14:47
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский