Solidworks PDM二次开发---文件相关操作

news2025/1/6 20:39:07

本文介绍如何把文件增加到库,并检入。

上一篇文章简单的讲解了文件夹的创建等操作,这一次来讲文件相关操作,相对来说比较重要。

界面

漂亮的界面,不接受反驳!
在这里插入图片描述

代码

 private void btnFile_Click(object sender, EventArgs e)
        {
            try
            {
                //new 一个库对象
                var vault = new EdmVault5();

                //登陆到库中
                vault.LoginAuto("PDM2020Default", this.Handle.ToInt32());

                var vault2 = (IEdmVault7)vault;

                //本地根目录
                var rootPath = vault2.RootFolderPath;


                var rootFolder = vault2.RootFolder;


                //把文件加入库,返回值 可以反应异常情况
               var addRes= rootFolder.AddFile(0, @"C:\Users\HP\Desktop\PDM文件测试\零件1001.SLDPRT", "", 0);

             

                //获取 新文件
                var newFile = vault2.GetFileFromPath(rootPath + @"\零件1001.SLDPRT",out _);

                //修改文件属性
                IEdmEnumeratorVariable8 EnumVarFile = (IEdmEnumeratorVariable8)newFile.GetEnumeratorVariable("");
                

                EnumVarFile.SetVar("图样代号", "@", "DH00001", false);

                EnumVarFile.CloseFile(true);


                //检入文件
                newFile.UnlockFile(0,"检入备注",0,null);

            
            
                //删除文件

                rootFolder.DeleteFile(this.Handle.ToInt32(), newFile.ID, true);


                //刷新本地文件夹

                rootFolder.Refresh();



            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
                throw;
            }



        }

过程

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

结束了

本文相对简单,但其实还有很多批量的操作,我们后面找机会再讲。
代码已经上传
**https://gitee.com/painezeng/solidworks-pdmprofessional-apistudy**

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/972365.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MASM32编程状态栏显示字符动画,按钮跑马灯

一、需求分析 由于sysInfo扫描的内容比较多,打算为它增加一点动画效果,提醒用户程序正在运行,耐心等待。 二、构建测试窗口 测试窗口上放置有一个按钮,按钮上的初始文字是“开始扫描”;并使用状态栏,状态…

喜报 | 再度中标南网项目!AR 开启电力远程运维新智慧

近日,中国南方电网官网发布《2023年南方电网数字平台科技 (广东)有限公司物资品控远程协助软件采购项目中标公告》,ALVA Systems 凭借 ALVA Rainbow 创新应用竞得此标。 随着相关技术的逐步成熟,基础问题远程化解决已经在工业领域广泛应用。 …

Python中的装饰器

迷途小书童的 Note 读完需要 5分钟 速读仅需 2 分钟 装饰器是一个非常有用而又常被误解的功能,可以让我们在不修改函数或类的源代码情况下给它们提供扩展功能。本文将通过具体示例带你深入理解 Python 装饰器的用法。 1 装饰器基础 装饰器本质上是一个函数&#xff…

SpringMVC的简介及工作流程

一.简介 Spring MVC是一个基于Java的开发框架,用于构建灵活且功能强大的Web应用程序。它是Spring Framework的一部分,提供了一种模型-视图-控制器(Model-View-Controller,MVC)的设计模式,用于组织和管理Web…

职责链设计模式

职责链模式又叫命令链、CoR、Chain of Command、Chain of Responsibility。 该模式允许你将请求沿着处理者链进行发送,使多个对象都可以处理请求,每个对象有权决定处理或传递给下个节点。 客户端:用来定义职责链条。 处理者:声明…

基于Vgg-Unet模型自动驾驶场景检测

1.VGG VGG全称是Visual Geometry Group属于牛津大学科学工程系,其发布了一些列以VGG开头的卷积网络模型,可以应用在人脸识别、图像分类等方面,VGG的输入被设置为大小为224x244的RGB图像。为训练集图像上的所有图像计算平均RGB值,然后将该图像…

vscode上搭建go开发环境

前言 Go语言介绍: Go语言适合用于开发各种类型的应用程序,包括网络应用、分布式系统、云计算、大数据处理等。由于Go语言具有高效的并发处理能力和内置的网络库,它特别适合构建高并发、高性能的服务器端应用。以下是一些常见的Go语言应用开发…

静态路由配置出错记录

根据实验手册,配置静态路由,但是怎么也排除不了错误。 最后发现,是自己的默认网关配置错误了。但是使用模拟器抓包看到的,也没有提示网关信息啊。

docker desktop如何一键进入容器内部

对着对应的容器 点击 view files

电压互感器倍频感应耐压试验注意事项

注意事项 被试 PT 在三倍频耐压时呈容性, 对于 110kV、 220kV 互感器进行感应耐压试验时,应在开口 a D x D 端子间励磁, 可在 PT 二次绕组 ax 上接补偿电感, 对于 35kV 电压互感器励磁电压一般加至二次 a—x 间;三倍频…

测开之 Python 自动化全栈工程师 + 性能专项

功能测试基础 接口测试基础 接口的通信原理与本质 cookie、session、token 详解 接口测试的意义与测试方法 接口测试用例的设计 app 测试 app 流程测试 app 兼容性测试 app 稳定性测试 app 性能专项测试 app 抓包 UI 功能测试基础 常见功能测试方法:等价类&…

JVM | 垃圾回收器(GC)- Java内存管理的守护者

引言 在编程世界中,有效的内存管理是至关重要的。这不仅确保了应用程序的稳定运行,还可以大大提高性能和响应速度。作为世界上最受欢迎的编程语言之一,通过Java虚拟机内部的垃圾回收器组件来自动管理内存,是成为之一的其中一项必…

极米RS Pro 3投影参数是多少?极米投影仪RS Pro 3好用吗?

近年来,随着投影技术的快速发展,越来越多的用户开始选择投影产品来打造家庭影院,为生活带来新的观影体验。但要想打造一个家庭影院,选到一台合适的投影仪却并不是一件容易的事,因为家庭影院对画面的亮度、色彩和观影舒…

(18)线程的实例认识:线程的控制,暂停,继续,停止,线程相互控制,协作

一、老方式 1、这是一个老的实现方式,基本不推荐,背后控制的原理需要了解。 界面:三个button一个textbox 代码: private volatile bool isPause false;//fprivate void BtnStart_Click(object…

力扣|两数相加

先放题目: 给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外&#xff0c…

敏捷开发方法:快速响应需求变化的开发流程

在快速变化的技术和市场环境下,传统的软件开发方法可能显得笨重和不灵活。敏捷开发方法应运而生,以其快速响应需求变化、持续交付和团队协作的特点,成为现代软件开发的重要方法之一。本文将深入探讨敏捷开发方法的概念、原则、流程以及在实际…

《王道24数据结构》课后应用题——第三章 栈和队列

第三章 【3.1】 03、 假设以I和O分别表示入栈和出操作。栈的初态和终态均为空,入栈和出栈的操作序列可表示为仅由I和O组成的序列,可以操作的序列称为合法序列,否则称为非法序列。 如IOIIOIOO 和IIIOOIOO是合法的,而IOOIOIIO和II…

maven基础学习

什么是maven 构建 依赖 maven核心概念坐标 在黑窗口使用maven命令生成maven工程 pom.xml 想导入哪个jar包把它的坐标放到dependency里就可以 maven核心概念POM maven核心概念约定的目录结构 执行maven的构建命令 清理操作,clean 编译操作 compile 测试操作 test 打包…

ElasticSearch进阶

一、 search检索文档 ES支持两种基本方式检索; 通过REST request uri 发送搜索参数 (uri 检索参数);通过REST request body 来发送它们(uri请求体); 1、信息检索 API: https://w…

Mybatis的关联关系配置一对一,一对多,多对多的映射关系

目录 关联关系映射 一对一关联: 一对多关联: 多对多关联: 导入数据库表 一对多 一对一 多对多 关联关系映射 关联关系映射在Mybatis中主要通过三种方式实现:一对一关联和一对多关联及多对多关联。 一对一关联:…