我编写了从 NX 文件导出 PDF 文件的代码。当我为单个文件运行它时,一切正常。
然后我尝试通过一堆文件(通过 for 循环)使用此代码,一切都很好。但有时当我尝试更改目标文件时,它会在 BasePart 上引发异常:
basePart1 = theSession.Parts.OpenActiveDisplay(SourceFilePath, DisplayPartOption.AllowAditional, out _);
发生该错误后,我必须重新打开项目并从头开始运行它,问题总是不会再次出现。 但是当我尝试打开另一堆文件时,通常问题会再次出现。我该如何处理?
最佳答案
看来您正在执行多线程处理是问题所在,因为从 NX 来看,错误代码 3795014 是函数只能从主线程调用
。
参见the Siemens docs使用 NX Open 进行多线程处理。
在大多数情况下,无论使用何种语言,您都无法在 NX Open API 调用中使用多线程。即使语言允许,例如 Java,NX 在内部也会锁定每个调用,以便实际上不会并行执行 NX Open 函数调用。
关于c# - 如何处理 NX Open 中的打开文件错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69513273/