回复:应用探讨-WinCC脚本应用—发帖整理

  • 帖子

    3917
  • 精华

    20
  • 被关注

    27

论坛等级:奇侠

注册时间:2003-06-16

普通 普通 如何晋级?

发布于 2009-09-16 16:12:17

0楼

quote:以下是引用dcount107在2009-08-20 10:48:38的发言:
quote:以下是引用masscer在2009-08-20 10:06:38的发言:
有一次,我的WinCC需要读取一个科尔摩根伺服控制器中的数据,就是用VB调用科尔摩根提供的API函数写了一个控件,然后嵌入WinCC,万事大吉。但是我其实一直想直接在WinCC中调用科尔摩根API函数的,没有实现,哪位大侠提供点信息

在函数和动作中使用 DLL
WinCC 允许用户使用自己的 DLL(动态链接库)。
通过对各自的函数或动作进行必要补充,可以在函数和动作中启用现有 DLL 中的函数。
在函数或动作前添加下列代码:
#pragma code(".dll")
(...);
(...);
.
.
.
(...);
#pragma code()
中的函数 ... 均已进行了声明,并可由各自的函数或动作进行调用。
实例:
#pragma code("kernel32.dll")
VOID GetLocalTime(LPSYSTEMTIME lpSystemTime);
#pragma code()
SYSTEMTIME st;
GetLocalTime(&st);
对于上述过程,也可以在“Apdefap.h”头文件中作必要补充。

在 WinCC 中使用自己的 DLL 时,必须使用发行版。 WinCC 是发行版,因而也使用系统 DLL 的发行版。 如果在调试版中生成自定义 DLL,则可能 DLL 的发行版和调试版二者都将装载,进而会增加需要的内存空间。
DLL 的结构必须使用 1 个字节对齐方式方式进行设置。
-----------------------------------------------------------------
不管采用什么方法,达到目的就行,没必要什么都用WinCC去实现。相反我认为还是使用嵌入控件的方式更加方便,毕竟WInCC的资源是有限的。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有32644条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。