Ошибка в API?

Автор Ugin, 16.11.07, 13:42:08

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Ugin

Есть код:
var
  d1,d2,d3: IKompasDocument;
begin
  DeleteFile('c:\temp\d1.m3d');
  DeleteFile('c:\temp\d1.cdw');

  d1 := KompasApp.Documents.Add(ksDocumentPart, true);
  d1.SaveAs('c:\temp\d1.m3d');

  d3 := KompasApp.Documents.Open('c:\temp\d1.m3d',true,false);
  if d3.PathName <> d1.PathName then
    log('error1 '+d3.PathName);

  d3 := nil;
  d2 := KompasApp.Documents.Add(ksDocumentDrawing, true);
  d2.SaveAs('c:\temp\d1.cdw');

  d3 := KompasApp.Documents.Open('c:\temp\d1.m3d',true,false);
  if d3.PathName <> d1.PathName then
    log('error2 '+d3.PathName);
  d3 := nil;

  d1.Close(kdDoNotSaveChanges);
  d2.Close(kdDoNotSaveChanges);
end;

который по идее не должен сообщать об ошибке
а он в лог выдает:
error2 c:\temp\d1.cdw
т.е. при открытом чертеже вместо нужной мне детали компас возвращает ссылку на чертеж