博客
关于我
PML调用PDMS内核命令研究
阅读量:800 次
发布时间:2023-03-02

本文共 1197 字,大约阅读时间需要 3 分钟。

一、 概述

本文介绍了通过PMLNET包装PDMS的内核命令,实现PML调用常用的内置Command命令的方法。

二、 实现方法

为实现PML调用PDMS内核命令,我们编写了一个PMLNET的DLL,并开放了一个callback函数给PML。代码如下:
using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;  using System.Reflection;  using Aveva.ApplicationFramework;  using Aveva.ApplicationFramework.Presentation;  using Aveva.Pdms.Presentation;  using Aveva.PDMS.PMLNet;  [assembly: PMLNetCallable()]  namespace wttech  {      [PMLNetCallable()]      public class PmlCoreCall      {          [PMLNetCallable()]          public PmlCoreCall() { }          [PMLNetCallable()]          public void Assign(PmlCoreCall that) { }          [PMLNetCallable()]          public void callback(string commandKey)          {              CommandManager.Instance.Commands[commandKey].Execute();          }      }  }``

三、 PML调用实例

以下是一个PML调用内核命令的实例: ```csharp import 'PmlCoreCall'; handle any; endhandle; using namespace 'wttech'; !corecall = object PmlCoreCall(); !corecall.callback('AVEVA.View.WalkTo.DrawList');

PML通过callback函数将Command的key传递给PDMS的内核命令,实现了对WalkTo.DrawList命令的调用。

四、 总结

通过以上实现,可以看出PML通过PMLNET调用C#代码对PDMS进行了扩展,满足了对内核命令的调用需求。

转载自:https://www.cnblogs.com/jevon1982/p/9529116.html

你可能感兴趣的文章
poj 3422 Kaka's Matrix Travels (费用流 + 拆点)
查看>>
Qt笔记——官方文档全局定义(二)Functions函数
查看>>
POJ 3468 A Simple Problem with Integers
查看>>
poj 3468 A Simple Problem with Integers 降维线段树
查看>>
poj 3468 A Simple Problem with Integers(线段树 插线问线)
查看>>
poj 3485 区间选点
查看>>
poj 3518 Prime Gap
查看>>
poj 3539 Elevator——同余类bfs
查看>>
Qt笔记——官方文档全局定义(三)Macros宏
查看>>
poj 3628 Bookshelf 2
查看>>
Qt笔记——官方文档全局定义(一)Types数据类型
查看>>
POJ 3670 DP LIS?
查看>>
POJ 3683 Priest John's Busiest Day (算竞进阶习题)
查看>>
POJ 3988 Selecting courses
查看>>
POJ 4020 NEERC John's inversion 贪心+归并求逆序对
查看>>
poj 4044 Score Sequence(暴力)
查看>>
POJ 基础数据结构
查看>>
POJ 题目3020 Antenna Placement(二分图)
查看>>
Poj(1797) Dijkstra对松弛条件的变形
查看>>
POJ--2391--Ombrophobic Bovines【分割点+Floyd+Dinic优化+二分法答案】最大网络流量
查看>>