win

Registration-Free COM で簡単 COM テスト

Windows XP 以降には「Registration-Free COM」というのがあって、COM コンポーネントを side-by-side アセンブリにすることで、レジストリに登録しなくてもインスタンス化することができる。ちょっと COM のテストがしたくて使ってみたのでメモしとく。 コ…

WTL で MDI フレームとスプリッターを併用する

ちょっとハマったのでメモ。WTL::CMDI(Frame|Child)WindowImpl (というか WTL::CMDIWindow) の既定の実装では、メニューを切り替えるときに ::GetParent(m_hWndMDIClient) でフレーム ウィンドウのハンドルを取得する様になっている。これだどスプリッターの…

Vista で MDI フレーム親子を最大化すると隙間ができる

MDI アプリを作って動かしてたら、親フレームと子フレームを同時に最大化したときに、右端に変な隙間ができてるのに気づいた。 他の MDI アプリでも同じように隙間ができるので、自分の所為じゃなさそうだと思って調べてみたら、「高 DPI 対応」じゃないとそ…

VMware のインストールに失敗したとき、クリーンアップする

win

VMware Workstation をアップデートするときは、必ず古いバージョンがアンインストールされる。だけど、そのアンインストールが失敗してどうしようもなくなることがある。そんなときの対処法を見つけたので忘れないようにメモ。 VMware KB: Cleaning up afte…

Vista で boost をビルドするときにシンボリックリンクを使う

Boost C++ Libraries のバイナリを Windows 上でビルドすると、 NT symlinks not supported yet, making copyって出て lib ファイルがコピーされる。せっかく Vista から NTFS でもシンボリックリンクが使えるようになったんだから、これを使ってハードディ…

Vista の TCP 同時接続数制限を緩和する

ググればあるけど備忘録ってことで書いとく。UAC が有効ならエスカレーションしたコマンドプロンプトで作業する。バックアップを取って、ACL を落とす。 cd C:\Windows\System32\drivers copy tcpip.sys tcpip.sys.orig takeown /f tcpip.sys icacls tcpip.s…

Vista で追加された新しいスタイルのボタン

画像を見てもらえば分かるように、ボタンに盾のアイコンがついた "管理者権限がいるよボタン" と、ウィザードで多く使われてる "キャプションと説明がついた大きくて平らなボタン" を作る方法。といっても後者は画像でネタバレしといた。ヘッダーファイルを…

Vista のディスク管理に関するバグ

win

かどうかは分んないけど、たぶん違う。バグというなら、管理コンソールのディスクの管理スナップインのバグ。 画像を見ていただければわかると思いますが、ディスク 1 のパーティション構成が明らかに変。プライマリ パーティションが 4 つと拡張パーティシ…

Vista を使う n 個の理由

win

率先して Vista を使ってた後輩たちが、気づいたらみんな XP に戻ってたみたいなので、Vista の "これ良くない?" みたいなのの紹介。ここでいう Vista とは Enterprise Edition のことなので、下位のエディションには搭載されてない機能もあります。 コマン…

ウィンドウのクライアント領域を Glass にする方法

Aero Glass な環境でウィンドウを表示しても、そのままではクライアント領域が透けたりしない。もったいないのでクライアント領域まで飴細工みたいにしようよ。もちろんコンパイルには Vista の プラットフォーム SDK がいる。あ、それと気づかないうちに Vi…

最近のコモンコントロールを使うようなマニフェストを自動生成するオマジナイ

StdAfx.h とかに書いておく。 #if defined _M_IX86 #pragma comment(linker, \ "/manifestdependency:\"type='win32' " \ "name='Microsoft.Windows.Common-Controls' " \ "version='6.0.0.0' " \ "processorArchitecture='x86' " \ "publicKeyToken='6595b6…

Remote Desktop with Cygwin

win

大学の後輩が id:odaken:20070129:1170063616 なんてエントリーを書いてるので、突っ込みを入れてあげようかなっと。 一通り読んでみて思ったのが、再起動が多すぎる。 1回目は環境変数の変更を反映するため?9x系では autoexec.bat で環境変数を設定してた…

NTsyslog

結局 NTsyslog 自体を書き直したとさ