BOOL EnumerateSuperArchiveData( )
{
extern DWORD dwSize;
BOOL fRet;
TLG_GETARCHIVDATA GAD;
CMN_ERROR Error;
LPTSTR IpszArchiveName = "ZK_ProcessValueArchive_02";
LPTSTR lpszVarName3 = "MaximumValue";
LPTSTR lpszVarName2 = "MinimumValue";
LPTSTR lpszVarName1 = "MeanValue";
SYSTEMTIME sysFrom;
SYSTEMTIME sysTo;
time_t Time;
struct tm* TimeStruct;
time(&Time);
TimeStruct=localtime(&Time);
sysTo.wYear=(WORD)(TimeStruct->tm_year+1900);
sysTo.wMonth=(WORD)(TimeStruct->tm_mon+1);
sysTo.wDay=(WORD)(TimeStruct->tm_mday);
sysTo.wHour=(WORD)(TimeStruct->tm_hour);
sysTo.wMinute=(WORD)(TimeStruct->tm_min);
sysTo.wSecond=(WORD)(TimeStruct->tm_sec);
sysFrom.wYear=1997;
sysFrom.wMonth=1;
sysFrom.wDay=1;
sysFrom.wHour =0;
sysFrom.wMinute=0;
sysFrom.wSecond=0;
Call(&GAD,(PVOID)0);
if(TLGConnect(NULL,&Error)==FALSE)
{printf("Error: %S\r\n",Error.szErrorText);
return FALSE;
}
else
{
fRet=TLGGetArchivData(IpszArchiveName,lpszVarName1,sysFrom,sysTo,GetArchiveDataCallback,(PVOID)1,0,&Error);
if(fRet==FALSE)
printf("Error: %S\r\n",Error.szErrorText);
fRet=TLGGetArchivData(IpszArchiveName,lpszVarName2,sysFrom,sysTo,GetArchiveDataCallback,(PVOID)2,0,&Error);
if(fRet==FALSE)
printf("Error: %S\r\n",Error.szErrorText);
fRet=TLGGetArchivData(IpszArchiveName,lpszVarName3,sysFrom,sysTo,GetArchiveDataCallback,(PVOID)3,0,&Error);
if(fRet==FALSE)
printf("Error: %S\r\n",Error.szErrorText);
Call(&GAD,(PVOID)4);
dwSize=GAD.dwFlags;
TLGDisconnect(NULL);
return TRUE;
}
}
我想问一下这个项目函数的中的Call函数的调用有什么问题,为什么编译程序老是讲它是错了没定义?
问题补充:
那不知道有谁知道这个函数应该这样改正,这个项目函数是wincc 组态手册中中202页中用户定义的表格布局中的一个项目函数!
最佳答案
call不可能作为涵数名字,所有编程语言或脚本都知道这是关键字,这语句肯定漏写涵数名字. 这里应该是call getarchivedatacallback(); 后面页里定义的,如果库里有直接可以用,没有的话,还得自己在添加这个涵数.
提问者对于答案的评价:
好的,知道了!
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc268568.html