wincc如何實作自定義對話框登陸、退出!!(幹貨)
第一步:在使用者管理器中添加使用者名、密碼
首先我們建立一個項目,然後輕按兩下“使用者管理器”,彈出如下頁面:
然後建立使用者名、密碼。如下圖:
第二步:定義變量
1.輕按兩下“變量管理”,打開“變量管理”
2.打開“内部變量”
3.添加兩個内部變量。分别為“username(使用者名變量,資料類型為文本變量16位字元集)、password(密碼變量,資料類型為文本變量16位字元集)”
第三步: 繪制輸入輸出域
首先輕按兩下“圖形編輯器”。
1.點選右側“标準”中的“靜态文本”框,填寫“使用者名”、“密碼”
2.點選右側“标準”中的“輸入/輸出域”,繪制兩個“輸入/輸出域”框
3.關聯“輸入/輸出域”變量,将前面定義的“内部變量”關聯到對應的“輸入/輸出域”中。
4. 定義“輸入/輸出域”的格式
第四步: 繪制登陸、退出按鈕
1.繪制登陸、退出按鈕
第五步 編寫C程式
1.具體如下圖
2.如下圖
3.現在就可以編寫C程式了
程式如下:
4.“退出”按鈕C程式如下
3.建立一個新的頁面,即為第五步,第3中定義的一個視窗,名字為“NewPdl2.PDL”
現在,已經實作了wicc自定義對話框登陸、退出的操作。下面我會将程式上傳,大家可以下載下傳。
程式
//登陸按鈕C腳本
#pragma option(mbcs)
#include"USEGENAP.H"
#pragma code("UseAdmin.DLL")
#include"pwrt_api.h"
#pragma code ()
//int s=GetInputValueChar(lpszPictureName,"輸入/輸出域1");
//int a=GetInputValueChar(lpszPictureName,"輸入/輸出域2");
if(PWRTSilentLogin(GetInputValueChar(lpszPictureName,"輸入/輸出域1"),GetInputValueChar(lpszPictureName,"輸入/輸出域2"))==FALSE)
{
if(MessageBox(NULL,"錯誤,請重新輸入!","提示",MB_ICONEXCLAMATION|MB_SYSTEMMODAL));
}
else
{
OpenPicture("NewPdl1.PDL");
SetTagChar("NewTag_1",""); //Return-Type: BOOL
}
//退出按鈕C腳本
if(IDYES==MessageBox(NULL, "是否真的退出","退出", MB_YESNO |MB_SYSTEMMODAL))
{
DeactivateRTProject ();
}