và password cho người sử dụng nhưng khi mình gán user đó cho nút nhấn thì nó lại không hiện lên bảng yêu cầu đăng nhập!. gán quyền user bằng cách : Properties -> Miscellaneous -> Authori
Trang 1Lập trình C cho WINCC – Tổng hợp code C và VB
Trong quá trình làm học và project, mình có nghiên cứu chút về phần lập trình C, VB trong WinCC
Dưới đây là một số code mình tham khảo và tự code Mong giúp phần nào đó cho các bạn mới sử dụng
void move_xy(char* lpszPictureName,
char* lpszObjectName,int x1,int y1,int x2,
Trang 5long _main(char* lpszPictureName,
Trang 6và password cho người sử dụng nhưng khi mình gán user đó cho nút nhấn thì nó lại không hiện lên bảng yêu cầu đăng nhập! huynh nào đã giải quyết đuộc vấn đề này giúp mình với!
ấn nút cho thêm C–Ation PASSLoginDialog(“1”);
Trang 7gán quyền user bằng cách : Properties -> Miscellaneous -> Authorization -> chọn quyền tương ứng mà bạn đã gán : gán quyền quản trị chứ ko thể hiện lên cửa sổ đăng nhập được,
hiện đăng nhập thì dùng cách trên ấn nút cho thêm C–Ation PASSLoginDialog(“1”);
Trang 11Sub OnLButtonDown(Byval Item, Byval Flags, Byval x, Byval y)Dim SMSSend
Dim SMS
Dim buffer
MsgBox “Xin chao”
‘ This is the name of the MSComm Control
Set SMSSend = ScreenItems(“Control 1”)
‘Comunicacion puerto COM
buffer = buffer & SMSSend.Input
Loop Until InStr(buffer,“OK”)
buffer = buffer & SMSSend.Input
Loop Until InStr(buffer,“OK”)
buffer = buffer & SMSSend.Input
Loop Until InStr(buffer,
Trang 12Loop Until InStr(buffer,
Sub OnClick(Byval Item)
Dim objMSComm1, tagConnection
Set objMSComm1 = HMIRuntime.Screens(“Main”).ScreenItems(“MSComm1”)Set tagConnection = HMIRuntime.Tags(“Connection”)
If objMSComm1.PortOpen = False Then
‘ Assign com port number
Sub OnClick(Byval Item)
Dim objMSComm1, tagConnection
Set objMSComm1 = HMIRuntime.Screens(“Main”).ScreenItems(“MSComm1”)Set tagConnection = HMIRuntime.Tags(“Connection”)
If objMSComm1.PortOpen = True Then
Trang 13Read Buffer
Option Explicit
Function action
Dim strBuffer, strTemp
Dim objMSComm1, tagBuffer
Set objMsComm1 = HMIRuntime.Screens(“Main”).ScreenItems(“MSComm1”)Set tagBuffer = HMIRuntime.Tags(“Buffer”)
strTemp =
“”
If objMSComm1.PortOpen = True Then
‘read the buffer
Sub OnClick(ByVal Item)
Dim tagOutput, objMSComm1
Set tagOutput = HMIRuntime.Tags(“Output”)
Set objMSComm1 = HMIRuntime.Screens(“Main”).ScreenItems(“MSComm1”)
If objMSComm1.PortOpen = True Then
#define Apc_lower_limit “lower_limit”
#define Apc_upper_limit “upper_limit”
// next TagID : 4
// WINCC:TAGNAME_SECTION_END
Trang 15void OnClick(char* lpszPictureName,
PDLRTGetPropEx( ,lpszPictureName,lpszObjectName,“Min”,VT_I4,&min,NULL,NULL, ,NULL,NU LL);
Trang 16// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction “DMTagName”
#define Tag_1 “stop”
// syntax: #define TagNameInAction “DMTagName”
#define Tag_1 “loko_S36”
// next TagID : 2
// WINCC:TAGNAME_SECTION_END
// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction “PictureName”
#define Pic_2 “PA10_bld06.pdl”
Trang 17// syntax: #define TagNameInAction DMTagName
#define Tag_1 “stop”
#define Tag_9 “Trend_1”
#define Tag_10 “Trend_2”
#define Tag_11 “Trend_3”
#define Tag_12 “Trend_4”
#define Tag_13 “Trend_5”
#define Tag_14 “Trend_6”
#define Tag_15 “Trend_7”
#define ApcMel_Mischer “Mel_Mischer”
#define Apc_X_Trend “X_Trend”
#define Apc_Y_Trend “Y_Trend”
Trang 20// syntax: #define TagNameInAction “DMTagName”
#define APC_raw1 “raw1”
// next TagID : 2
// WINCC:TAGNAME_SECTION_END
// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction “PictureName”1
#define Pic_1 “PAX.pic_win_5:PA5_bld09_1”
#define object “Polygon_trend”
// +170 –> Kurve um 170 Pixel nach unten verschieben
// +170 –> move trend 170 pixel down
Trang 21// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction DMTagName
#define ApcTest1 “Test1”
#define ApcTest3 “Test3”
#define ApcTest2 “Test2”
#define ApcTest4 “Test4”
#define ApcMSEXCELPath “MSEXCELPath”
#define ApcProjectPath “ProjectPath”
Trang 22datei = fopen( file,
fprintf( datei,“%d\r\n%d\r\n%s\r\n%s\r\n%s\r\n”, a, b, c, d, e);
// Werte in die Datei schreiben
printf(“Variablen in Datei geschrieben – finished writing tags to file \r\n%d\r\n\
Trang 26void OnClick(char* lpszPictureName,
Trang 27=============================================================