发布于 2010-03-10 10:43:12
1楼
在用户登陆画面中的确定按钮写如下C脚本,其中"main_xiangyuan."就是你的主画面
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
#pragma code("useadmin.dll")
#include "PWRT_API.H"
#pragma code()
if (PWRTSilentLogin(GetTagChar("username"),GetTagChar("password")))
{
//MessageBox(NULL,"登录成功","提示",MB_OKMB_ICONEXCLAMATIONMB_SETFOREGROUNDMB_SYSTEMMODAL);
OpenPicture("main_xiangyuan.PDL"); //Return-Type: void
}
else
{
MessageBox(NULL,"登录失败","提示",MB_OKMB_ICONEXCLAMATIONMB_SETFOREGROUNDMB_SYSTEMMODAL);
}
SetTagChar("username","");
SetTagChar("password","");
}
获得当前用户名
char* x="user"; //默认用户名
char* y;
int z;
y=GetTagChar("@CurrentUser"); //读入当前用户名
*******************************华丽的分割线****************************
登陆按钮
#pragma code ("USEADMIN.DLL")
#include "PWRT_API.H"
#pragma code()
PWRTLogin('1');
-----------------------华丽的分割线----------------------------------
创建按钮,C函数
退出按钮:
#pragma code ("USEADMIN.DLL")
#include "PWRT_API.H"
#pragma code()
PWRTLogout();
---------------------------华丽的分割线----------------------------------------
前提条件在用户中创建相应的用户和密码,
对象属性--事件--鼠标动作--C动作中写入
获得当前用户代号 PWRTCheckPermission(用户代号,TRUE) 返回的是逻辑型。
---------------------------华丽的分割线----------------------------------------
1、系统登陆有现成的函数:在WINCC管理器左边就有,如果用户登录,可做个按钮,C脚本:
#pragma code("useadmin.dll")
#include "PWRT_api.h"
#pragma code()
PWRTLogin('c');
2、如果你要实现登陆后的处理:在登录按钮中加处以下脚本:
#pragma code("useadmin.dll")
#include "PWRT_API.H"
#pragma code()
if (PWRTSilentLogin("username", "PassWord"))//用户名和密码
{
OpenPicture(picutename);//登录成功后的处理,这里可以添加你要打开的画面。
}
其中"USERNAME","PASSWORD"可以用存储用户名和密码的变量替换,以I/O 域方式提前输入,登陆后通过编程将用户名和密码都清除。
这是我以前做的一些笔记,你可以参考下。
授之以鱼不如授之以渔。