求助!C脚本问题 点击:274 | 回复:5



guoyb2006

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:19帖 | 68回
  • 年度积分:0
  • 历史总积分:72
  • 注册:2006年5月13日
发表于:2008-07-12 09:13:20
楼主

在WINCC中显示系统时间,建一个全局动作

#include "apdefap.h"

int gscAction( void )
{
#pragma code("kernel32.dll");
void GetLocalTime(LPSYSTEMTIME lpSystemTime);
#pragma code();
SYSTEMTIME time;
GetLocalTime(&time);
SetTagWord("year",time.wYear );
SetTagWord("month",time.wMonth );
SetTagWord("week",time.wDayOfWeek );
SetTagWord("day",time.wDay );
SetTagWord("hour",time.wHour );
SetTagWord("minute",time.wMinute );
SetTagWord("second",time.wSecond );
return 0;
}

然后建“year"等7个内部变量

再建几个静态文本,比如说年、月等,在年的字体属性中选择动态-内部变量是”year",可是始终读不到系统的年份,请各楼主帮忙看看,

是否全局脚本有问题,这个例子是原来已成功运行的,我现在是新的项目重做的。




夏天来了

  • 精华:1帖
  • 求助:0帖
  • 帖子:17帖 | 202回
  • 年度积分:0
  • 历史总积分:282
  • 注册:2003年7月29日
发表于:2008-07-12 13:21:53
1楼

这是我运行正常的代码,你仔细核对以下

#pragma code("kernel32.dll")
void GetLocalTime(LPSYSTEMTIME lpSystemTime);

#pragma code()

SYSTEMTIME time;

GetLocalTime(&time);

SetTagWord("year",time.wYear );

SetTagWord("month",time.wMonth );

SetTagWord("week",time.wDayOfWeek );

SetTagWord("day",time.wDay );

SetTagWord("hour",time.wHour );

SetTagWord("minute",time.wMinute );

SetTagWord("second",time.wSecond );

return 0;

千山独步

  • 精华:0帖
  • 求助:0帖
  • 帖子:159帖 | 3098回
  • 年度积分:4
  • 历史总积分:21261
  • 注册:2007年2月02日
发表于:2008-07-12 20:13:21
2楼

在WINCC中显示系统时间,可以用时间控件啊,比这个简单多了

guoyb2006

  • 精华:0帖
  • 求助:0帖
  • 帖子:19帖 | 68回
  • 年度积分:0
  • 历史总积分:72
  • 注册:2006年5月13日
发表于:2008-07-12 21:23:33
3楼

谢谢你们啦,我再试试时间控件了

西城教父

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 68回
  • 年度积分:0
  • 历史总积分:306
  • 注册:2008年3月01日
发表于:2008-07-24 11:23:09
4楼

可参考wincc组态手册,有详细讲解。

新手不耻下问

  • 精华:0帖
  • 求助:0帖
  • 帖子:12帖 | 48回
  • 年度积分:0
  • 历史总积分:136
  • 注册:2006年8月12日
发表于:2008-08-01 08:36:00
5楼

wincc组态手册,在哪里可下载呢,谢谢。如果那位有发一份给我好吗?

hhj8598@163.com


热门招聘
相关主题

官方公众号

智造工程师