根據用戶名稱判斷是否允許Wincc退出運行系統?

Tags: 系統, 用戶, 名稱,

在使用西門子組態軟件Wincc的時候,不同的用戶的權限是不相同的,有些用戶可以退出運行系統,切換到桌面,但有些用戶卻不能切換到桌面,避免亂插U盤、娛樂等現象的發生,這種情況下,就要根據用戶名稱判斷是否允許Wincc退出運行系統。

工具/原料

SIMATIC WinCC Explorer

方法/步驟

打開Wincc---用戶管理器。

根據用戶名稱判斷是否允許Wincc退出運行系統

在打開的用戶管理器中,設置兩個用戶,本文以Administrator和land兩個用戶為例進行說明。兩個用戶的權限區別在於:Administrator用戶比land用戶多了一個編號的權限(任何編號都可以,比land用戶至少多一個權限即可),本文以編號17為例,設置的目的是用於後文中的C腳本編寫命令。

PS:經測試Wincc軟件的用戶名及密碼沒有大小寫區分。

根據用戶名稱判斷是否允許Wincc退出運行系統

打開wincc---全局腳本---C-Editor---動作---全局動作,選中全局動作,點擊右鍵---新建。

根據用戶名稱判斷是否允許Wincc退出運行系統

根據用戶名稱判斷是否允許Wincc退出運行系統

在新出現的空白處,把下面的代碼粘貼進去

************從下面開始複製***************

#include "apdefap.h"

int gscAction( void )

{

{

#pragma code ("UseAdmin.DLL")

#include "pwrt_api.h"

#pragma code()

#pragma code ("ALMXGINA.DLL")

BOOL SetXGinaValue(unsigned int uiKey, BOOL *pbEnable, DWORD dwSize);

#pragma code()

BOOL bEnable;

BOOL bOK;

#define XGINA_ALLOW_SHUTDOWN 1

#define XGINA_ALLOW_LOGOUT 2

#define XGINA_ALLOW_CTL_ALT_DEL 3

#define XGINA_ALLOW_CTL_ESC 4

#define XGINA_ALLOW_ALT_ESC 5

#define XGINA_ALLOW_ALT_TAB 6

bEnable = PWRTCheckPermission(17, TRUE);

bOK = SetXGinaValue(XGINA_ALLOW_SHUTDOWN , &bEnable , sizeof(bEnable ));

bOK = SetXGinaValue(XGINA_ALLOW_LOGOUT , &bEnable , sizeof(bEnable ));

bOK = SetXGinaValue(XGINA_ALLOW_CTL_ALT_DEL , &bEnable , sizeof(bEnable ));

bOK = SetXGinaValue(XGINA_ALLOW_CTL_ESC , &bEnable , sizeof(bEnable ));

bOK = SetXGinaValue(XGINA_ALLOW_ALT_ESC , &bEnable , sizeof(bEnable ));

bOK = SetXGinaValue(XGINA_ALLOW_ALT_TAB , &bEnable , sizeof(bEnable ));

printf("#I101: SetXGinaValue() - bEnable=%d bOK=%d (lock/unlock windows keys)\r\n", bEnable, bOK);

}

return 0;

}

************到上面一行結束***************

編譯並保存後退出。

設置完成之後即可通過用戶Administrator和land的登陸實現Windows熱鍵的屏蔽。

本例中,創建用戶特定的授權編號為 19 來使能 Windows 組合鍵。還可以使用其他的或者已經存在的權限(例如:“Higher process controlling”,編號 6)。

根據用戶名稱判斷是否允許Wincc退出運行系統

為了在用戶登錄/註銷時能夠使能/禁止組合鍵(激活上述代碼),需要在全局動作中使用到觸發器,即系統內部變量“@Current_User” 作為觸發器變量。觸發器的週期可以自行設定,觸發器選項在空白處右鍵可以看到。

根據用戶名稱判斷是否允許Wincc退出運行系統

PS:組合鍵“Alt + F4”可以在 WinCC Explorer 中的計算機“屬性”的對話框中禁止。打開“WinCC Explorer > 計算機 > 計算機屬性 > 圖形運行系統”並選擇相應的複選框來設置。禁用了該功能之後,就必須要牢記用戶名的密碼了,否則的話,就只有強制關機才能退出系統了。

根據用戶名稱判斷是否允許Wincc退出運行系統

注意事項

用戶名密碼一定要牢記。

代碼中的命令是區分大小寫的。

相關問題答案