Форум: "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.037 c