【SignTool】”Error: SignerSign() failed.” (-2146869243/0x80096005)エラーが発生してコードサイニング証明書を付けることができない(SECTIGO/COMODO)

エラー内容

Done Adding Additional Store
SignTool Error: An unexpected internal error has occurred.
Error information: "Error: SignerSign() failed." (-2146869243/0x80096005)

エラーが出ないように修正したコマンド

"C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x86\signtool.exe" sign /fd sha256 /f %証明書パス% /p %証明書パスワード% /tr http://timestamp.digicert.com /d %アプリ名% %EXEパス%

ポイント:http://timestamp.sectigo.com/rfc3161ではなく、http://timestamp.digicert.comとすればOK

(参考)証明書の検証コマンド

"C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x86\signtool.exe" verify /pa "C:\temp\sample.exe"

実行結果

File: C:\temp\sample.exe
Index  Algorithm  Timestamp
========================================
0      sha256     RFC3161

Successfully verified: C:\temp\sample.exe

ポイント

【Windows】【CrystalDiskInfo】回復不可能セクタ数が増えたらディスクが危険な状態になっているので急いでバックアップすること

2014年から利用していたPCの動きが昨年から遅くなった。この時点で新しいPCを購入したが、古いPCも作成したソフトの動作テストなどのために残しておいた。

久しぶりに立ち上げたところ、動作が極端に遅くなっていた。そのため、ハードディスクの状態を疑い、CrystalDiskInfoで確認したところ、回復不可能セクタ数の生の値が0x248になっていることを確認した。

もうメインで利用していないPCなので必要なデータはなかったが、スキャンディスクを試してみたところ、更に回復不可能セクタ数が増加していった。
改めて必要なデータがないことを確認し、PCを再起動してみたところ、二度と起動しなくなった。

なので、以前に比べて動作が遅くなった場合は、外付けのハードディスクなどにデータをバックアップすることと、回復不可能セクタの生の値が1以上であれば早急に利用を止めることをお勧めしたい。特に、再起動する直前は極端に遅くなり、Windowsエクスプローラーを表示するだけで数分かかるようになったので、問題が発覚した時点では、バックアップも難しくなる可能性が高い。

問題が見つかった場合は、スキャンディスクをかけずに、別のハードディスクにコピーする。コピーが終わるまでは再起動しない方がよさそう。

以下は実際の値。


【ReactOS】Windows互換OSをVMWareにインストールする

結論

2022/4/27時点(ReactOS v0.4.14)では、実用的に利用可能なレベルではない。
試しにchromeをインストールしている最中にブルースクリーンになり、以降OSが起動しなくなった(ReactOSがWindows Server2003との互換を目指しているようなので、最新のソフトを使おうとしている方が間違いかもしれない)

ポイント

  • 仮想マシン作成時に、バージョンで「Windows XP Professional」を指定する。
    (最初、Windows Server 2019を選択したところ、インストール用のISOイメージをマウントしているにもかかわらず認識されなかった)
  • 言語は日本語にしてもおおむね大丈夫そう。
    ただし、インストール完了後、コマンドプロンプトを開くと文字化けする。
  • 言語以外は、すべてデフォルトのままEnterキーを連打していけばインストールが終わる。
  • ソフトのインストールは、デスクトップにある「アプリケーションマネージャ」からインストールできる。ただし、例えばFireFoxの選択可能なバージョンは48までなど古い。
  • ブラウザは、ファイル名を指定して実行から「iexplore」と指定すると起動する(スタートメニューにショートカットがないのでわかりにくい)
  • 実際に利用している画面はこんな感じ。ソリティアや電卓もある。

今回試した感じでは、付属のアプリは動作するといった感触。
バージョン0.5からベータ版になるようなので、今後の改良に期待しています。

 

【Windows bat】特定のEXEが起動していたら強制終了する

まず、tasklistで該当のEXEが起動しているか確認する。
起動している場合は、taskkillで終了させる(ここではnotepad.exeが起動していたら強制終了させている)。

rem EXEが起動中か確認
tasklist | find "notepad.exe"

if %errorlevel% == 0 (
    rem 起動中の場合は、強制終了させる
    taskkill /im notepad.exe /f
) else (
    rem エラーレベルクリア
    cd > nul
)

尚、該当のEXEが起動していない場合はエラーレベルが1のままになるので、エラーレベルを0で上書きするように、正常終了する適当なコマンド(ここでは「cd > nul」)を実行している。(後続の処理でエラーレベルを見ていなければ記述しなくても大丈夫)

 

【マウスコンピューター】起動時にEFI PXE 0 for IPv4 boot failedエラーが発生する

パソコン起動時に以下のエラーメッセージが表示される(mouse K5 2021年5月購入)
EFI PXE 0 for IPv4(80-FA-XX-XX-XX-XX) boot failed.

OKをクリックすればWindowsが普通に起動するが、毎回止まってしまうのは面倒なので修正を行った。

<修正手順>

  1. パソコンの電源を入れた直後にF2キーを連打する
  2. UEFI(BIOS)画面が表示されるので、「Setup Utility」をクリック
  3. 表示された画面左下の「Boot」をクリック
  4. 「EFI PXE~」が先頭に表示されているので、F5キー、F6キーを利用して「Windows Boot Manager」が先頭に表示されるようにする
  5. 「EFI PXE~」の行は利用しないので、「Enabled」と表示されている部分をドラッグし、「Disabled」に変更する
    設定変更した結果はこんな感じ↓
  6. F10キーを押すと保存される。自動で再起動される。

解決!

ちなみに、この現象(勝手に起動順序が変わってしまう)はこれで2回目。
原因は何だろう…

 

【Windows】Windows8.1からWindows10(21H2)へのバージョンアップに失敗する

普通にバージョンアップを試みたが、「Windows 10 のインストールが失敗しました」のエラーとなりバージョンアップできなかった。

以下の手順で実施すればバージョンアップできた!

  1. 以下のサイトにある「ツールを今すぐダウンロード」をクリック。
    https://www.microsoft.com/ja-jp/software-download/windows10
  2. ダウンロードされた「MediaCreationTool21H2.exe」をダブルクリックして起動
  3. ライセンスに同意し、「実行する操作を選んでください」で、「別のPCのインストールメディアを作成する」にチェックをつける。
  4. 「使用するメディアを選んでください」で、「ISOファイル」にチェックをつける。保存先を聞かれるのでデスクトップに保存する。
    ※ダウンロードされるisoファイルは約4.28GB(2022/3/30時点)
  5. 【重要!】ダウンロードが完了したら、WifiをOFFにする。またはLANケーブルを抜いてインターネットにつながらない状態にする。
  6. ダウンロードされたファイルを右クリックし、「マウント」をクリックする。
  7. エクスプローラが開くので、「setup.exe」をダブルクリックして起動。
  8. あとはそのまま進めていけば、バージョンアップできた!
  9. バージョンアップ後、インターネットに再度繋げて完了。

 

【OneDrive】場所が利用できません 再解析ポイント バッファーにあるタグは無効です。エラーになる

OneDriveと同期している特定のフォルダをクリックすると「再解析ポイント バッファーにあるタグは無効です。」といったエラーメッセージが表示されて、フォルダを開くことができない。

Cドライブをスキャンディスクを実施したところ、修復が必要である旨が表示された。

メッセージに従い、再起動したところ該当のフォルダが表示されるようになった。

OneDriveは挙動が良く分からないので、別の場所にもバックアップしておいた方がよさそう・・・

 

 

【C#】Windowsの環境変数の値を取得する

コマンドプロンプトでsetコマンドを実行した際と同じ値をC#で取得する場合のコードは以下の通り(実際に試して値が一致したことを確認した)

echo %APPDATA% と同じ結果

Console.WriteLine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData));

取得される値:C:¥Users¥(ユーザー名)¥AppData¥Roaming

echo %LOCALAPPDATA% と同じ結果

Console.WriteLine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData));

取得される値:C:¥Users¥(ユーザー名)¥AppData¥Local

echo %USERPROFILE% または echo %HOMEDRIVE%%HOMEPATH% と同じ結果

Console.WriteLine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile));

取得される値:C:¥Users¥(ユーザー名) 

 

【Windows Bat】特定のページを指定したブラウザで開く

それぞれのEXEとURLを指定し、startコマンドで実行してあげればOK

echo Chromeで開く
start "" "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" https://www.google.com/

echo Edgeで開く
start "" "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" https://www.google.com/

echo Internet Explorerで開く
start "" "C:\Program Files\Internet Explorer\iexplore.exe" https://www.google.com/

【Windows Bat】プログラムを強制終了させる

次のnotepad.exeの部分を書き換える

taskkill /im notepad.exe /f

実行すると強制終了したプログラムのプロセスIDも含めて表示される(以下の例は2つ起動中であった場合に両方とも終了された例)

成功: プロセス "notepad.exe" (PID 15660) は強制終了されました。
成功: プロセス "notepad.exe" (PID 5492) は強制終了されました。

なお、該当するプログラムが起動中でない場合は「エラー: プロセス “notepad.exe” が見つかりませんでした。」といった文字が返る

 

参考

【Windows Bat】プログラムの起動時間とプロセスIDを取得する