今日もガクリ('A`)
きっと明日もまたガクリ?('A`)
2024 / 11
« «  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 
当サイト ドメイン 変更のお知らせ | NOTICE: Domain change announcement

当サイト(ブログ含む) のドメインを変更しました。2019/02 までは自動転送されますが、それ以降は旧ドメインではアクセスできなくなります

本ブログの新アドレスは blog.alphaziel.info となります

2018/08/28(火) 追記

DNS 逆引きでホスト名が不明な IP ドレスはアクセス拒否するよう設定致しました。該当する方は DNS サーバー設定確認をお願いします。そもそも、既にこのページ自体が見れないから、この告知は意味を成しませんね (・ω<) てへぺろ


I changed the domain of this site (including blog). Until 2019/02 will be forwarded automatically, but after that it will be inaccessible in the old domain

The new address of this blog will be blog.alphaziel.info

2018/08/28 (Tue) Additional NOTICE

We decided to deny IP dress whose host name is unknown by DNS reverse lookup. Please check the DNS server setting if applicable. In the first place, since this page itself can not be seen already, this announcement does not make sense (· ω <) Tohpeiro

Windows 電源オプション をコマンドスクリプトで一括設定

Windows の統合インストール USB メモリの作成やクリーンインストールの度に GUI で電源オプションの各電源プランの設定を行うのは面倒なので、一括設定を行う Windows コマンドスクリプト(PowerCfgSet.cmd) を作りました

使用する際にはなるべく、ディスプレイドライバーをインストール後に実行する事です。斜体の部分を変更する事によって、個別設定の値を設定して使用してください

PCパーツの中で数少ない駆動機構を持つハードディスク(HDD) の電源を On/Off するのは百害あって一利無し1 なので、全ての電源プランにおいてハードディスクの電源は落とさない様にしています

@Echo Off

POWERCFG -GETACTIVESCHEME > %TEMP%¥powercfg.active.txt

POWERCFG -LIST | FIND "電源設定の" > %TEMP%¥powercfg.list.txt

FOR /F "tokens=1,2,3,4* delims=: " %%A in (%TEMP%¥powercfg.list.txt) DO (
  Echo %%A %%B %%C %%D

  POWERCFG -SETACTIVE %%C

  If "%%D" == "(省電力)" (
    POWERCFG -CHANGE -monitor-timeout-ac 15
    POWERCFG -CHANGE -monitor-timeout-dc 15
  ) ELSE 
    POWERCFG -CHANGE -monitor-timeout-ac 0
    POWERCFG -CHANGE -monitor-timeout-dc 0
  )
  POWERCFG -CHANGE -disk-timeout-ac 0
  POWERCFG -CHANGE -disk-timeout-dc 0
  POWERCFG -CHANGE -standby-timeout-ac 0
  POWERCFG -CHANGE -standby-timeout-dc 0
  POWERCFG -CHANGE -hibernate-timeout-ac 0
  POWERCFG -CHANGE -hibernate-timeout-dc 0
)

FOR /F "tokens=1,2,3,4* delims=: " %%A in (%TEMP%¥powercfg.active.txt) DO POWERCFG -SETACTIVE %%C

Erase %TEMP%¥powercfg.active.txt
Erase %TEMP%¥powercfg.list.txt

  1. 自動車に例えるなら 1000km の道程を 10km 毎にエンジンを止めて停止→再び発進するのと、一定の速度でノンストップで走る場合、どちらが機械にストレスを与えているかは明白でしょう
Customize, software, Windowsno commentsno trackbacks(2,763)
Windows イベントビューアー エラー/警告 トラブルシューティング Microsoft-Windows-Kernel-EventTracing ID:3 ID:4

詳しい原因は不明ですが、ReadyBoost 関連の下記に示すエラーと警告が発生していたので、その対策です

ログの名前: Microsoft-Windows-Kernel-EventTracing/Admin
ソース: Microsoft-Windows-Kernel-EventTracing
日付: YYYY/MM/DD (w) HH:MM:SS
イベント ID: 3
タスクのカテゴリ: セッション
レベル: エラー
キーワード: セッション
ユーザー: SYSTEM
コンピューター: test
説明:
セッション "ReadyBoot" が次のエラーで停止しました: 0xC0000188
ログの名前: Microsoft-Windows-Kernel-EventTracing/Admin
ソース: Microsoft-Windows-Kernel-EventTracing
日付: YYYY/MM/DD (w) HH:MM:SS
イベント ID: 4
タスクのカテゴリ: ログ
レベル: 警告
キーワード: セッション
ユーザー: SYSTEM
コンピューター: test
説明:
セッション "ReadyBoot" の最大ファイル サイズに達しました。このため、イベントがファイル C:¥Windows¥Prefetch¥ReadyBoot¥ReadyBoot.etl に書き込まれない可能性があります。最大ファイル サイズは現在 20971520 バイトに設定されています。

コマンドプロンプトから下記のようにレジストリを修正して対策は終了です

For %A in (ControlSet001 ControlSet002 CurrentControlSet
) Do REG ADD "HKLM¥SYSTEM¥%A¥Control¥WMI¥Autologger¥ReadyBoot" /v "Start" /t "REG_DWORD" /d 0 /f
Event Viewer, PC, software, Trouble Shooting, Windowsno commentsno trackbacks(6,628)
Windows イベントビューアー エラー/警告 トラブルシューティング e1rexpress ID:27

Intel 製のネットワークアダプター I/F カードや Chip を搭載したマザーボードでドライバーをインストールして PC を再起動する度に下記の警告が発生します

ログの名前: System
ソース: e1rexpress
日付: YYYY/MM/DD (w) HH:MM:SS
イベント ID: 27
タスクのカテゴリ: なし
レベル: 警告
キーワード: クラシック
ユーザー: N/A
コンピューター: test
説明:
Intel(R) XXXXXXXXXX Gigabit Network Connection
 ネットワーク・リンクが切断されました。

原因はドライバーがオートネゴシエーション(auto-negotiation) の完了を待たずにリンクチェックを行っている為です。オートネゴシエーションとは簡単に言ってしまえば通信相手との規格を合わせるという仕組みです

解決方法は、WIN + R キーを押下し、%SystemRoot%¥system32¥devmgmt.msc /s と入力フィールドに入力し、Enter キーを押下し、デバイスマネージャーを起動します

デバイス マネージャー
デバイス マネージャー

デバイスカテゴリーの ネットワーク アダプター を展開し、Intel(R) ~ Gigabit Network Connection をダブルクリックします。上記画像では I211 というチップ名称になっています

Intel(R) ~ Gigabit Network Connection
Intel(R) ~ Gigabit Network Connection プロパティ / 詳細設定

上記画像の様に リンクを待機オン に設定し OK を選択し終了です

…ですが、もうデバイスドライバーインストール時に リンクを待機オン の状態でドライバーがインストールされる様にしちゃえばいいんじゃね?と、思い調べてみました

  1. まずは ここ から Intel Gigabit Network Connection のドライバーをダウンロードします

  2. ダウンロードしたファイルの実体は RAR 形式の自己解凍アーカイブファイルなので、RAR 形式のアーカイブファイルを取り扱える解凍ツールで適当な空のディレクトリに解凍します

  3. 次に実際使用しているチップ名称をキーワードにして、解凍したディレクトリに点在する *.inf ファイルを探し当てます(秀丸エディタのgrep機能などを使えば便利です) Chip 型番が I211 の場合は e1r62x64.inf というファイルでした

  4. 文字列 %WaitAutoNegComplete% を検索し、以下 default の部分を "1" に変更します

  5. ; Wait for Link
    HKR, Ndi¥Params¥WaitAutoNegComplete,      ParamDesc, 0, %WaitAutoNegComplete%
    HKR, Ndi¥Params¥WaitAutoNegComplete,      default,   0, "2" ← これを "1" に変更する
    HKR, Ndi¥Params¥WaitAutoNegComplete¥Enum, "0",       0, %Off%
    HKR, Ndi¥Params¥WaitAutoNegComplete¥Enum, "1",       0, %On%
    HKR, Ndi¥Params¥WaitAutoNegComplete¥Enum, "2",       0, %AutoDetect%
    HKR, Ndi¥Params¥WaitAutoNegComplete,      type,      0, "enum"
    
  6. 該当の inf ファイル保存します。保存の際に注意する事は、このファイルは多言語で記述されているので、秀丸エディタ等の文字コードのエンコード/デコードを行うエディターで保存してしまうと正しく保存されないので、バイナリセーフなエディタ、例えば メモ帳 で編集、保存(ANSIで) する事を推奨します

  7. デバイスドライバーをインストール時に変更した inf ファイルを指定してインストールを行えば、いいと思います…と、言うのもこの方法はまだ試していません …ので、次回 Windows 7 統合インストール USB メモリ作成の際に試してみたいと思います

inf ファイルのデフォルト値を PHP スクリプトで一括置換する

まだ、現時点で試していませんが *.inf ファイルを一括置換する PHP スクリプトを作りました。変更する値のプロパティ以下の4箇所です

  1. ジャンボ パケット を 1514 から 9014 に変更
  2. リンクを待機 を 自動 から オン に変更
  3. 受信バッファ を 256 から 2048 に変更
  4. 送信バッファ を 512 から 2048 に変更

ドライバー書庫を解凍したディレクトリに infdeault.php を置き、実行するだけです

inf ファイルのデフォルト値を編集して WinToolkit で統合インストールする方法は駄目でした

  • WinToolkit で統合インストールを行うと、何故か元のデフォルト値の状態でドライバーがインストールされる
  • 上記編集済み inf ファイルを使用して手動でインストールを試みるとセキュリティ警告のメッセージウィンドウが表示されるが、無視してそのまま続行すると、しっかりとデフォルト値が反映された状態でドライバーがインストールされる

原因は対応しているセキュリティカタログファイル e1r62x64.cat の内容と e1r62x64.inf が矛盾している為、セキュリティ警告のメッセージウィンドウが表示されます…しかし、何故か WinToolkit の統合インストールイメージ作成ではエラーが発生せず、編集前のデフォルト値でインストールされるのが不思議です…('A`)

以上の事から、自動化は断念し、インストール時にデバイスマネージャーから手動で設定する事にしました。上記 PHP スクリプト を使用してインストール場合は 自己責任 でお願いします…('A`)

2018/08/17 追記: inf ファイルのデフォルト値を編集して WinToolkit で統合インストールする方法

WinToolkit の統合インストールで編集した inf ファイルの値を反映させる方法がわかりました。これは実際に動作確認済みです。後述する方法は 自己責任 でお願いします

WinTookit を起動し、All-In-One-Integrator を選択し、統合するエディションを選択、プリセットをロードし、以下の画像の All-In-One-IntegratorOptionsForce Unsigned をチェックして、統合を行えばいいだけです

WinToolkit | All-In-One-Integrator | Options
WinToolkit | All-In-One-Integrator | Options

ついでに infdeault.php もちょっとバージョンアップしました。オリジナルの inf ファイルはファイル名サフィックス部分に .org を付与し、実際に inf ファイルがあるディレクトリのファイルを更新するように変更しました

Event Viewer, PC, software, Trouble Shooting, Windowsno commentsno trackbacks(22,501)
Windows イベントビューアー エラー/警告 トラブルシューティング Microsoft-Windows-Kernel-PnP ID:219

NTFS フォーマットを施した USB メモリーを差し込んだまま Windows 7 を起動したりすると、以下の様な警告がイベント ビューアーに記録される

ログの名前: System
ソース:  Microsoft-Windows-Kernel-PnP
日付: YYYY/MM/DD (w) HH:MM:SS
イベント ID: 219
タスクのカテゴリ: (212)
レベル: 警告
キーワード:
ユーザー: SYSTEM
コンピューター: test
説明:
デバイス WpdBusEnumRoot¥UMB¥2&37c186b&0&STORAGE#VOLUME#_??_USBSTOR#DISK&VEN_TOSHIBA&PROD_TRANSMEMORY-MX&REV_PMAP#A14593E4A599ED7090000F31&0# のドライバー ¥Driver¥WUDFRd を読み込めませんでした。

上記の警告が発生する原因として考えられるのは、WDF のフレームワークが入っている状態で発生すると思われます

WDF のフレームワーク の実体は Windows 7 では何かと言うと…

以上の2つだと思われます。って言うか…思いっきりコレが原因ですな

対策は下記スクリーンショットの様に サービスの Windows Driver Foundation - User-mode Driver Framework を手動から自動に変更するだけです

WDF サービス
WDF サービス
WDF サービス 設定
WDF サービス 設定

以上で、イベントビューアーに警告は出なくなります

Event Viewer, PC, software, Trouble Shooting, Windowscomment(1)no trackbacks(7,014)
WordPress の余計なフィルター/アクションを除去する

久しぶりに本ブログを更新して、ふと UAFirefox Quantum でアクセスし、CTRL + UHTML ソースを見たら、何じゃこりゃ~!? とヘッダー部分に余計な汚らしい JavaScript が入っているではないか!

WordPress の余計な仕業
WordPress の余計な仕業

上記画像の水色で囲っている部分が WordPress が行っている余計な仕業です。で、最も簡単な解決方法は WordPress をインストールしているディレクトリにある wp-includes/default-filters.php を以下の行を見つけコメントアウトしてしまう事です

add_action( 'wp_head',             'rest_output_link_wp_head', 10, 0 );
add_action( 'wp_head',             'wp_resource_hints',               2     );
add_action( 'wp_head',             'print_emoji_detection_script',     7    );
add_action( 'wp_print_styles',     'print_emoji_styles'                     );

しかし、私の場合は WordPress 自体がバージョンアップする度にサーバー上に全上書きしているので、この方法だとバージョンアップの際にこの修正を忘れてしまうというヒューマンエラーを起こしてしまいます

そこで、WordPress 関数 remove_action を使います。変更対象はテンプレートの header.php を以下の様に wp_head 関数をコールされる前に記述しておきます。本ブログのテンプレートは自前で作成した物なので、WordPress バージョンアップ際にはテンプレートは更新対象外なので影響はありません

<?php
/* 2018/08/06 ヘッダーに余計なゴミ JavaScript 等を除去する */
remove_action( 'wp_head', 'rest_output_link_wp_head', 10 );
remove_action( 'wp_head', 'wp_resource_hints', 2 );
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'wp_print_styles', 'print_emoji_styles' );

wp_head();
?>

以上の変更を施し、サーバーにアップロードを行い、UA でリロード、ソースを見ると、下記画像の様にすっきりしました

WordPress の余計な仕業を除去してスッキリした HTML ヘッダー
WordPress の余計な仕業を除去してスッキリした HTML ヘッダー
blog, HTML, JavaScript, PHP, WordPressno commentsno trackbacks(1,089)
contents
most viewed (1212786)
categories
archives
recent posts
recent updates
recent comments
recent trackbacks
912T ASUSTeK ASUSTeK Crosshair IV Extreme blog CSS DARK SOULS DARK SOULS 3 Darksouls3 DarksoulsIII DARK SOULS III DISM Euro Truck Simulator 2 Everquest II firefox foobar2000 game Install internet KB2990941 KB3087873 mod panels ui PCゲーム PHP PX-Q3PE Raid skin SoftBank software SpeedFan Spinel Steam TPS trailer truck TvRock TVTest Windows Windows 7 Win Toolkit WordPress インストール ダークソウルズ 初音ミク 窓辺ななみ
mobile
qrcode:home
profile
曇り札幌市中央区 ‘ 曇り
気温: 10℃ ‘ 湿度: 66%
recommends
Valid XHTML 1.0 Transitional Valid CSS X.X
RSS 2.0 RSS 0.92
RDF/RSS ATOM
get Firefox 2 get Opera
ie