用C#写一段代码实现能够打包solidworks零件并并可以自定义打包后的文件名
时间: 2023-08-20 12:05:14 浏览: 93
好的,以下是一段用 C# 编写的代码,可以实现打包 SolidWorks 零件并自定义文件名:
```csharp
using System;
using System.IO;
using System.Reflection;
using SolidWorks.Interop.sldworks;
using SolidWorks.Interop.swconst;
namespace SolidWorksPacker
{
class Program
{
static void Main(string[] args)
{
// 初始化 SolidWorks 应用程序
SldWorks swApp = Activator.CreateInstance(Type.GetTypeFromProgID("SldWorks.Application")) as SldWorks;
swApp.Visible = true;
// 获取当前活动文档
ModelDoc2 swModel = swApp.ActiveDoc as ModelDoc2;
if (swModel == null || swModel.GetType() != (int)swDocumentTypes_e.swDocPART)
{
Console.WriteLine("请先打开一个 SolidWorks 零件文件!");
return;
}
// 获取文件名和路径
string filePath = swModel.GetPathName();
string fileName = Path.GetFileNameWithoutExtension(filePath);
string fileDir = Path.GetDirectoryName(filePath);
// 另存为打包文件
string packedFilePath = Path.Combine(fileDir, $"{fileName}_packed.zip");
swApp.ActiveDoc.SaveAs3(packedFilePath, (int)swSaveAsVersion_e.swSaveAsCurrentVersion, (int)swSaveAsOptions_e.swSaveAsOptions_Silent, null, null, null);
// 关闭当前文档
swApp.CloseDoc(swModel.GetTitle());
// 退出 SolidWorks 应用程序
swApp.ExitApp();
// 重命名打包文件
Console.WriteLine("请输入打包后的文件名:");
string newFileName = Console.ReadLine();
string newFilePath = Path.Combine(fileDir, $"{newFileName}.zip");
File.Move(packedFilePath, newFilePath);
Console.WriteLine($"打包成功!文件已保存到 {newFilePath}。");
}
}
}
```
运行此程序时,会提示用户输入打包后的文件名,并将打包后的文件重命名为用户输入的名称。
注意:此代码仅供参考,具体实现可能需要根据实际情况进行调整。
相关推荐
![swp](https://img-home.csdnimg.cn/images/20210720083646.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)