|
uwscプログラムの書き方について質問です。
Windows10のローカルグループポリシー内の処理を自動化で行いたいのですが、1カ所動かない場所があります。
ローカルグループポリシーエディタ→コンピュータの構成→管理用 テンプレート→システム→資格情報の委任→NTMLのみのサーバー認証で保存された資格情報の委任を許可する
値:有効 サーバを一覧に追加→表示 表示するコンテンツの値にホスト(例:TERMSRV/*)を入力 OK
この動作を自動化したいのですが、表示するコンテンツのウインドウ上がどうしても動きません。
どなたか、構文で教えていただけないでしょうか。
|
No.794 2020/04/17(Fri) 13:53:13
|
☆ Re: ローカルグループポリシーの自動化について教えてください / しろまさ |
|
|
|
ローカルグループポリシーエディターが管理者実行されているので uwsも昇格(管理者実行)の必要があります。
DEF_DLL IsUserAnAdmin():BOOL:shell32 // 実行権限取得 DEF_DLL ShellExecuteA(Long, String, String, String, String, Long): Long: Shell32.dll Ifb ! IsUserAnAdmin() // 非昇格実行の場合 ShellExecuteA(0, "runas", GET_UWSC_DIR + "\uwsc.exe", GET_CUR_DIR + "\" + GET_UWSC_NAME, "", 1) // 昇格起動 Else // 昇格実行の場合 // ウィンドウを表示するところまでは省略 wID = GetID("NTLM のみのサーバー認証で既定の資格情報の委任を許可する") ClkItem(wID, "有効") ClkItem(wID, "表示...") wID = GetID("表示するコンテンツ") ScKey(wID, VK_SHIFT, VK_TAB, VK_F2) SendKBD("TERMSRV/*") EndIf Procedure SendKBD(a) Dim i, n, Key[] = "","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","32","s49","s50","s51","s52","s53","s54","s55","s56","s57","106","107","188","189","190","191","48","49","50","51","52","53","54","55","56","57","186","187","s188","s189","s190","s191","192","s65","s66","s67","s68","s69","s70","s71","s72","s73","s74","s75","s76","s77","s78","s79","s80","s81","s82","s83","s84","s85","s86","s87","s88","s89","s90","219","220","221","222","s226","s192","65","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","87","88","89","90","s219","s220","s221","s222" If GetKeyState(TGL_CAPSLOCK) Then KBD_W(VK_SHIFT, VK_CAPITAL) For i = 1 To Length(a) n = Key[ASC(Copy(a, i, 1))] ; If ChkNum(n) Then KBD(n) Else KBD_W(VK_SHIFT, Copy(n, 2)) Next FEnd Procedure KBD_W(a_Key1, a_Key2) // a_Key1 を押しながら a_Key2 押下 KBD(a_Key1, 1); KBD(a_Key2); KBD(a_Key1, 2) FEnd
|
No.796 2020/04/17(Fri) 15:16:08
|
|