Windows : してログ

Windows7 の上位エディションには、仮想マシンで Windows XP を実行できるライセンスが付いています。 一般的な仮想マシンのようにウィンドウ内で Windows XP を実行する OS モードと、Windows7 のデスクトップ上で Windows XP のアプリケーションを実行できる仮想アプリケーションモードがあります。 で、その仮想アプリケーションモードでは、Windows XP に後からインストールしたアプリケーションしかメニューに出てこないため、最初から入っている Internet Explorer は利用できないのかと思っていました。 しかし、次のように手動で登録することにより、実行できることが分かりましたので紹介します。

  1. XP mode を OS モードで起動します
  2. 次のフォルダを開きます「C:\Documents and Settings\All Users\スタート メニュー\プログラム」
  3. Internet Explorer のショートカットを先のフォルダに作ります
  4. Windows7 のプログラムメニューに自動的に公開されます
  5. XP mode を終了します(仮想アプリケーションモードと共存できないため)

InternetExplorer 8 は、まだ要求仕様になることがあり、これならデバッグを効率的に行うことができます。 もちろん、自動更新を停止して IE6 や IE7 を Windows7 上で表示させることも可能です。

Windows のコマンド窓で Linux コマンドが使いたい、という要求にストレートに答えてくれるコマンド集を見つけました。この用途だと Cygwin がありますがあんまりスマートじゃないですしおすし。Gow は他のとちがってインストーラも用意されていて、さくっと利用可能にできます。

Gow - The lightweight alternative to Cygwin
https://github.com/bmatzelle/gow/

インストールすると、下記のコマンド群が利用可能になります。パスも通してくれます。更に、フォルダのコンテキストメニューに Command Prompt Here というメニューが追加されます。

インストール先の bin ディレクトリの内容
awk.exe
basename.exe
bash.exe
bc.exe
bison.exe
bunzip2.exe
bzip2.dll
bzip2.exe
bzip2recover.exe
cat.exe
chgrp.exe
chmod.exe
chown.exe
chroot.exe
cksum.exe
clear.bat
cp.exe
csplit.exe
curl.exe
cut.exe
dc.exe
dd.exe
df.exe
diff.exe
diff3.exe
dirname.exe
dos2unix.exe
du.exe
egrep.exe
env.exe
expand.exe
expr.exe
factor.exe
fgrep.exe
flex.exe
fmt.exe
fold.exe
gawk.exe
gdbm3.dll
gfind.exe
gow.bat
gow.vbs
grep.exe
gsar.exe
gzip.exe
head.exe
history5.dll
hostid.exe
hostname.exe
id.exe
indent.exe
install.exe
join.exe
jwhois.exe
less.exe
lesskey.exe
libcurl.dll
libeay32.dll
libiconv2.dll
libidn-11.dll
libintl-2.dll
libintl3.dll
libssl32.dll
ln.exe
ls.exe
m4.exe
make.exe
md5sum.exe
mkdir.exe
mkfifo.exe
mknod.exe
msys-1.0.dll
msys-regex-1.dll
msys-termcap-0.dll
mv.exe
ncftp.exe
nl.exe
od.exe
pageant.exe
paste.exe
patch.exe
pathchk.exe
pcre3.dll
plink.exe
pr.exe
printenv.exe
printf.exe
pscp.exe
psftp.exe
putty.exe
puttygen.exe
pwd.exe
readline5.dll
regex2.dll
rm.exe
rmdir.exe
scp.bat
sdiff.exe
sed.exe
seq.exe
sftp.bat
sha1sum.exe
shar.exe
sleep.exe
sort.exe
split.exe
ssh.bat
ssleay32.dll
su.exe
sum.exe
sync.exe
tac.exe
tail.exe
tar.exe
tee.exe
test.exe
touch.exe
tr.exe
uname.exe
unexpand.exe
uniq.exe
unix2dos.exe
unlink.exe
unrar.exe
unrar3.dll
unshar.exe
uudecode.exe
uuencode.exe
vim.exe
wc.exe
wget.exe
whereis.bat
which.exe
whoami.exe
xargs.exe
yes.exe
zip.exe
zip32z64.dll

今まで原因がよくわかっていませんでしたが、どうやら Internet Explorer 向けの古いアップデートに起因したものらしく、そのアップデートを有効期限切れとすることで問題が解決したようです。これで、まだまだ Windows XP が使い続けられますね(・ω<)

Confirmed: Microsoft Fixes SVCHOST Issue for Windows XP
http://windowsitpro.com/windows-xp/confirmed-microsoft-fixes-svchost-issue-windows-xp

OEM パーテーションは、ディスクの管理から削除することができません。 このパーテーションはリカバリデータなどが入っていますが、HDDを再利用する場合は不要です。 これを削除したい場合は、コマンドプロンプトから diskpart コマンドを使用します。 作業においては、対象HDDやパーテーションを間違わないようにご注意ください。

C:\>diskpart
・・・DiskPart が別ウィンドウで開きます・・・
DISKPART>list disk
・・・認識しているディスクの一覧から対象のディスク番号を確認します・・・
DISKPART>select disk N
・・・ディスク番号をNに入れて選択させます・・・
DISKPART>list partition
・・・パーテーションの一覧を表示して対象のOEMパーテーションの番号を確認します・・・
DISKPART>select partition N
・・・パーテーション番号をNに入れて選択させます・・・
DISKPART>delete partition override
・・・パーテーションを削除します・・・
DISKPART>exit
・・・diskpartコマンドを終了します・・・

WindowsXP で報告されていた、Windows Update を行うと CPU 使用率が100%に張り付き、終了するまでかなりの時間を要するという問題が、ようやく修正されるようです。 これから WindowsXP を再インストールする予定がある人はパッチの提供まで待ったほうが良さそうです。

Windows XPでCPUの使用率が100%になるバグにMicrosoftがパッチ配布予定
http://gigazine.net/news/20131217-windows-svchost-bug-patch/

Windows 2003 Server で組んだADドメインに参加したPCの時刻が狂ってしまい、日付と時刻で設定してもすぐに狂ってしまう現象についてです。ADドメインにおいては、参加PCとドメインコントローラの時刻が同期している必要があり、これをドメインコントローラから貰う形で同期が実現されています。したがって、ドメインコントローラの狂った時刻が同期されていることが原因です。

ドメインコントローラの時刻を外部NTPサーバーに同期すれば良さそうですが、ドメインコントローラの日付と時刻には、インターネット時刻のタブがなく設定ができません。レジストリエディタで行う方法が、下記リンク先にあります。なお、外部と同期する1台のドメインコントローラだけに設定します。

Windows Server で権限のあるタイム サーバーを構成する方法
http://support.microsoft.com/kb/816042/ja
※外部のタイム ソースを使用するように Windows タイム サービスを構成する>自分で解決する
具体的な作業内容
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters
Type : NT5DS → NTP
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
AnnounceFlags : 5
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer
Enabled : 1
※変更後、サービスw32timeを再起動させます

ROBOCOPY でドライブ自体をコピー元にした場合、コピー先のディレクトリに、HS属性(隠し+システム)が設定され、フォルダオプションで「隠しファイル、隠しフォルダー、および隠しドライブを表示する」にし、「保護されたオペレーティング システム ファイルを表示しない(推奨)」を外さないと表示されなくなります。

バッチファイルを作成し、ROBOCOPY の直後に、ATTRIB コマンドで属性を変更するようにします。

Dドライブのバックアップを C:\backup に取る例
ROBOCOPY D:\ C:\backup /MIR /XO /XA:SH /XD "System Volume Information" /NP /NDL /R:0 /W:0
ATTRIB -H -S C:\backup

Windows7 Professional を小規模ファイルサーバーとして運用した場合、接続不能になる場合があるようです。イベントビューアには「非ページプール割り当ての制限に達したため、サーバーはシステムの非ページプールから割り当てることができませんでした。」というエラーが記録されています。これは、Windows Vista / 7 がクライアントPCとして意図的に制限が加えられているためのようです。

下記、レジストリの変更と再起動にて対応可能です。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters
MaxWorkItems
DWORD で追加し 1024 を指定する
MaxMpxCt
DWORD で追加し 255 を指定する
Size
3 に変更する
Windows Vista ベースのファイル サーバーに送信される、同時実行される SMB 要求の最大数を構成できない
http://support.microsoft.com/kb/937082

Boot Camp でインストールした Windows 環境で Google 日本語入力を使う際に、IME オン/オフを切り替えキーを割り当てる方法を調べました。

設定ダイアログの出し方
コントロールパネル>時計、言語、および地域>キーボードまたは入力方法の変更>キーボードと言語>キーボード変更>インストールされているサービスで Google 日本語入力をクリック>プロパティ>キー設定>キー設定選択>編集
設定箇所と内容
  • 変換前入力中/Hiragana/IME を有効化
  • 入力文字なし/Muhenkan/IME を無効化

Microsoft IME の設定方法はたくさん紹介されていますが、Google 日本語入力は見つからなかったので、自分で調べてみました。