AD環境でクライアントPCの名前解決に失敗する

Active Directory環境下でクライアントパソコンの名前解決を行うと実際とは異なるIPアドレス帰ってくる場合、DNSのキャッシュしている情報が不整合を起こしています。

その場合はADサーバー上において管理ツールの「DNSマネージャー」を起動して、前方参照ゾーンを開き、表示されるコンピューター名の一覧から当該クライアントパソコンの設定を削除します。

削除した分のデータはクライアントパソコンを再起動したときに、正しい内容で再作成されます。

Officeのタイトルバーに表示されるユーザー名をAD環境下で変更するには

Office 2013以降はタイトルバーの右上にユーザー名が表示されています。ここに表示されているユーザー名はOneDriveのユーザー名であったり、ActiveDirectory(以下AD)のユーザー名であったり環境によって異なります。ところがAD環境下の場合にはADサーバ側でユーザーの登録内容を変更しても、Officeのタイトルバーに表示されている氏名には反映されません。

AD以外の環境・・・例えばOneDriveのユーザー名ならばファイルメニューのアカウントを開き、サインアウトを実施します。その後にあらためてファイルメニューのアカウントを開き、サインインする事でOneDriveのユーザー名を反映することが出来ます。ですが、Active Directory環境下の場合には、ファイルメニューのアカウントからサインアウトを選択するとサインアウトできますが、もう一度ファイルメニューのアカウントからログインし直すことが出来ない為に、ログアウトしたままになってしまいます。

Active Directory環境下の場合にはレジストリを直接編集して名前を変更する必要があります。レジストリエディタを起動して「HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Common\Identity\Identities」を開きます。ここにADユーザアカウント名でフォルダが作成されていますので、「FriendlyName」および「Initials」を変更します。この後Officeを起動すると、新しい名前が反映されるようになります。

参考:https://technet.microsoft.com/en-us/library/jj683102.aspx#Bkmk_4_DeleteCreds

WSUSに接続しているクライアントPCが、Updateのダウンロードに失敗する場合

WSUSクライアントがWindowsUpdateのダウンロードに失敗する場合には、次の手順でクライアントのキャッシュを初期化すると正常に動作する場合がある。

参考:Windows Update クライアントの情報をクリアにする手順

WSUSを使っていると言うことは、ActiveDirectoryの環境も整っています。ここではクライアントにログインせずに、エンドユーザーに気がつかれないように遠隔操作のみで処理していきます。

次の様なコマンドを実行して、コントロールパネルの「コンピューターの管理」をエラーの発生している端末に繋ぎます。

C:\>runas /user:example.local\[管理者ユーザー] "mmc.exe C:\windows\system32\compmgmt.msc /computer=[コンピューター名]"

これで「コンピューターの管理」が開きますので、ツリーからサービスを選んで「Windows Update」と「Background Intelligent Transfer Service」を停止します。

次のコマンドを実行して、エラーの発生している端末のC:ドライブをマウントします。

C:\>net use A: \\[コンピューター名]\C$ /user:example.local\[管理者ユーザー] [パスワード]

以下のコマンドでSoftwareDistributionフォルダ、及びBITSのジョブを削除します。

ren A:\Windows\SoftwareDistribution SoftwareDistribution.old
del A:\ProgramData\Microsoft\Network\Downloader\qmgr0.dat
del A:\ProgramData\Microsoft\Network\Downloader\qmgr1.dat

「コンピューターの管理」に戻って「Windows Update」と「Background Intelligent Transfer Service」を起動します。

これで先ほど削除した、あるいはリネームしたファイルやフォルダが再び作成されて居ることを確認します。

最後にマウントしたドライブを解放しておきます。

NET USE A: /DELETE

以上で、人知れずWindows Updateのキャッシュ削除完了。2日ほど待ってWSUS上からエラーがなくなっていれば成功です。

OneNoteでエラー コード: 0xE00001AEが発生した場合の対処

OneNoteで「このセクション ファイルは破損しているようです。OneNote で修復できる可能性がありますが、それまでの間、ここでは作業をしないでください。 (エラー コード: 0xE00001AE)」が出た場合の対処法。

1.One Noteのバージョンが最新になっているか確認する
ファイル→アカウントを開きます。

オフィス更新プログラムの更新オプションから「今すぐ更新」を選んで下さい。「Windows Updateを掛けているよ」と言う人でも、セキュリティアップデートは適用されているけど、更新プログラムは適用していない言うことがままあります。

2.壊れたページを削除して、ゴミ箱を空にしてみる
特定のページを開いたときにエラーが表示される場合、そのページが壊れています。諦めてそのページを削除しましょう。ページを右クリックして「削除」を選んだだけだと、ゴミ箱に送られただけで、ページ自体は破棄されません。そのためエラーの表示もなくなりません。
One Noteのゴミ箱は分かりにくい場所にあります。ブックを右クリックして「ノートブックのゴミ箱」を選択して下さい。

「削除されたページ」というシートが表示されるので、そこで再び右クリックして「ゴミ箱を空にする」を選びます。「削除されたページ」意外にも複数の削除済みページが表示される場合には、それらも順に削除します。

Office 2016で再度ライセンス認証画面が酷い

Office 2016で再度ライセンス認証が必要になった場合に表示される画面だが、ここまで酷い化けた画面は滅多に見ない。初見だとおそらく操作できないだろう。

最初の画面、チェックボックスの位置がずれている。本来は「ソフトウェアのライセンス認証をインターネットで行う」と「ソフトウェアライセンス認証を電話で行う」の所にチェックボックスがあるが、エラーメッセージの場所に移動している。上段のエラーメッセージを選ぶとインターネット経由に、下段のエラーメッセージを選ぶと電話認証になる。「戻る」に化けてしまっているが、このボタンで「次へ」すすむ。

通常のパッケージ版ではインターネット経由でのライセンス認証は一度しか出来ない。多くのユーザーは電話認証を選ぶ必要がある。

電話認証に進んだわけだが、これも中々に酷い。位置関係が完全に崩れている。本来なら最初にドロップダウンリストボックスから匡と地域を選択すると、日本国内の電話認証のための電話番号が表示されるのだが、表示されない。仕方が無いのでインターネットでライセンス認証の電話番号(0120-801-734)を調べる。リンク先にOffice2016の記載は無いが、全てのプロダクトで共通の電話番号なので問題ない。

Aという表記の脇に、7桁の数字が9組ならんでいる。これがインストールIDなので自動応答のガイダンスに合わせて入力していく。実は自動応答でのライセンス認証は失敗する(ぉぃ)ので、エラーとなって失敗した後オペレーターが出るのでオペレーターに対応して貰う。

オペレーターから確認IDを教えて貰って入力していく。テキストボックスが8個並んでいる、ラベルの表記がずれているが、一番左がA、順にB~Hとなるので順番に入力していく。入力が済んだら「戻る」を押して「次へ」進もう。特に入力に誤りが無ければ、これでライセンス認証が終了する。

Windows Live MailからOutlook 2013へのエクスポート中にLive Mailが不正終了してしまう

Windows Live MailからOutlook 2013以降へのデータ移行

Windows Live Essentials 2012のLive MailからOutlook 2013等にエクスポートしたときに、途中で止まってしまう原因が漸く分かった。メールを開いたときに「メッセージが見つかりません。」と表示されるメールが原因のようだ。

Live Mailを長く使っていると「メッセージが見つかりません。」といったエラーを見たことがあると思う。Live Mailのデータファイルは、アプリケーションがフリーズしたり、パソコンの電源を突然切ったり等、正常な手順で終了できなかった場合に高い頻度で壊れる。ウィルス対策ソフトウェアがメールに含まれるウィルスを見つけてファイルを消した場合などにも壊れる。壊れた結果、左側の一覧には残っているけど、メール本体のデータが見つからなくなって、こんな表示になる。
エクスポートしようとしているフォルダに、このように壊れたメールが含まれていると、エクスポート中にLive Mailが終了してしまう。

「C:\Users\Windows\User名\AppData\Microsoft\Windows Live Mail\メールアカウント名」以下に保存されています。ここに各フォルダ毎に分かれてメールが保存されているので、例えば受信箱中のエラーデータを削除したいのであれば、「Inbox」をコピーして「Inbox2」というフォルダを作成します。その後にWindows Live Mailを起動すると、Inbox2と言うフォルダが新たに認識されて正常なデータのみが取り込まれ、「メッセージが見つかりません。」とエラーの出ていたメールは無視されます。その後、元々あった受信トレイ内のメールを削除し、Inbox2内のメールを受信トレイにコピーしてあげれば、メールボックスはきれいな状態に戻ります。

このようにしてメールボックスをきれいにした後に、Outlook 2013等にエクスポートすれば、エラーで中断すること無く移行できます。

Visual Studio 2015での.NET Core開発

.NET CoreはLinux環境で開発を・・・と思ったのだけど、結局使い慣れたWindowsに戻ってきました。.NET Core(Windows)の開発環境構築手順などを残しておきます。

1. .NET Core SDKのインストール
.NET DownloadsからWindows版の.NET Core 1.1 SDK – Installerをダウンロードしてインストールする。

2..NET Core tools preview for Visual Studioのインストール
.NET Core installation guideに従って.NET Core tools preview for Visual Studioをインストールします。これで新規プロジェクト作成時に.NET Coreプラットフォームを選択する事ができるようになります。

3. 新規にコンソールアプリケーションを作成して実行します。

といった感じで開発環境を作るだけならとっても簡単。ただし困りものなのが.NET Coreで使用できるライブラリの取捨選択・・・。
例えばHTTPクライアントを実装したい場合System.Net.WebClientは.NET Coreに対応しない。System.Net.Http.HttpClientは.NET Coreに対応するが個別にNuGetからダウンロードが必要。System.Data.SqlClientはNuGetからダウンロードすれば使えるけど、SqlDataAdapter クラスは存在しないのでDataSetを使うことは出来ない。AzureStorageの依存情報を見ると.NET Coreの記述が無いので使えないのかと思いきや、NuGetでダウンロードする前におまじないを書けば使えたりします。万事この調子なので慣れるまでは大分苦労しそうです。

Acrobat Readerのインストールに繰り返し失敗する

Adobe Readerの更新インストールなどを行っていると、再インストールに失敗することがあります。公式ページにはエラーになった場合は一度Adobe Readerをアンインストールするように記載されています。ですがアンインストールを行っても、再インストールに繰り返し失敗する場合があります。

そんな時には「Acrobat Reader Cleaner Tool」の出番です。インストールしていたAdobe readerのバージョンにあったCleaner Toolをダウンロードして管理者ユーザーで実行するとアンインストール時に残ってしまったゴミデータを削除してくれます。

その後、あらためてAdobe Readerの再インストールを試みてください。

参考:Acrobat Reader(Adobe Reader) および Acrobat 用の Cleaner Tool について(Windows)

Windowsのファイル共有でEvryoneからのアクセスを許可する

ファイル共有をかけるとき、Everyone(誰でもアクセス可能)にするには、以下の4ヶ所の設定が必要です。

ファイルのアクセス権設定でEvryoneを許可する

フォルダのプロパティを開きセキュリティタブにある編集ボタンを押して、アクセス許可の画面を開く。アクセス許可の画面で追加ボタンを押して、Everyoneアカウントにフルコントロール権限を与える。

ファイル共有のアクセス件設定でEvryoneを許可する

フォルダのプロパティを開き、共有タブにある詳細な共有ボタンを押して、詳細な共有の画面を開く。「このフォルダを共有する」をチェックして、アクセス許可ボタンを押し、Everyoneアカウントにフルコントロールの権限を与える

Guestアカウントを有効にする

Guestアカウントは初期状態では無効にされている。「コンピューターの管理」を開き「システムツール→ローカルユーザーとグループ→ユーザー」にあるGuestアカウントのプロパティを開き「アカウントを無効にする」のチェックを外す。

セキュリティポリシーでGuestsの接続を許可する

「ローカルセキュリティポリシー」を開き「ローカルポリシー→ユーザー権利の割当」の「ネットワーク経由のアクセスを拒否」にGuestアカウントが登録されている。アクセス権設定は「拒否」の設定が優先される。このままだとGuestアカウントでのネットワーク接続に失敗するので、Guestアカウントを拒否リストから削除しておく。

Windows 7やWindows 10はサーバー用途で使うことを異図していません。20セッションを超えると接続エラーとなるので注意しましょう。

複数のゲートウェイが登録されてインターネットに接続出来ない

ゲートウェイの設定を変えたところ、ネットワークに繋がらなくなった。しばらく原因が分からず、再起動を繰り返しながら悩んでいた。

ふとipconfigを実行してみると、デフォルトゲートウェイが0.0.0.0と192.168.xxx.xxxの2つ登録されている。

実際に行う機械は殆ど無いが、アダプターの設定の変更からインターネットバージョン4のプロパティを開き、詳細設定のボタンを開くと複数のデフォルトゲートウェイの設定をすることが出来る。しかしながら、実際にひらいてみると192.168.xxx.xxx一つだけがデフォルトゲートウェアに登録されていて、0.0.0.0は見当たらない。

route delete 0.0.0.0 /p


上のようなコマンドを実行したところ、無事に複数のデフォルトゲートウェイが削除できた。あらためてアダプターの設定の変更からインターネットバージョン4のプロパティを開きデフォルトゲートウェイを開くと正常に動作するようになった。