2012-07-01から1ヶ月間の記事一覧

FirstChanceExceptionが無限ループに陥らないようにする実装方法

.Net 4.0 から導入された FirstChanceException イベントハンドラは、例外が発生した際に最初に例外が通知されるイベントです。(try catch よりも先に。) 但し、注意点としてFirstChanceExceptionイベントハンドラの中で新たに例外が発生するとFirstChance…

Windows 8 でスタートメニューを表示する

Windows 8 からスタートメニューが無くなりましたが、早速、スタートメニューを表示するアプリをリリースしている人がいたので使わせてもらうことに。 Lee-Soft ViStart 海外のソフトウェアだが日本語も表示されるし見た目もWindows 7 なので使いやすい。

IIS でワーカープロセスのリサイクルが発生した際にイベントログを記録する

IISのワーカープロセスは、不安定にならないよう定期的な時間間隔(1740分ごと)に再起動するように設定されています。この再起動処理をIISはリサイクルと呼んでいます。既定では時間間隔(1740分毎)ですが、リクエストの数(1000万リクエスト毎など)や特…

例外の処理コストとパフォーマンスチューニング

例外に掛かる処理コストについてint.Parseとint.TryParseを使って比較調査を行ってみました。 入力された文字が数字か否かを判断する方法として、数値ではない場合に例外を発生させるint.Parseがあります。 private bool IsNumericByException(string test) …

InnerExceptionは誰が設定するのか(例外が再スローされるときにいつでも設定される訳ではない)

MSDNにはInnerExceptionについて以下のような説明があります。 ファイルを読み取り、そのファイルのデータの書式を指定する関数があるとします。この例では、ファイルの読み取りを試みるコードとして、IOException がスローされます。この関数は、IOExceptio…

throw ex と throw の違い。例外の再スローについて。

例外を再スローする場合は、 throw ex; ではなく throw; と書きます。 上の2つはとてもよく似ていますが処理内容は全く異なります。throw exは実行したメソッドで新しく例外をスローしますが、throwとだけ書いた場合は例外を変更無しに再スローします。”変…

Null許容型はGetTypeでNullableを返さず値型を返す

Null許容型ですが、GetTypeメソッドを呼び出した際にNullableではなく値型を返すという特性があります。NullableのGetTypeはintを、NullableのGetTypeはDateTimeという風に。 Nullableを導入した際の値型との互換性のためだと思いますが、ちょっと変わった動…

DHCPでIPアドレスが取得できない場合に設定されるIPアドレス(169.254.0.0)

DHCPでIPアドレスを取得するよう構成されたコンピュータが何らかの理由により(ネットワーク断線、DHCPサーバダウンなど)でIPアドレスが取得出来ない場合、APIPA(Automatic Private IP Addressing)というアドレス体系のIPアドレスが自動的に付与されます。 …

Administrator ユーザアカウントを有効にする

Windows Vista / 7 Home Basic, Home Preminum では、Administrator アカウントを有効にするためにはコマンドラインから設定する必要がある。 (GUIのコンピュータの管理ツールが利用できないため。Enterprise,Ultimateは可能。)有効にする net user admini…