id:NyaRuRu:20080909:p1で書かれていたHPETってなんだろうと思ったらいまどきのタイマハードウェアなんですね。Windows APIでのタイマーAPIが変わっているのはたしなみとして当然知っていますが、ハードウェアのほうも変わっているとはしらなかった。や、まぁ私がWindows NT 3.1をはじめたころからRTCって時代遅れだよねみたいなことは言われていたような…あいまいな記憶ですが。
PCAT/Timer/HPET - SyncHack
ICH4くらいからってずいぶん前だな。ちなみに私がこの前買ったIntelの最新マザーDG45IDのBIOSでHPET無効として設定されていました。
(私の中で)三項演算子を再評価
int i = 3; printf(" i は %s です\n", (i % 2) == 0 ? "偶数" : "奇数");
三項演算子って、機能としては知っていますが、積極的には使ってきませんでした。Cの場合、これ使わないとだめなケースってあまりなかったように記憶しています。そしてそれが積極的に使わない大きな理由の一つでした。ところが、最近C#でラムダ式を使うようになってころっと三項演算子を再評価しています。
HashSet<string> foo = new HashSet<string>(); .... var col = foo.Where(x => String.Compare(x.Substring(0, 2), "xx") == 0 ? true : false);
文字列比較のCompare()の結果はint型です。これでは困る〜ということで、三項演算子でさくっと使えます。
WCFとWebサービス作成ではまった話
Visual Studio 2008で.NET Framework 3.5を選択してWebサービスプロキシを作成すると、WCFを使うのね。全然知らなかった(^^;。Crediantialsを設定しようとすると、プロパティにaddress,binding,Endpointなどが並んでいてえ?とか思って調べてみると…。
閑話休題。Webサービスを作って、Webサービスから共有フォルダにファイル作成しようとするとエラー。よくある資格情報の話ではありません。ちゃんとアクセス権も与えてある。ところがどうしてもだめ…。
念のため自分のローカルアカウントで作成しようとするとそれも拒否。Windowsのイベントビューアのセキュリティログにも拒否ログや特権の取得に失敗しましたといログはない。
頭を悩ませることだいぶ…正解はMcafee VirusScan Enterprise 8.0が自分の共有フォルダにリモートからの書き込みを拒否する設定になっていたからでしたorz。もちろん設定を一時的に外すとOK。拒否したという情報はMcafeeのログとメッセージにしか書かれないので、大変悩ましい。Windowsのイベントログに書いてくれればいいのに。余計な「ファイルが大きいのでリアルタイムスキャンできませんでした」とかいう役に立たないログだけじゃなくて。
仮想化支援機構はやっぱり早い
id:frontline wrote:
私もVT対応PCを買って、「よし!ONにしてみるぞ!」と意気込んだものの、まさかセキュリティというカテゴリに分類されているとは気づかずにだいぶ探しました。
あれなんででしょうね?
NX bitと同じくSecurityでしたね。NX bitはまぁわかるんですが、ほかに適切な場所とかなかったんでしょうかね。ASUSやGIGABYTEと違ってただでさえ設定項目の少ないIntelマザーですし。いつもSecurityのところを無視していたので、まったく気づきませんでした。
VTを有効にしたらもう早い早い。Virtual PCなのにThinkpad X61 Tabletで動かすよりも起動が早い。