Mazn.net

やってみて 調べてみて 苦労しなけりゃ 箱は動かじ

windows

Windows Terminalのマウスでの選択文字列をカスタマイズ@Windows 11

コマンドプロンプトやPowerShellを使用する際に開くWindows Terminalは、単語をマウスでダブルクリックした際に自動で認識する区切り文字は、JSON設定ファイルの 「wordDelimiters」で設定されており、デフォルトで

"wordDelimiters": " \\()\"'.,:;<>~!@#$%^&*|+=[]{}~?\u2502"

が設定されています。
※バックスラッシュとダブルクォーテーションはエスケープされていることに注意

つまり、ターミナル上の”hoge.exe”のhoge部分をダブルクリックすると、hogeが自動で選択されます。そのため、拡張子のあるファイルを簡単に選択できません。そのため、これを公式ドキュメントを参考に Linux などで使用される xterm のデフォルト区切り文字 「 “$'()*;<>[\]^{|}」に変更してみます。

"wordDelimiters": "\"$'()*;<>[\\]^{|}"

※バックスラッシュとダブルクォーテーションはエスケープされていることに注意

設定を変更後、Windows Terminalを再起動すると、無事ダブルクリックで”hoge.exe”全体を選択できるようになりました。

参考 : 単語の区切り文字

WSLHostPatcherでWSL2上のサーバに外部からアクセスさせる

WSL2上で何かサーバーを起動すると、自動でWindows側からはlocalhostからアクセスできるようにポートフォワーディングが設定されます。しかし、設定対象がlocalhostなのでWindowsの外部からアクセスできません。

そこで、ネット上はいくつかの方法が紹介されています。

これらの方法は手間がかかったり、デメリットがあったりと一長一短です。

そこで、今回紹介する方法はWSLHostPatcherというツールです。

WSL2のlocalhost宛の通信を自動でポートフォワーディングするデフォルトの機能は、Windows上で動いているwslhost.exeプロセスで実現されています。本ツールはこのプロセスの動作をいじって(フックして)、localhost以外のIP宛の通信も自動でポートフォワーディングします。

使い方はすごく簡単です。https://github.com/CzBiX/WSLHostPatcher/releasesからWSLHostPatcher.zipをダウンロードし、中に入っているWSLHostPatcher.exeを実行するだけです。

実行後、WSL2上で起動したサーバは自動でポートフォワーディング設定され、Windows外部からもアクセスできるようになります。なお初めて使う場合は、Windows側でアラートが出るので許可する必要があります。
※ 実行前から起動しているサーバは自動で設定されません。サーバを再起動してください。

なお、このツールはWSL2を停止すると機能が無効になります。そのため、WSL2を再起動したりする場合は再度実行してあげてください。

また、もちろんですがWindows外からアクセスされるようになるため、セキュリティにはご注意ください。


休止状態やハイバネート後のキーボード入力が遅い@Windows10

Windows10を使ってるのですが、休止状態から復帰するとなぜかキーボードのリピートがデフォルト値に戻って遅くなってしまう現象に悩まされていましたので、解決方法を調べてみました。

  1. レジストリをいじる方法

レジストリエディタで、「HKEY_CURRENT_USER\Control Panel\Accessibility\Keyboard Response」の値を以下のように変更し、Windowsを再起動する。

AutoRepeatDelay:500(初期値は 1000) AutoRepeatRate:16(初期値は500) DelayBeforeAcceptance:0(初期値は1000) Flags:59(初期値 122 )

  1. コマンドで修正する

コントロールパネルでキーボード設定を開いて、OKを押すだけで元の設定に戻るのですが、この方法は面倒なので、以下のコマンドを実行するバッチファイルを作って、症状発生時に実行する方法でもよいと思います。

mode con rate=32 delay=0

IEのproxy.pac@Windows 7

IE11 から、どうもローカルにあるProxy.pacが読み込まれてないように思って調べてみたら、案の定、デフォルトでは読み込まれない仕様に変わったようです。

従来通り読み込みたい場合は、レジストリエディタで

キー:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings

を開き

値:EnableLegacyAutoProxyFeatures 種類:REG_DWORD データ:1

を作りましょう

リモートデスクトップのWindows10のシャットダウン

デスクトップ画面でAlt + F4 を押すと、シャットダウンメニューが出てきます。以上!

Windows 10の強制アップデート・再起動を無効にする

Windows 10 Proでは、Windowsが強制的にアップデートされ、ほったらかしていると再起動されるため、かなり不便です。そこで、これを無効にし、Windows 7の時のように、手動でダウンロードする方法の紹介です。

まずは、グループポリシーエディター画面を開きます。開き方がわからない場合は、Ctrl + x を押して、「ファイル名を指定して実行」を選択し、gpedit.msc と入力すれば起動できます。

そこから、ローカルコンピューターポリシー → 管理用テンプレート → Windowsコンポーネント → Windows Update をたどります。

「自動更新を構成する」をダブルクリックし、下記画面のように設定します。今回は、ダウンロードも手動にしたいので、「2. ダウンロードとインストールを通知」を設定しました。

auto-update

このように設定することで、Windows Update の画面はこのようにダウンロードボタンが表示されるようになります。

win-update-download

ちなみに、アップデート後の再起動を強制されたくない場合は、同じく、ローカルコンピューターポリシー → 管理用テンプレート → Windowsコンポーネント → Windows Update  にある、「スケジュールされた時刻に常に自動的に再起動する」を無効にしておけばOKだと思います。

Windows 10 のストアアプリが起動しない

Windows 10のストアが起動しなくなってしまったので、その時実施した対処方法を紹介します。

ストア起動時にクラッシュしているようで、WindowsにイベントビューアーのWindowsログには、以下のエラーが出力されていることを確認しました。

障害が発生しているアプリケーション名: WinStore.Mobile.exe、バージョン: 2015.7.22.2、タイム スタンプ: 0x55b03689
障害が発生しているモジュール名: twinapi.appcore.dll、バージョン: 10.0.10240.16397、タイム スタンプ: 0x55af1390
例外コード: 0xc000027b
障害オフセット: 0x000000000006687f
障害が発生しているプロセス ID: 0x14dc
障害が発生しているアプリケーションの開始時刻: 0x01d0cc42dfc73c06
障害が発生しているアプリケーション パス: C:\Program Files\WindowsApps\Microsoft.WindowsStore_2015.7.22.0_x64__8wekyb3d8bbwe\WinStore.Mobile.exe
障害が発生しているモジュール パス: C:\WINDOWS\SYSTEM32\twinapi.appcore.dll
レポート ID: XXXXXXXXXXXXXXXXXX
障害が発生しているパッケージの完全な名前: Microsoft.WindowsStore_2015.7.22.0_x64__8wekyb3d8bbwe
障害が発生しているパッケージに関連するアプリケーション ID: App

 

回復方法ですが、クラッシュした時は、ストアアプリのキャッシュが壊れている(?) ことが多いようで、以下のフォルダを開きます。※ユーザ名は自分のログインユーザ名です

C:\Users\ユーザ名\AppData\Local\Packages\Microsoft.WindowsStore_8wekyb3d8bbwe\LocalCache

※ ストアアプリのバージョンが異なると、微妙に、フォルダ名(特に8wekyb3d8bbweの部分)は異なるかもしれません。

このLocalCacheフォルダの下のファイルを全て削除し、ストアを起動し直すと無事起動しました。

参考 : Windows 10 Store crashes in Build 10240

Windows 10のインストールイメージ(ISO)をダウンロード

Windows 10 のインストールメディア(ISO)のダウンロードツールが公開されたので、ISOファイルをダウンロードしてみました。

ツールは32bit版、64bit版がありますが、これはダウンロードするISOファイルの種類を意味するのではなく、ツールを実行するWindowsのプラットフォームを意味します。よって、今実行しているWindowsが64bit版なら、64bit版ツールをダウンロードしましょう。

win10-iso-tool

ツールを実行すると、このような画面が表示されます。ISOをダウンロードする場合は、"他のPC用にインストールメディアを作る" を選択します。

win10-iso-1

言語、アーキテクチャ、エディションの選択画面になります。エディションは、アップデート対象がWindows 7や8.1 Home Editionなら、Homeを、Windows7, 8.1 Professional や Windows 7 Ultimateなら、Pro を選択します。

アーキテクチャは、32bit, 64bitの他に、なんと"両方"というのがあります。手持ちのPCにHomeやProfesional, UltimateのPCが混在し、これらを全てアップデートするなら、"両方"を選択すると良いと思います。

win10-iso-2

今回は、両方を選択してみたところ、5.62GBのISOファイルがダウンロードされました。このサイズだと1層のDVDメディアには焼けないので、注意が必要ですね。ちなみに、32bit または 64bit どちらかを選択すれば、4GB程度のようなので、1層DVDメディアに焼くことができます。

Windows 10のスタートメニュー整理

Windows 7では、スタートメニューのフォルダを右クリックしてフォルダを開くと、スタートメニューを手動で整理することができましたが、Windows 10では右クリックでフォルダを開くことができません。で、どこにあるか探してみたら、個人ユーザのスタートメニューはここにありました。

C:\Users\ユーザ名\AppData\Roaming\Microsoft\Windows\Start Menu

 

全ユーザ共通のスタートメニューはここにありました。

C:\ProgramData\Microsoft\Windows\Start Menu\Programs

 

なお、ストアからインストールされたプログラムは別管理のため、上記フォルダにもショートカットはありません。

次に、プログラムのショートカットを手動でスタートメニューに追加してみます。ここでは、例として、SSHクライアントのTeraTermのプログラムへのショートカットを置いてみました。

start-shortcut

想定通り、スタートメニューに置いたショートカットが表示されます。

start-menu1

しかし、ここで問題発生。ショートカットのファイル名を変更してもなぜかスタートメニュー反映されません・・・ どこかでファイル名がキャッシュされてるのでしょうか。仕方がないので、一旦エクスプローラーをタスクマネージャーから強制的に再起動(Windows再起動でもOK)してみたら、反映されました。

 

 

二本指でのスクロールの向きを逆にする@Windows8

Windows8 のタッチパッドは二本指でスクロールが可能ですが、タッチスクリーンのスクロールと方向を合わせているのか、デフォルトでは指を上に動かすと、画面は下にスクロールします。これにどうしても慣れないので、Macのように指を上に動かした場合は画面を上にスクロールするように逆向きに設定する方法の紹介です。

方法は、レジストリを変更します。

  1. コマンドプロンプトやスタート画面等から「Regedit」と入力してレジストリエディタを起動します。
  2. [HKEY_LOCAL_MACHINE] [SYSTEM] [CurrentControlSet] [Enum] [HID]の順に展開します。
  3. VIDから始まる項目が複数表示されるので、すべて展開して中に含まれる[Device Parameters] を探します。
  4. それぞれの[Device Parameters]をクリックし、右側に[FlipFlopHScroll]と[FlipFlopWheel]が表示されるものを探し、ダブルクリックで値を0から1に書き換えます。なお、私の環境では、3つありました。

== 追記 ==

これを設定すると、ピンチやズームのジェスチャーも逆になってしまいました。これはこれで使いにくいですが、解決方法はわからず。

Windows7 - 非ページ プール割り当ての制限に達したため、サーバーはシステムの非ページ プールから割り当てることができませんでした

Windows7 でファイルの共有(ファイルサーバー)をしていると以下のエラーがイベントログに大量に出力されていました。

非ページ プール割り当ての制限に達したため、サーバーはシステムの非ページ プールから割り当てることができませんでした。

どうやら原因はこれのようです。http://support.microsoft.com/kb/937082

 

とりあえずレジストリをいじって対処しました。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters\ IRPStackSize -> DWord値を設定して、10進値50を設定

MaxMpxCt -> DWord値を設定して、10進値255を設定。

MaxWorkItems -> DWord値を設定して、1024に設定

Size -> 3に設定

Sizeの意味は以下の通りです。

1 に設定すると、Windows Vista がローカル アプリケーション用に最適化されます。 2 に設定すると、ローカル アプリケーションとリモート アプリケーションの間でリソースの使用が配分されます。 3 に設定すると、Windows Vista がネットワークの処理用に最適化されます。

登録された単語が削除できない@ATOK 2009

間違ってATOK単語登録したのに、ATOK 2009 の辞書ユーティリティで単語が削除できず困ってしまいました。

原因は『オンメモリ』のようです。

ATOKのプロパティで、辞書・学習で、『オンメモリ辞書』にチェックが入っていると、削除や編集ができないようです。なんとなく速そうだからチェックしたのが災いしました。

チェックをはずすと、再起動を求められますが、再起動後削除できるようになりました。

ログイン画面の壁紙変更@Windows 7

C:\Windows\System32\oobe\info\backgrounds に backgroundDefault.jpg というファイルを置けばOK.サイズは256KBまで。

ただし、デフォルトだとこのフォルダはシステムフォルダなのでアクセスできない可能性があります。権限を奪取するにはコマンドプロンプトを右クリックで管理者として実行し、以下のようにコマンドプロンプトで操作したらいける模様。

> takeown /f C:\Windows\System32\oobe\info\backgrounds

> cacls C:\Windows\System32\oobe\info\backgrounds /G mazn:F

さらに、 フォルダに TrustedInstallerというユーザの権限がついているので削除すれば、バッチファイルとかでも操作できました。

Windows 7 ファイルサーバにアクセスできない@Windows 7 Ultimate

Windows 7 をファイルサーバにしているのですが、ファイルアクセスが高負荷になると急にアクセスできなくなってしまう現象が多発します。

イベントログを見ると

非ページ プール割り当ての制限に達したため、サーバーはシステムの非ページ プールから割り当てることができませんでした

というエラーが出ています。

調べてみると、以下にあるようにWindows 7 はクライアントOSなので、サーバ用に最適化されていないようです。

http://support.microsoft.com/kb/937082

ということで、レジストリを以下のように編集して再起動して様子見です。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters\
         MaxWorkItems = 1024 (DWORD)
         MaxMpxCt = 255 (DWORD)
         Size = 2 (DWORD)

== 2011/2/15 追記 ==

だめでした。以下のようにさらにレジストリいじってみました。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\LargeSystemCache
の値を1にする
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\Size
の値3にする

スピーカーのアイコンに×がつく@Windows 7

Windows 7を起動すると、音声は問題なく出ているのに、タスクトレイにあるスピーカーのアイコンに×がつくことがあります。

これは起動時にハードディスクアクセスが重いのと、Windowsオーディオサービスが起動した後に状態がリフレッシュされないのが原因のようで、マイクロソフトのウェブページにも記述がありました。

http://support.microsoft.com/kb/2011656/en-us?fr=1

単なる表示だけの問題のようで、動作に問題はないようです。ボリュームを操作したりすると状態がリフレッシュされて×も消えます。

画面の外に行ってしまったウィンドウを移動する@Windows 7

Windows XPの場合、ウィンドウが画面外に行ってしまって移動できない場合、タスクバーのタスクを右クリックして、メニューから"移動"を選択することで、キーボードで移動することができます。

しかし、Windows 7の場合は、タスクを右クリックしても"移動"が出てきません。これで途方にくれている人もいかと想いますが、実はShiftを押しながら右クリックすることで、Windows XPと同じようなメニューを表示させることができます。これで、キーボードで移動が可能になります。

タスクトレイに音量のアイコンが表示されない@Windows 7 64bit

Windowsのタスクトレイに音量のアイコンが表示されない事象が頻繁に発生していたので、調べてみたところ既知の問題として解決方法が掲載されていました。

 コンピューターを再起動するまで、Windows Vista または Windows 7 の通知領域にシステム アイコンが表示されない

レジストリを直接いじってもできるようですが、上記ページで公式にツールが提供されているので、これを使ってみたところ、再起動を求められ、再起動後無事表示されましたが、そもそも再起動すると表示されたり、されなかったりするので、本当に解決されたのかどうかはわからないため、少し様子見状態です。

このブログについて
プライバシーポリシー・お問い合わせ等
購読する(RSS)
記事検索
アーカイブ
カテゴリー
  • ライブドアブログ