通过C脚本进行用户登录和注销,登录脚本可以正常登录,注销脚本就不能注销了,寻求解决方法。
已进行:①用户登录后变量管理的@CurrentUser值为Admi(设置的用户名),点击注销后,@CurrentUser值还是为Admi;②检查了"PWRT_API.h"头文件中PWRTLogout段的程序(没有仔细看,但感觉是没有问题的,按照WinCC软件后没有更改过这些头文件);③新建了一个新的项目文件,还是一样的结果
登录C脚本如下,可以正常登录
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
#pragma option(mbcs)
#pragma code ("useadmin.dll")
#include "PWRT_API.h"
#pragma code()
if (strcmp(GetTagChar("@CurrentUser"),"")!=0)
MessageBox(NULL, "当前已有用户登录", "提示",MB_ICONEXCLAMATION| MB_SYSTEMMODAL);
else PWRTLogin('1');}
注销C脚本如下,无法注销。
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
#pragma option(mbcs)
#pragma code ("useadmin.dll")
#include "PWRT_API.h"
#pragma code()
if (strcmp(GetTagChar("@CurrentUser"),"")==0)
MessageBox(NULL, "当前无用户登录", "提示",MB_ICONEXCLAMATION| MB_SYSTEMMODAL);
else
PWRTLogout();
}