using System; using Arp.Prova.PlayLib; //--------------------電源オプションの設定サンプル-------------------- //「電源オプション」の詳細設定画面で //「ディスプレイ->次の時間が経過後ディスプレイ」を「なし」に設定するサンプルです。 // ※このサンプルは、デスクトップ用のサンプルとなります。 //--------------------------------------------------------------------- public class CodeClass { public static int CodeStart() { // 待機時間間隔 int basicWait = 1000; /****************************ここから設定の変更を行います****************************/ //「powercfg.cpl」を実行し電源オプションを開く PlayLib.ProcessStart("powercfg.cpl"); //「電源オプション」ウィンドウが開くまで60秒待機する if(PlayLib.WaitWindow("電源オプション", true, 60) == true) { //「バランス(推奨)」ボタンが表示されているのか if(PlayLib.Window("電源オプション").Button("バランス (推奨)").Visible == false) { //表示されていない場合 //「追加のプランを表示します」をクリック PlayLib.Window("電源オプション").UIButton("追加プランの表示").Invoke(); //表示されるまで少し長めに待つ PlayLib.Sleep(3000); } //「バランス (推奨)」の「プラン設定の変更」をクリック PlayLib.Window("電源オプション").UIHyperLink("バランス (推奨) プランのプラン設定を変更します").Click(); PlayLib.Sleep(basicWait); //「プラン設定の編集」ウィンドウが開くまで60秒待機する if(PlayLib.WaitWindow("プラン設定の編集", true, 60) == true) { //「詳細な電源設定の変更」をクリック PlayLib.Window("プラン設定の編集").UIHyperLink("詳細な電源設定の変更").Click(); //一度、TreeView内の「ディスプレイ」アイテムをクリック PlayLib.Window("電源オプション").TreeView("TreeView").Click("ディスプレイ"); // 「ディスプレイ->次の時間が経過後ディスプレイの電源を切る」を展開 PlayLib.Window("電源オプション").TreeView("TreeView").Expand("ディスプレイ->次の時間が経過後ディスプレイの電源を切る"); PlayLib.Sleep(basicWait); //TreeViewに「スリープ->次の時間が経過後スリープする->設定: なし」項目があるか調べる if((bool)PlayLib.Window("電源オプション").UITreeView("UITreeView").GetNodeProperty("Exists", "ディスプレイ->次の時間が経過後ディスプレイの電源を切る->設定: なし")== false) { //TreeViewに「スリープ->次の時間が経過後スリープする->設定: なし」項目がない場合項目にフォーカスを当てる PlayLib.Window("電源オプション").TreeView("TreeView").Click("ディスプレイ->次の時間が経過後ディスプレイの電源を切る"); PlayLib.Window("電源オプション").TreeView("TreeView").Input("{DOWN}"); //設定値を削除し「なし」を入力 PlayLib.Window("電源オプション").Edit("Edit").Input("{Ctrl_Down}A{Ctrl_Up}なし"); //フォーカスを元に戻し設定を決定 PlayLib.Window("電源オプション").TreeView("TreeView").Click("ディスプレイ->次の時間が経過後ディスプレイの電源を切る"); //TreeViewに「スリープ->次の時間が経過後スリープする->設定: なし」項目があるか調べる if((bool)PlayLib.Window("電源オプション").UITreeView("UITreeView").CheckNodeProperty("Exists", "ディスプレイ->次の時間が経過後ディスプレイの電源を切る->設定: なし", true) == false) { //TreeViewに「スリープ->次の時間が経過後スリープする->設定: なし」がない旨をログ出力して終了する PlayLib.TestLogError("「スリープ->次の時間が経過後スリープする->設定: なし」の設定に失敗しました。"); return -1; } } //「OK」ボタンをクリック PlayLib.Window("電源オプション").Button("OK").Click(); //「プラン設定の編集」画面を閉じる PlayLib.Window("プラン設定の編集").Close(); }else{ //「プラン設定の編集」画面が開かなかった場合、ログを出力し処理を終了する PlayLib.TestLogError("「プラン設定の編集」画面が開きませんでした。"); return -1; } }else{ //「電源オプション」画面が開かなかった場合、ログを出力し処理を終了する PlayLib.TestLogError("「電源オプション」画面が開きませんでした。"); return -1; } return 0; } }