Loading ACIS file in solidworks with c# API

60 Views Asked by At

J'essaie d'automatiser le chargement de fichier SAT dans SolidWorks en faisant un Add-in.

pour cela j'utilise LoadFile4

swPart = (PartDoc)mSldWorksApplication.LoadFile4(fileNameToWorkOn,"r", ImportData, ref m_LongStatus);

Je n'arrive pas à lire le fichier (m_LongStatus=1)

voici une partie de mon code

  foreach (var file in ListOfFiles)
  {
     if (file.EntityName.ToUpper().Contains(".SAT"))
     {
         using (Stream rStream = zipFileSystem.OpenFile(file, FileAccess.Read))
         {
             string fileNameToWorkOn = "d:\\temp\\" + file.EntityName;
             var wfileStream = File.Create(fileNameToWorkOn);
             rStream.CopyTo(wfileStream);
             // work with the physical tempory files to  import it in SolidWorks
             //Import SAT file
             ImportData = (Import3DInterconnectData)mSldWorksApplication.GetImportFileData(fileNameToWorkOn);
             string fileNameToCreate = fileNameToWorkOn.ToUpper().Replace(".SAT", ".SLDPRT");
             ModelDoc2 swModel = mSldWorksApplication.OpenDoc6(fileNameToCreate, (int)swDocumentTypes_e.swDocPART, (int)swOpenDocOptions_e.swOpenDocOptions_Silent, "", 0, 0);
             swPart = (PartDoc)mSldWorksApplication.LoadFile4(fileNameToWorkOn,"r", ImportData, ref m_LongStatus);
             swModel = (ModelDoc2)swPart;
             //Close the model
             mSldWorksApplication.CloseDoc(fileNameToCreate);
             wfileStream.Close();
             // delete now the physical tempory files
             File.Delete(fileNameToWorkOn);
        }
    }
 }

quelqu'un a t-il déjà eu ce problème ?

0

There are 0 best solutions below