ノート PC は下記のようなセキュリティ設定で運用している人が多いと思います。会社の PC もこういう設定が多いと思います。
この設定はセキュリティ上は素晴らしいです。ただし展示で使うときはちょっと困るんですよね……。自分のアカウントで画面ロックが掛かると、当然自分しか解除ができませんから自分が PC の前を離れられなくなります。
展示のためだけにセキュリティ設定を緩めるのも何だかイマイチですし、一時的に使える方法はないか?と思ったらありました。ヒントは PowerPoint の全画面表示で、スライドショーを開始すると Windows の画面ロックは発動しないのです。ほほう。
PowerPoint に画面ロックの妨害ができるなら、そこらのアプリでも画面ロックの妨害を実現できるはずです。
どの Windows の API を呼んだらいいのか?と思って調べていましたが、JavaScript で手軽に実現する手段がありました。今のところ Chrome 限定っぽいですが、
function addEvent(obj, name_event, func_event)
{
var func_prev = obj[name_event];
if (func_event == null) {
return;
}
if (func_prev == null) {
obj[name_event] = function() { func_event(); };
} else {
obj[name_event] = function() { func_prev(); func_event(); };
}
}
function f_resolve()
{
var statusElem = document.getElementById('status');
statusElem.textContent += 'Success. ';
}
function f_reject()
{
var statusElem = document.getElementById('status');
statusElem.textContent += 'Rejected. ';
}
function f_release()
{
var statusElem = document.getElementById('status');
statusElem.textContent += 'Released. ';
}
function testWakeLock()
{
var statusElem = document.getElementById('status');
var isSupported = false;
if ('wakeLock' in navigator) {
isSupported = true;
statusElem.textContent += 'Support wakeLock. ';
} else {
statusElem.textContent += 'Not support wakeLock. ';
return;
}
var wakeLock = null;
try {
wakeLock = navigator.wakeLock.request('screen');
} catch (err) {
statusElem.textContent += `${err.name}, ${err.message}`;
}
statusElem.textContent += 'Request. ';
wakeLock.then(f_resolve, f_reject);
wakeLock.addEventListener('release', f_release);
}
addEvent(window, "onload", testWakeLock);
この画面起動ロック(MDN へのリンク)という機能を使うと、タブを切り替えたりしない限り画面ロックを妨害できるようです。
私の環境で試した限りでは、なぜか Release イベントが一切来ないのと、ブラウザをバックグラウンドに持っていくと動作が不安定(たまに効かない = 画面ロックしてしまう)ですが、一応効き目がありました。
画面起動ロックが効いているかどうかは powercfg を使うとわかります。管理者モードでコマンドプロンプトを起動し powercfg /requests と /requestsoverride を実行します(powercfg のヘルプ)。私の環境では /requests の方に表示されていました。
C:\Windows\system32>powercfg /requests DISPLAY: [PROCESS] \Device\HarddiskVolume3\Program Files\Google\Chrome\Application\chrome.exe Blink Wake Lock SYSTEM: なし。 AWAYMODE: なし。 実行: なし。 PERFBOOST: なし。 ACTIVELOCKSCREEN: なし。
先ほどのスクリプトを実行したタブを切り替えると、
C:\Windows\system32>powercfg /requests DISPLAY: なし。 SYSTEM: なし。 AWAYMODE: なし。 実行: なし。 PERFBOOST: なし。 ACTIVELOCKSCREEN: なし。
となるはず、です。
在宅勤務の時、会社の Windows ノート PC(常時コミュニケーション用のツールが入っている)がすぐに画面ロックしてしまって、コミュニケーションツールにアクセスしづらいのと非常にウザくて困ってました。画面ロックを無効にもできなくて困っていたんですが、画面起動ロックで画面ロックを妨害できるようになってだいぶ使いやすくなりました。
画面ロックを仕込んだページを作られたら、画面ロックできなくなるんですかね?どうなるんだろうな?(追記: ローカルファイルじゃないと動作しませんでした)まあ、時限式の画面ロックに頼って、PC の前から立ち去るような運用はそもそも論外なのですが……。
理屈は良いので動くものをくださいという、せっかちな方へお送りします。 動作するページへのリンクです。注意点はネットワーク上のサイトでは機能しません(Not support になります)ので、ローカルにダウンロードしてから開いてください。
不安な方はローカルに保存して開く前に中身をご確認ください。もしくは上記のスクリプトを見て&理解してご自身でページを作成くださいませ。
私が今使っているグラフィックスカードは MSI 製で、MSI Afterburner というオーバークロック用ツールが使えます(MSI Afterburner 公式サイトへのリンク)。他社製のグラフィクスカードでも類似のツール(ASUS GPU TweakII など)が公開されていると思います。
ツールの名前からしてコアクロックやメモリバスクロックを上げるのが主な目的だと思いますが、逆に下げる方向に使うこともできます。
MSI Afterburner でクロックを下げる方向に設定
GeForce RTX 3060 の性能をフルに必要とするゲームばかりではありませんし、あえてクロックを下げて負荷軽減、省エネ&温度を低目に保てたら良いな〜くらいの期待です。残念ながら GPU 温度を見ている限りでは、効き目はあまりなさそうですが……まあ気休めに。
今日は中秋の名月だそうです。手持ちのコンデジ(CASIO EX-ZR1300)のズームを最大にして月を撮影しました。
満月は非常に明るくて、ISO 80、シャッタースピード 1/50 のような普通なら夜の写真に使わない暗い設定でもばっちり映りました。月のクレーターを認識できるくらいの写真が撮れます。
三脚を使わなかった割にはブレなかったと思います。カメラの手ブレ補正スゴイな〜。プレビューではもっと鮮明に映ったように見えたものの、切り抜いてみるとややボンヤリしていますね……。ズームの倍率も光学 12.5倍ですし、撮影者の腕的にもこんなもんですかね。
< | 2022 | > | ||||
<< | < | 09 | > | >> | ||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
- | - | - | - | 1 | 2 | 3 |
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | - |
合計:
本日:
管理者: Katsuhiro Suzuki(katsuhiro( a t )katsuster.net)
This is Simple Diary 1.0
Copyright(C) Katsuhiro Suzuki 2006-2021.
Powered by PHP 5.2.17.
using GD bundled (2.0.34 compatible)(png support.)