山口屋~活動日誌~

私生活で主な出来事をピックアップ

Windows サインイン 自動 ドメイン

2024-02-23 10:53:49 | パソコン
Microsoft Entra joined のドメイン環境ながら、ローカルユーザーでパスワード無の単一ユーザーが使用するケース(持ち出ししない自宅デスクトップパソコンなど)に対応。
レジストリ:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
AutoAdminLogon:REG_SZ(文字列)値 = 1(※新規の場合は一度0になることがWindows11ではあるので修正して再設定する)
DefaultUserName → REG_SZ(文字列)値 = <ユーザー名>

<参考>
SofGate:Windowsの自動ログオン設定

winget 'msstore' ソースでは、使用する前に次の契約を表示する必要があります。 accept agreements

2024-02-23 09:17:04 | パソコン
winget のオプションで、--accept-source-agreements と --accept-package-agreements の両方を追加しているケースが多く見られるが違いは何か。
--accept-source-agreements のほうは、winget の初回使用時に install か upgrade オプションでソースの契約条件への同意を求められるので追加するもの。
--accept-package-agreements のほうは、アプリ規約への同意を求められるのでインストールの都度追加するもの(アプリによっては求められない場合もある)。

<参考>
社内SEの話:【PowerShell】winget ソースへの同意を自動化

Windows Update 非表示 wushowhide.diagcab

2024-02-15 23:58:30 | パソコン
Windows 10 以降は Windows Update の非表示が難しくなったようで。公式:wushowhide.diagcabを参考に PowerShell スクリプトを作成(最近インストールが上手くいかない事例が報告されている「2024-01 x64 ベース システム用 Windows 10 Version 22H2 のセキュリティ更新プログラム (KB5034441)」を非表示にする例)

try
{
$target = "2024-01 x64 ベース システム用 Windows 10 Version 22H2 のセキュリティ更新プログラム (KB5034441)"
$session = New-Object -ComObject Microsoft.Update.Session
$searcher = $session.CreateUpdateSearcher()
$updates = $searcher.Search(" IsInstalled=0").Updates
foreach($update in $updates)
{
if ($update.Title -eq $target)
{
$update.Title
$update.IsHidden = $true
}
}
}
catch
{
$errMsg = $_.Exception.Message
return $errMsg
exit 1
}

C++ C# 比較 演算子 ポインタ インスタンス ソート 検索 ポリモーフィズム

2024-02-04 15:58:28 | ソフトウェア開発
<C++やC#など、オブジェクト指向言語で、演算子、メソッド、どちらを使って比較するか>
演算子はオーバーロード、メソッドはオーバーライド、ということがポイント。
★演算子はオーバーロードなので、アップキャストすると基底クラスのものしか呼び出されない。
★メソッドはオーバーライドなので、アップキャストしてもスーパークラスのものが呼び出される。
.NET Tips (VB.NET,C#...):2つの値が等しいか調べる、等値演算子(==)とEqualsメソッドの違い

<ポリモーフィズム(特にC++)>
実現するならクラスはポインタ型で一択。
Theoride Technology:実践C++入門講座 第27回目 オジブェクト指向の3大特長の3つ目「動的ポリモーフィズム」-補足-
コピーコンストラクタは protected で定義し、仮想メンバ関数 clone() 等のみ使用可能とする。
オージス総研:オブジェクトの広場 C++ クラス設計に関するノート
格納には便利だが、継承クラスにはあるであろう独自のメソッドやフィールドへの対応は厄介がいろいろ。
negationの日記:C++でのポリモーフィズムと継承と、コード保守性
C++で実行コストを気にするなら、ダウンキャストが安全に行える確証を持てるようきちんと設計してstatic_cast、そうでなければdynamic_cast、といったところか。
Programming Place Plus:C++編【言語解説】 第31章 RTTI

<C++でポインタ型をalgorithmライブラリでソートや検索をするにはどうしたらよいか>
静的メソッドにおいて、参照型引数のままで値型をポインタ型に書き換える。
目指せプログラマー!:7章:STL
魂の記憶:【C++】独自に定義したクラス型ポインタを保有するlistのソート方法に関するメモ
なんとな~くしあわせ?の日記:vector<クラス>をソートしたいとき
minus9d's diary:C++で構造体をソートする4つの方法(おまけあり)
でも今日はSRMあるから:C++の関数オブジェクトが関数よりどれだけ速いか
オブジェクトの広場:C++ クラス設計に関するノート