Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.07;
Скачать: CL | DM;

Вниз

Проблема с OLE   Найти похожие ветки 

 
Alexey   (2003-06-24 12:41) [0]

Проблема следующая: Создаю OLE-объект, как Word-документ. Загоняю макрос, который работает со Word"овским слиянием, после чего получаю нормальный результат - отчет в Word. При попытке второй раз получить тоже самое, программа сваливается на создании документа :
doc:=wrd.documents.open("имя файла")
с ошибкой "RPC server is not avialable". Приходится перезагружать основную программу, чтобы еще раз просмотреть отчет. Кто поможет тому буду очень благодарен

var
wrd,doc,vbm:ToleVariant

if VarIsEmpty(wrd) then
wrd:=CreateOleObject("Word.Application");
doc := wrd.Documents.open(wmpath+"\reg.doc");//Место ругани
wrd.Visible := True;
VBM := doc.VBProject.VBComponents.Add(1);
VBM.Name := "Mac1"; // ....
CMod := VBM.CodeModule; //
try
CMod.AddFromString(Текст макроса);
wrd.run("Имя");
wrd.Quit;
except
MessageBox("");
end;


 
Smashich ©   (2003-06-24 13:03) [1]

как насчет закрытия документа? и дисконнекта от сервера? и почему не использовать вкладку servers?


 
Smashich ©   (2003-06-24 13:04) [2]

пардон про servers. D3 не разглядел.


 
Набережных С. ©   (2003-06-24 18:07) [3]

if VarIsEmpty(wrd) then
wrd:=CreateOleObject("Word.Application");

Видимо, wrd - глобальная переменная.
В wrd осталась ссылка от предыдущего вызова и VarIsEmpty(wrd) = false. В то же время ты вызывал Quit и сервер был выгружен, а сылка в wrd оказалась недействительной. После wrd.Quit добавь wrd:=unassigned



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

Текущий архив: 2003.07.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
1-20150
DevMaster
2003-06-24 14:57
2003.07.07
TTreeView


14-20255
wild_arg
2003-06-19 19:39
2003.07.07
Kylix & Linux


4-20347
FallenGod
2003-05-05 18:41
2003.07.07
ф-ция setwindowhookex или о вторжении в чужу область памяти


14-20313
Вутшы
2003-06-21 11:16
2003.07.07
Как бы мне структуру связей посмотреть?


14-20205
Barlok
2003-06-21 11:03
2003.07.07
Перевод в градусы синуса?