using System; using Arp.Prova.PlayLib; // このサンプルコードは、共有フォルダのセキュリティ設定を行います。 // 設定内容は、Everyoneユーザの追加とEveroneのアクセス許可をフルコントロールに設定します。 public class CodeClass { public static int CodeStart() { // 待機時間間隔 int basicWait = 1000; //デスクトップのフォルダ名(フォルダ名を変更する場合は、「共有フォルダ」の値を変更してください。) string folderName = "共有フォルダ"; /************************ここから設定の変更を行います************************/ // デスクトップ上にある"共有フォルダ"のプロパティを開く PlayLib.Window("Program Manager").ListView("ListView").RightClick(folderName); PlayLib.Sleep(basicWait); PlayLib.PopupMenu().Click("プロパティ(R)"); //「○○○のプロパティ」画面が開くまで待つ(待ち時間60秒) if(PlayLib.WaitWindow(folderName + "のプロパティ", true, 60) == true) { // プロパティの「セキュリティ」タブの「グループ名またはユーザー名」から、「Everyone」を選択する PlayLib.Window(folderName + "のプロパティ").TabControl("TabControl").Click("セキュリティ"); PlayLib.Sleep(basicWait); PlayLib.Window(folderName + "のプロパティ").Button("編集(E)...").Click(); PlayLib.Sleep(basicWait); //「○○○のアクセス許可」画面が開くまで待つ(待ち時間60秒) if(PlayLib.WaitWindow(folderName + " のアクセス許可", true, 60) == true) { // 「Everyone」が無いかを確認し、なければ「Everyone」を登録する if(bool.Parse(PlayLib.Window(folderName + " のアクセス許可").ListView("グループ名またはユーザー名(G):").GetCellProperty("exists", "Everyone", 0).ToString()) == false) { PlayLib.Window(folderName + " のアクセス許可").Button("追加(D)...").Click(); PlayLib.Sleep(basicWait); //「ユーザー または グループ の選択」画面が開くまで待つ(待ち時間60秒) if(PlayLib.WaitWindow("ユーザー または グループ の選択", true, 60) == true) { PlayLib.Window("ユーザー または グループ の選択").Unknown("RICHEDIT50W", "RICHEDIT50W").Input("Everyone"); PlayLib.Sleep(basicWait); PlayLib.Window("ユーザー または グループ の選択").Button("OK").Click(); PlayLib.Sleep(basicWait); } else { //「ユーザー または グループ の選択」画面が開かなかった場合、ログを出力し処理を終了する PlayLib.TestLogError("「ユーザー または グループ の選択」画面が開きませんでした"); return -1; } } //「Everyone」が存在していることを確認する if(PlayLib.Window(folderName + " のアクセス許可").ListView("グループ名またはユーザー名(G):").CheckCellProperty("exists", "Everyone", 0, true, 3) == false) { // 「Everyone」が存在しない場合、ログを出力し処理を終了する PlayLib.TestLogError("フォルダのセキュリティ設定にて「Everyone」の追加に失敗しました。"); return -1; } //「Everyone」を選択する PlayLib.Window(folderName + " のアクセス許可").ListView("グループ名またはユーザー名(G):").Click("Everyone"); PlayLib.Sleep(basicWait); // 「Everyone」の許可にて「フルコントロール」にチェックが無い場合、チェックを入れて、「OK」ボタンをクリックする if((int)PlayLib.Window(folderName + " のアクセス許可").Button("許可 フル コントロール").GetProperty("Checked") == 0) { PlayLib.Window(folderName + " のアクセス許可").Button("許可 フル コントロール").Click(); } // 許可の「フルコントロール」にチェックが入っていることを確認する if(PlayLib.Window(folderName + " のアクセス許可").Button("許可 フル コントロール").CheckProperty("Checked", 1, 3) == false) { // 許可の「フルコントロール」にチェックが入っていない場合、ログを出力し処理を終了する PlayLib.TestLogError("フォルダのセキュリティ設定にて「Everyone」の「フルコントロール」にチェックできませんでした。"); return -1; } //OKボタンで閉じる PlayLib.Window(folderName + " のアクセス許可").Button("OK").Click(); PlayLib.Sleep(basicWait); // 「OK」ボタンをクリックし、"○○○のプロパティ"を閉じる。 PlayLib.Window(folderName + "のプロパティ").Button("OK").Click(); } else { //「○○○のアクセス許可」画面が開かなかった場合、ログを出力し処理を終了する PlayLib.TestLogError("「" + folderName + "のアクセス許可」画面が開きませんでした"); return -1; } } else { //「○○○のプロパティ」画面が開かなかった場合、ログを出力し処理を終了する PlayLib.TestLogError("「" + folderName + "のプロパティ」画面が開きませんでした"); return -1; } return 0; } }