Windows 7以降にオフライン環境で.NET Framework 3.5をインストールする

Windows 7移行のOSに.NET Framework 3.5をインストールする場合など、コントロールパネルの「Windowsの機能の有効化または無効化」にて機能の追加をする場合、最新のモジュールを試みるために、インターネット接続に制限のある環境ではエラーとなる。

この場合にはコマンドラインからDISMコマンドを実行して、インストールメディアからインストールする事で回避できる。例えばWindwos 7上で.NET Framework 3.5をインストールする場合には、下記のコマンドを実行する。(D:はインストールメディアのあるドライブ)

DISM /Online /Enable-Feature /FeatureName:NetFx3 /Source:D:\sources\sxs\

参考:Deploy .NET Framework 3.5 by using Deployment Image Servicing and Management (DISM)

低スペックPCを使わせる事の損失・・・

「4年前のPC利用は約35万円の損失」――マイクロソフト「最新PC買った方が得」

古いPC もそうだが、10万円程度の安いPCを買い与えるのも問題で、低スペックなパソコンを従業員に使わせることによる損失というのはすごく大きい。

実際「自宅ならすぐに終わる仕事なのに、会社だとスペックの不足で仕事にならない・・・」等という話をしばしば耳にする。

15万円のPC(Intel Core i5、SSD 125GB、メモリ8GB、モニタ24インチ)を与えれば良いところ、5万円節約して10万円のPC(Intel Celeron、HDD 500GB、メモリ4GB、モニタ17インチ)を使わせる。その結果、例えばファイルを開くのに30秒余計な時間がかかる。

正社員の場合には年収400万円程度でも、間接人件費も含むと時給2,500円程度は支払っている。10秒の人件費に7円。ファイルを開くのに30秒余計に待たせれば20円、一日に20回ファイルを開くな400円、営業日数240日で96,000円になる。5万円の経費節約のために、年間96,000円の無駄なコストを負担し続けている。

もちろん、無闇に高性能なパソコンを買い与える必要は無いが、職務に合わせて最低必要なスペックは考えて与えなくてはならない。

PS1・・・同じ事はインターネット接続でも言える。

PS2・・・参考までに私が見積もるなら、こんな感じ。
CPUを1ランク落としてでも、メモリとSSDを購入した方が、体感速度は早い。
メモリはデュアルチャンネルが有効になるように、必ず2枚となる構成にする。よくよくカタログを見ると8GB x 1枚となっている事があるので注意。デュアルチャンネル有無で20%程度は体感速度が異なる。

事務職・・・15万円前後
CPU:Intel i5
メモリ:8GB
ストレージ:SSD 128GB
モニタ:24インチ(設置スペースがあるならデュアルモニター)

技術職・・・30万円前後
CPU:Intel i5 又は i7
メモリ:16~32GB
ストレージ:SSD 256GB(容量不足時にはHDDを追加)
モニタ:27インチ(設置スペースがあるならデュアルモニター、2台目は24インチでも可)
GPU:そこそこのものを、機械学習とかするなら高スペックのものを。

MozillaやThunderbirdもGroupPolicyで設定出来るらしい(覚え書き)

MozillaやThunderbirdもGroupPolicyで設定を制御できると聞いて色々と調べてたのだけど、事前にPluginをインストールしておく必要があると知って挫折。対象となるPCはそれほど多くないはずだけど、いまからPCに設定して歩くというのは、ちょっと非現実的にて。

ただ無償で使えるMUAの選択肢はそれほど多くなく、もしかしたらThunderbirdを展開する流れもあり得なくはない。機会があったら設定してみようと思う。

参考:https://addons.mozilla.org/ja/thunderbird/addon/gpo-support-for-firefox-and-th/

破損してマウントできないHDDからデータを復元する

起動中にブルースクリーン(UNMOUNTABLE_BOOL_VOLUME)になってしまうパソコンからのデータ救出。起動途中でブートパーティションを認識できなくなるために、エラーとなってしまいます。
試しに他のパソコンにHDDを接続して、CrystalDiskInfoで確認するとHDDで脱落セクタが発生しています。HDD内のパーティションは認識しているのですが、重要なセクタが保存不可能な状態になってしまったようで、ファイルシステムとして認識できずマウントできない状態になっています。
HDD復旧サービスを頼むと10万前後の支出になりますが、そこまで重要なデータが入って居る分けでもありません。HDDを認識しない(基盤故障など)、ディスクが回転しない(モーター故障)なんかの場合には個人では手も足も出ませんが、今回は認識しているし一部にはアクセス出来ています。そこで、個人で手が届く範囲で復仇作業を実施してみます。

何らかの方法で別のPCに接続

今回はHDDをUSBに接続するアダプタを使用。容量が大きいのでUSB3.0に対応している物を持っていると便利ですが、無ければ内蔵HDDとしてSATAに接続してしまうのがよい。

HDDのRAWデータを複製する

まずは物理HDDからRAWデータを読み出します。ここではHDDRawCopyと言うツールを使いました。このツールは破損領域があっても、CRCエラーを出力しながら読み込める範囲でRAWデータを複製してくれます。

HDDRawCopyPortableを起動して変換するHDDを選びます。HDDを選んだらContinueで進みます。

次に出力先としてFileを選びます。Fileをダブルクリックするとダイアログが開くのでファイル名を入力してください。ファイル液式はimgcではなく、imgを選択してください。出力先を決めたらContinueで進めます。

設定の確認画面になります。内容に間違いが無ければStartをクリックしてください。HDDのRAWデータがファイルに変換されていきます。エラーの状況が酷い場合には、変換にはそれなりに時間がかかります。数日単位になる場合も考えられますので、気長に待ってください。

RAWデータを仮想HDDに変換する

RAWデータのままではWindowsで扱うことが出来ません。Windowsでマウントできる仮想HDD形式である、vhd形式に変換します。
ここではqemu-img for Windowsを使いました。qemu-img.exeはqemuと言う仮想マシンに付属するディスクイメージのメンテナンスツールです。qemu-img.exe単体でもダウンロード出来ます。

qemu-imgをダウンロードして適当なフィルダに展開します。
展開したフォルダに移動して以下のコマンドを実行します。

qemu-img.exe convert -O vpc RawDiskImage.img RawDiskImage.vhd

これでvhd形式のファイルに変換されます。

Windowsから仮想HDDをマウント

出来上がった仮想HDDをWindwosでマウントしてしまうと、一部が書き替わってしまいます。作業前の状態に戻して再実行したいときに困るので、最初にvhdファイルを複製しておきましょう。

コントロールパネルの管理ツールから「コンピュータの管理」を起動します。

ツリーから「記憶域」のディスクの管理を選択したあと、「操作」から「VHDの選択」を選んでください。ここで先ほど作られたRawDiskImage.vhdを選択すると、HDDとしてマウントされドライブレターが追加されています。

今回はこの時点で既に読める状態に回復していましたので、chkdskで修復を試みたり、パーティション復元ツールで修復を試みたり、削除ファイル復元ツールで復元を試みたりと言った事は行っていません。必要なら、それらを実施して修復を試みてください。

ちなみにRAID5やRAID6を使っていた場合でも、HDDのRAWイメージを作成した後、ReclaiMe Free RAID recoveryのようなツールを使えば修復できる場合があります。そちらは今のところ試したことが無いけどね。

Windows 7からWindows 10への移行の難しさ

Windows 7からWindows 10への移行を、Windows XPからWindows 7への移行と同じように捉えていると、足下をすくわれる。Windows 10以降ではサポート体制や製品ライフサイクルが大きく見直されており、それに伴って従来のようにOSバージョンを固定にした塩漬け運用が難しくなっている。

Windows 10と、それ以前のMicrosoft製品との大きな違いは、OSの開発体制が移行したことにある。アジャイルデベロップメントとか、エクストリーム・プログラミングとか、継続的インテグレーションとか、ラピッドデベロップメントとか、ITの分野にいるなら聞いたことがあるはずだ。OS自体がアジャイルな開発体制に移行したことにより、Windows 10では、OSの新機能を何年かおきの新製品発売やサービスリリースを待たず、半年ごととのメジャーアップデートで提供する体制になった。

これに伴って大きく変更されたのが、アップデートを適用していないWindows 10に対するサポート提供だ。半年ごとに提供するメジャーアップデートを適用していない場合のサポート期限は18ヶ月と短い。Windows7 SP1の9年と比較しても極端に短い。

従来はOSのバージョンを固定にしたり、特定のサービスパックやWindows Updateの適用を避けることで、Windowsの機能更新にともなって表面化した不具合に対処していた場合がある。10より前は、それでもセキュリティアップデート等は提供され続けるので、OSのバージョンを塩漬けにしても問題なく運用できていたが、Windows 10以降では18ヶ月以内に対策を行うことが最低限もとめられる。

現状、新たにWindows 7を購入して使い続けているなら、相当な危機感を持って欲しい。20万円以上のパソコンの法定耐用年数は4年間、10~20万円以下なら3年間となる。2年以内に廃棄して特別損失を計上することを承知の上で、新たにWindows 7を買い続けているのは異常だ。

Windows 10の発売から既に2年以上経過し、Windows 7のサポート期限も分かっていたはずだ。にもかかわらずWindows 7にバージョンを固定し続けているというのは、Windows 10がメジャーアップデートするスケジュールに追従できるだけの開発能力が既に失われている事を示している。

自社開発していたソフトウェアを、市販のパッケージソフトウェアをそのまま使う形に置き換える事で、自社で開発するソフトウェアの数を減らす。あわせて、社内SE(特に開発寄りの)人材拡充をはかって、自社開発ソフトウェアの継続的保守開発に対応できる情報システム部署として再生をはかったほうがよい。

PS1.
Windows 10 Enterprise LTSC(Long-Term Servicing Channel)と言うランセンスを購入すれば10年間バージョンを固定にしてサポートを受けることが出来ます。一般的なProfessionalに比較して、1ライセンス辺り3万円ほど余計に支出することになりますけど。

PS2.
実はWindows 7 SP1で7年間バージョンを固定できたのは単に運が良かっただけ。もしWindows 7 SP2がリリースされていたなら、次期サービスパックリリースから24ヵ月でSP1はサポート終了していた。

参考:
Windows 7サポート終了まで2年 ユーザーはどうする?
OS にはサポート期限があります!
Windows ライフサイクルのファクト シート
https://internet.watch.impress.co.jp/docs/news/1073028.html

Outlook上で検索してもメールやメールアドレスが見つからない

Outlookの検索機能はWindows OSの提供するファイル検索機能を使用しています。何らかの理由でWindowsの検索用インデックスが破損していたり、あるいはインデックスの収集が行われていないと、Outlookの検索機能も動作しなくなります。

Windowsの検索機能はコントロールパネルの「インデックスのオプション」から設定出来ます。

「インデックスを作成する対象」のリストから「Microsoft Outlook」を選択して「詳細設定」のボタンを押して下さい。ここで「再構築」ボタンを押すと、既存のインデックスデータを破棄して再作成を開始します。

もしインデックスを作成する対象のリストに「Microsoft Outlook」が表示されていないなら「変更」ボタンをクリックして下さい。「インデックスが作成された場所の変更」のリストにチェックを付けると、インデックスを作成する対象としてリストに表示されます。

インデックスデータの再構築には暫く時間がかかります。半日ほど電源を入れたままにして様子を見て下さい。次第にきちんと検索にひっかかるメールの数が増えていくはずです。

Outlookを起動すると「このフォルダのセットを開けません。」と言うエラーになる

Outlookを起動したときに、下図のように「Microsoft Outlookを起動できません。Outlookウィンドウを開けません。このフォルダーのセットを開けません。予期しないエラーが発生しました。」というメッセージが表示されてOutlookが起動しなくなる場合があります。

これはOutlookの既定のpstファイルが壊れたり、あるいは設定中にエラーが発生したことにより既定のpstファイルが設定されていない事が原因でおこります。

コントロールパネルにあるユーザーアカウント→Mail(Microsoft Outlook ~)を開いてください。

すると次の様な画面が表示されるので、データファイルのボタンをクリックします。

次の様な画面が表示されます。既定に設定されているデータファイルが無い場合には、適当なデータファイルを選択して「既定に設定」して下さい。

既定に設定しようとしてもエラーとなる場合には、データファイル自体が壊れています。この場合には修復ツールを用いて、データファイルのエラーを修復します。修復するには「C:\Program Files\Microsoft Office\root\Office16」のフォルダにある、SCANPST.EXEを起動して、データファイルを選択します。

データファイルの大きさにもよりますが、修復には数時間~半日ほどかかります。急ぎ送受信だけでも可能にしたい場合、既存のデータは後日に修復してImportする物と割り切り、新規にデータファイルを作成して既定に設定する方が良いでしょう。

WSUSに追加したWin10でWindowsUpdateがエラー(0x80244019)になる

Windows 2012R2のWSUS環境でクライアントにWindows10を追加し、Windows10でWindowsUpdateを実行するとエラーコード:0x80244019が出て失敗する場合がある。

Windows10移行はUpdateFileの配信にesd形式のファイルを使うように変更されている。WSUSサーバーのIISで、MIME設定にesd形式の拡張子が登録されていないためにダウンロード出来ないのが原因。

IISマネージャーを開き、WSUSの管理にあるMIMEの種類から拡張子.esd、MIMEの種類application/octet-streamを追加する事で解決する。

WSUSに追加したWin10でWindowsUpdateがエラー(0x8024401C)になる

Windows 2012R2のWSUS環境でクライアントにWindows10を追加し、Windows10上でWindowsUpdateをしたところ、にエラーコード:0x8024401Cが出て失敗する場合がある。

サーバー側の状態をタスクマネージャなどで確認すると、Windows10でWindows Updateを実行した直後からCPU負荷が上がったままになっていることが分かる。この場合の原因はWSUSサーバー側の処理に時間がかかり、途中でIISのセッションが切れてしまうことによる。

またWindows10のUpdateファイルは拡張子.esdのファイルで提供されている。初期状態だとMIMEの設定にesdファイルが含まれていないために、Updateファイルをダウンロード出来ずにエラーとなる。

IISマネージャを起動してアプリケーションプールからWsusPoolを開き、CPUの制限間隔を5分から15分程度に変更する。また、全般のキューの長さも10000から25000程度に拡張する。リサイクルのプライベートメモリ制限を18342456から0にして制限を解除します。

原因不明のPCトラブルにあった場合の対処

コメントにトラブルの問合せとかくるようになったので、トラブル対処の一般的なことを述べておく。
まずは再インストールを検討しよう。それが駄目なら新しく買い足そう。

僕みたいに「趣味」でトラブルシューティングする場合でも、放置できるトラブルなら好きなだけ時間を掛けて調べる、放置できないなら再インストールなり予備機移行なりをした後に、調べるって事になる。再インストールは重要な選択肢なのだ。

1.まずは時間を決めて情報収集する

1時間とか、2時間とか時間を決めて、対処法がないか情報収集をします。
無闇に時間をかけて調べてはいけません。もしかしたらすぐに対処法が見つかって、若干の設定変更等で対処できるなら、10分ほどで解決するかもしれません。ですが何日かけても、対処法が見つからないかもしれません。
存在するか分からない情報を探すというのは、リスク(不確実性)の高い方法です。だから最初にどの程度の時間(損失)をかけて情報収集を試みるのか、しっかり考えておくことが大事です。

2.OSの再インストールを検討する

OSの再インストールは時間はかかりますが、リスク(不確実性)の少ない良い方法です。「ハードウェアの故障」「仕様上から出来ない事(バイ・デザイン)」「再現性のあるソフトウェアの不具合(バグ)」のいずれかでも無い限り解決します。

2.1.ハードウェアの故障有無を判断する

メーカー製パソコンだと自己診断機能を備えていることが多いです。付属のマニュアルなどを確認して、自己診断を実行して下さい。
自作パソコンだと自己診断機能という訳には行きません。イベントログの内容を精査したり、memtest86やCrystalDiskInfo等のフリーウェアを使ったり、あるいは目視や動作音から判断していくことになります。

2.2.データのバックアップ状態を確認する

あらためてバックアップする必要のあるデータが無いか検討します。普段からバックアップを取っていないとこういう時に困ります。昔は外付けのHDDにコピーしたり、DVDに焼いたりと作業が発生していたので面倒でしたが、今ならOneDriveやGoogleDriveと同期すると言う方法もあるので、こまめにバックアップ(複製)を取るようにしようね。
WEBブラウザのお気に入りとか、普段使用しているサービスのユーザーIDとパスワードとか、バックアップを忘れがちなので気をつけよう。

2.3.再インストールに必要な物を確認

後は付属マニュアルなどにそってひたすらインストールするだけなのだが、インストールメディアがないとか、PIDが分からないとかありがちである。気をつけよう。

3.検討した結果、今すぐの再インストールは無理だと思ったら

予備のパソコンを使おう。
もし予備のパソコンが使えないなら、新しいパソコンを買ってこよう。もちろん本気である。

トラブルの状況にもよるが、パソコンが起動しない状態でHDDからデータをバックアップするには別のパソコンが必要になる。情報収集しようにも、やはり別のパソコンがないと効率が悪い。再インストール作業には2日~3日かかることもあるが、この時間的損失を許容できないなら、その間は別のパソコンを使う以外にない。トラブルの発生しているパソコンの復旧作業は、手が空いたときにしよう。
借りるって手もよさそうに思うが、有料のレンタルは決して安くないし、機材の手配やデータ移行、環境設定やら何やらを考えると結局は2日~3日かかってしまう。量販店で買うなら、1時間後には手元にパソコンが届くだろうし、1日あればなんとかなる。

4.再インストールしても駄目なら・・・

「ハードウェアの故障」「仕様上から出来ない事(バイ・デザイン)」「再現性のあるソフトウェアの不具合(バグ)」のいずれかって事になる。ここまで来たなら、メーカーサポートを頼った方が良い。