Форум: "Начинающим";
Текущий архив: 2010.04.04;
Скачать: [xml.tar.bz2];
ВнизTry ... Except не перехватывает ошибку Найти похожие ветки
← →
VirusO4eK © (2010-02-04 21:17) [0]Try
// пытаемся присоединиться к уже запущенной копии AutoCad
v := GetActiveOleObject("AutoCAD.Application");
Except
// если не получилось присоединиться, то запускаем новую копию AutoCad
v:= CreateOleObject("AutoCAD.Application");
end;
Почему ошибка не перехватывается?
[img]http://img189.imageshack.us/img189/6193/123vhv.jpg[/img]
← →
Anatoly Podgoretsky © (2010-02-04 21:42) [1]> VirusO4eK (04.02.2010 21:17:00) [0]
Перехватываются только исключения.
← →
VirusO4eK © (2010-02-04 21:51) [2]
> Anatoly Podgoretsky
Если окно Автокада не запущено, то программа должна запустить его.
А ошибку выдает на "v := GetActiveOleObject("AutoCAD.Application");"
Инфа отсюда: http://www.delphimaster.ru/articles/autocad/index.html
Во скрин:
<img>http://img189.imageshack.us/img189/6193/123vhv.jpg</img>
← →
Медвежонок Пятачок © (2010-02-04 22:09) [3]эту пестню не задушишь не убъешь
напевает молодешшь, молодешшь
← →
Медвежонок Пятачок © (2010-02-04 22:10) [4]запуск из под иде.
потому что.
← →
Anatoly Podgoretsky © (2010-02-04 22:16) [5]> VirusO4eK (04.02.2010 21:17:00) [0]
А пробовал нажать ОК и затем F9 или запустить не из Дельфи
← →
VirusO4eK © (2010-02-04 22:25) [6]
> Anatoly Podgoretsk
Конечно, Автокад отдельно нормально запускается.
Также, если запустить автокад, а потом программу то все нормально работает.
А мне надо чтоб проверяло, если Автокад не запущен то, чтоб запускало.
А если запущен, то чтоб использовало его, а не создавало новую копию.
← →
Anatoly Podgoretsky © (2010-02-04 22:29) [7]> VirusO4eK (04.02.2010 22:25:06) [6]
А у тебя как?
← →
Медвежонок Пятачок © (2010-02-04 22:30) [8]Конечно, Автокад отдельно нормально запускается.
Отдельно должен запускться проект а не автокад
← →
VirusO4eK © (2010-02-04 22:49) [9]Запускаю программу.
Жму кнопку.
Вот код:function GetAcadApplication(Visible: Boolean): IAcadApplication;
var
v : OleVariant;
begin
Try
// пытаемся присоединиться к уже запущенной копии AutoCad
v := GetActiveOleObject("AutoCAD.Application");
Except
// если не получилось присоединиться, то запускаем новую копию AutoCad
v:= CreateOleObject("AutoCAD.Application");
end;
// приводим переменную типа OleVariant к типу IAcadApplication
Result := IDispatch(v) as IAcadApplication;
// далее проверяем, надо ли делать приложение AutoCad видимым
if Visible then Result.Visible := True;
v.ActiveDocument.SendCommand("(load "d:\\Work\\Диплом\\Прога\\cherv1.lsp")" + #13);
v.ActiveDocument.SendCommand("(detal)" + #13);
end;
procedure TForm1.N6Click(Sender: TObject);
var
f: TStrings;
begin
f:=TStringList.Create();
f.LoadFromFile("d:\Work\Диплом\Прога\cherv.lsp");
f.Add(" (defun InitSize()");
f.Add(" (setq a1 "+floattostr(round(strtofloat(form13.Edit3.Text)))+")");
f.Add(" (setq a2 "+floattostr(round(strtofloat(form13.Edit2.Text)))+")");
f.Add(" (setvar "cmdecho" 0) (setvar "osmode" 0) (command "_erase" "_all" "") (command "_view" "_front" ))");
f.SaveToFile("d:\Work\Диплом\Прога\cherv1.lsp");
f.Free;
// присоеденимся к приложению AutoCad
AcadApp:= GetAcadApplication(true);
end;
Если Автокад запуще то все работает норм.
Если нет, то ошибку пишет.
<img>http://img189.imageshack.us/img189/6193/123vhv.jpg
← →
Anatoly Podgoretsky © (2010-02-04 23:00) [10]> VirusO4eK (04.02.2010 22:49:09) [9]
Ты понимаешь, что тебе пишут, или чукча не читатель.
← →
VirusO4eK © (2010-02-04 23:04) [11]
> Anatoly Podgoretsky
Блин. Ты спросил: как у меня?. Я тебе написал.
> Медвежонок Пятачок
Какой проект? Проект чего?
← →
VirusO4eK © (2010-02-04 23:10) [12]Все понял.
Это отладчик ерунду порет!
Всем спасибо.
← →
Плохиш © (2010-02-05 00:14) [13]
> Это отладчик ерунду порет!
Плохому танцору известно, что мешает...
← →
Германн © (2010-02-05 01:33) [14]
> Плохиш © (05.02.10 00:14) [13]
>
>
> > Это отладчик ерунду порет!
>
>
Имхо "ерунду порет" не отладчик, а кто-то другой! Отладчик честно отрабатывает вложенные в него деньги.
← →
brother © (2010-02-05 04:56) [15]> v.ActiveDocument.SendCommand("(load "d:\\Work\\Диплом\\Прога\\cherv1.lsp
> ")" + #13);
Уж не чертеж "червяка" там? Что за институт? Не тяжелого машиностроения? ;)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2010.04.04;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.028 c