Microsoft
x64 Windowsではデジタル署名されていないドライバはロードすることができないので、自分でビルドしたりその辺から拾ってきたドライバを読ませるときは適当な(オレオレの)署名をする必要がある。 んだけど、よくコマンドを忘れるのでドライバに署名を埋め…
(12/05)追記したら記事の方向性がわかりやすくなったのでタイトルも変えた(笑 UserDebuggerHotKey GUIアプリケーションに対してデバッガがアタッチしているとき、このレジストリキーで設定されたキーを押すと、ブレークが発生しデバッグすることができよ…
!chkimgコマンドを使うと、コードパッチを簡単に検出することができる。以下の実行例では、ntカーネル(ntoskrnl.exe)に10byteの改ざんがあること、それらが5byteの改ざん2つ(そして関数フック)であることを確認している。 C:\>livekd ... 0: kd> .exepath …
x64ではインラインアセンブラが使えないので生のMASMを書く必要がある。 asmファイルをプロジェクト内に追加する 追加したasmファイルのプロパティを開き、「カスタム ビルド ステップ」>「全般」の 「コマンドライン」に ml64 /c /Cx /W0 /Fo$(IntDir)\$(I…
何をもってしてコードセクションとするか、を会社の昼休み中に調べていたら、なんだかいつの間にかDEPという深淵を覗き込んでいたので、そのままDEPについて調べてみた。まずコードセクション(実行可能セクション)はIMAGE_SCN_MEM_EXECUTEが設定してあるセ…
Windowsの場合、errorlevel環境変数で取得する。 >type con > exit_code.c int main(void) { return 11519; } [Ctrl+C] >cl exit_code.c Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.30729.01 for 80x86 Copyright (C) Microsoft Corpora…
コマンドプロンプトの場合 >type con > filename ... [Ctrl+C] PowerShellの場合 PS>Write-Output > filename InputObject[N]:... InputObject[N]:[Enter]空行を入力する方法がわからないね。とりあえず半角空白など入れているけど。 UNIX色に染まりたい(染…
突然すぐる… PowerShell使っていて [Alt]+[Enter] 押したらこうなったんだよ! 嘘じゃないよ! 一瞬ブラックアウト 青背景に白文字 微妙に文字がつぶれてる この辺がポイント。いかに青画面見慣れてても、突然だと焦る。
ゲットしました。
1万円近い謎のケーブルが届いたのでまとめる。
Future Technology Daysに行ってきたので忘れないうちに書く。基本的には企業向けの"ソリューション"が紹介されていたけれども、個人が楽しめる技術もちょっとあったので紹介。
Microsoft Partoner Program - Windows 7にある「Windows 7 アプリケーション品質(互換性 信頼性 パフォーマンス)を高めるための開発者ガイド」には、Windows 7へ移行するにあたっての開発者向け変更点が記述されている。Windowsプラットフォームの開発者は…
大切な気づきがつまっています。上のものほど新しいです。 [F1]キーを無効にする 間違ってF1キーを押すたびに出てくるヘルプ黙らせる、いわゆる「お前を消す方法」的なあれ。XPではHelp and Supportサービスを無効にすればよかったが、Vistaでは該当するサー…
2台の実機をシリアルケーブルでつないでデバッグする。こんな場所も金も時間もかかる方法は選択肢にすら入らない。そんなふうに考えていた時期が俺にもありました。 というわけで、ささっとケーブル類買ってきて試してみたらうまくいったのでメモ。
*おおっと* Windows® Internals, Fifth Edition Published : May 20, 2009 http://www.microsoft.com/learning/en/us/books/12069.aspx *えんきされている*
12/07 追記 ええと、すばらしいコメントが寄せられているので、OSライセンス等をアグレッシブに使用したい場合はコメント欄のURLを参照のこと。 以下、本文 MSDNを購読(年間登録)すると、契約期間中は複数バージョンのOSライセンス等を使用することができ…
せっかくVista搭載の実機を買ったのだし、Windows Performance Analyzerを使って起動を最適化してみた。細かい手順は以前の記事のとおり。速くなったんじゃないかな、たぶん。以下の画像は最適化前後のディスク使用率。記録時間全体から見て特徴的なのは、14…
Here are few highlights in this release: New Setup Environment Updates/fixes to Headers Added Bluetooth 2.1 headers and samples Added support for Server 2008 to DifX Updated WDF 1.7 co-installers Updated Device Simulation Framework (DSF) U…
プログラムに関するすべての情報はソースコード上にあるのが好きだ。プロジェクトのプロパティ(あるいはmakefile)に情報が分散されているのは好きじゃないので、コンパイラやリンカへのオプションはできるだけpragmaを使おうと努めている。 でまあ、またち…
Windows Server 2008 ホワイトペーパーの一文書。仮想マシンの仕様書であるとともに、ハイパーコール(Hvp API)の日本語リファレンス。
bootvisはXPの起動プロセスの詳細を分析し、また起動を高速化する(かもしれない)機能を持っていることで有名なツール。わたしも高速化機能に加え、ブートプロセスの詳細を意味もわからず眺めるのが好きで、日本語化パッチなどを作ったりしていた。ところで…
Faith and Brave - C++で遊ぼう - 並列コンパイルを見て。clに/MPオプションを渡すと、CPU数を活かした並列ビルドを行う。すばらしい。このエントリー見つけた瞬間、VS2008の有償版を買おうかと思い悩んだが、VS2005 SP1で試したところ問題なく機能すること…
タスクトレイの時計に曜日を表示する 詳細表示に曜日を表示させたり、タスクバーに日付を表示させる方法。TClockとか弄っておいて言うのもなんだが、これは素晴らしいね。
ひょんなことで2008もVistaと同様にMUI(多言語化)が可能であることがわかった。 Windows Server 2008 Multilingual User Interface Language Packsから必要な言語パック(isoファイル)をダウンロード ダウンロードしたisoをマウント コントロールパネルの…
Windows SDK で最も名前が長い定数・関数ベスト6 が「長い関数名ってなんだろう?」という私のくだらない疑問を解決していることに感動した。そこで識別子の長さではWDKだって負けてないよ、ないよ! ということでやってみた。もうすでにどこかの誰かがやっ…
Hyper-Vで仮想マシンを作成し、これをWinDbgによりカーネルデバッグするまでの手順。今回の例では以下の構成で話を進める。ホスト側における手順はすべて管理者権限で行う必要がある。 仮想マシン Win2003 R2 std 評価版(x64) デバッガ WinDbg(ネイティブ x6…
前回も書いたが購入したハードウェアにはサウンドカードが無い。したがって音が出ない。サーバならともかくパソコンとして使用する以上、やっぱりサウンドカードが欲しい。そこでパーツを買ったが、結論としては満足のいく音を得られていない。ノイズがひど…
端的にいうとDELLのサーバマシンSC1430を買った。購入前の絶対的な要件としてあげていたのは以下のとおり。 Quad Core x2(仮想マシン2つ以上並走してデバッグしたい) メモリが8GB以上(仮想マシン2つ以上並走してデバッグしたい) 仮想化支援機能を持つ(H…
ドライバをロードできるCoolな標準コマンドsc のラッパをjs(WSH)で書こうとしたが、WScript.run で起動したscの出力を、親コンソールの標準出力にリダイレクトさせる方法がわからない。 やむを得ずバッチで書き始めたら、バッチ引数として渡した binpath= な…
XP以降のWindowsには標準でscというコマンドがあって、これを使うとドライバをロードしたりアンロードしたりすることができる。以下に __empty.sys を登録・開始する例と、停止・登録解除する例を示す。まず起動まで。 >sc create __empty binpath= C:\Users…