TEMTECOMAI ORTHOSTATIC HYPOTENSION

元ダメプログラマで現ダメ中間管理職の駄文

June 2007

皆さんは外出?
天気も悪いのでオイラは MAILER-DAEMON 様から届いた数千通にもなるお怒りのメールを削除してました。。。
ここ数日はペースも落ちてきて何とか収束しそうな感じです。

1984
決める夏。au キャンペーン」 てなキャッチコピーで CM かかりまくってますね。まさか Van Halen を使うとは恐れ入りました。

アルバム 「1984」 だから中学生んときかな。
高校に入ってオイラは YAMAHA の DX-7 を買ったんだけど、友達の KORG DW-6000 を借りては JUMP のリフを弾いてました。本家はオーバーハイムの OB-Xa だっけ? DW-6000 は音が透明っぽかったけどオシーレタもフィルタも切れが良かったな。

この au の CM を最初に見たとき、なんだかカネボウの夏のキャンペーン 「〜しない、しない、ナツ〜」 を思い出しちゃいました。なんででしょうね。

この曲はもちろん浜田麻里のヒット曲なわけですが、ググってみたらデーモン閣下も歌ってたんですねw

いやいや集まりましたなぁ、9名!
そして偶然にもデビューの 2名以外の数名は新しいボディーのお披露目。
オイラも WRC2000 から丸目な WRC2002 に変更!!
最後は 8名によるグタグタなバトル。いやー楽しかった。

dotnetlogo2久しぶりにプログラムなんぞをやってますんで、独自の型をコレクションするクラスに各種有名どころなメソッドを実装するのさえ面倒くさくなっております。
というかいまいちそこら辺のインターフェイスって消化できてなかったり。
んなもんで .NET Framework 2.0 になって何とかならんのか、ジェネリックって何なんだ、と調べておりましたら Gushwell さんのエントリー 「独自クラスでforeach を書けるようにするには」 で便利な物を見つけちゃいました。今度こそちゃんと覚えておこうっと。
/// <summary>
/// ホスト 1台を表すクラス
/// </summary>
Class Host
{
    // まぁとりあえず適当に
    private string _ipAddress = ""
    private string _hostName = "";
    private string _macAddress = "";

    public Host(string aIPAddress, string aHostName, string aMACAddress)
    {
        _ipAddress = aIPAddress;
        _hostName = aHostName;
        _macAddress = aMACAddress;
    }

    // あとはプロパティを適当に実装
}

/// <summary>
/// Host オブジェクトのコレクション クラス
/// </summary>
class Hosts : System.Collections.ObjectModel.Collection<Host> { }

/// <summary>
/// 実行側クラス
/// </summary>
class myApp
{
    public hoge()
    {
        Hosts hosts = New Hosts();
        // もうこれで hosts コレクション オブジェクトには
        // Add メソッド
        // Creal メソッド
        // Insert メソッド
        // Remove メソッド
        // RemoveAt メソッド
        // Count プロパティ
        // なんてのが勝手に実装されてる!!
        // しかも foreach もできちゃうし、キャストも必要ない!!
    }
}

どこぞのスパム屋さんがオイラのフリー メアドで投げまくってるみたいですね。
今現在、1分間に約 100通のペースで世界中の MAILER-DAEMON 様から怒られまくってますw
いつになったら止むのかな。。。

やっぱイロイロなリスクを考えればスタートアップ スクリプトやログオン スクリプトで流すのは危険だよなぁ。。。
  • 固定 IP アドレスを DHCP に変更
  • DNS サーバのアドレスをクリアしてコイツも DHCP からもらうように変更
  • DNS の各種オプションを設定
  • サフィックスを設定
  • WINS アドレスをクリアしてコイツも DHCP からもらうように変更
  • NetBIOS オプションを設定
やっぱ起動時にコレやるのは危険だよなぁ。。。
まぁ一応変更時のインパクトを減らすため DHCP には今設定してあるアドレスで予約を入れておくけどさ。。。
やっぱ手動で変更して回るのが吉だよなぁ。。。

まずは今バラまかれているの IP アドレス、MAC アドレス、ホスト名を回収するため、開発中のツールを完成させなくては。。。

1年半前に社内で発生したラジコン ブーム。一過性のブームで終わるかと思ったのだた先月から復活。ほぼ毎週末は会社の駐車場で遊んでます。
レギュラー メンバーは 5人程度に減ってしまったのですが、最近は新規メンバーも増え始め最大で 10人ぐらいに増えそうです。手持ちのクリスタルを増やさないと被っちゃうかもね。
駐車場はサーキットと違ってウォールがないから激突クラッシュがないのですが、その代わり車同士の衝突バリバリです。コーナー内側にはサッカー練習用の背が低いパイロン(コーン ヘッド型じゃなくてドーム型)をガムテで貼り付けているのですが、こいつに乗り上げると車ごと大回転。おかげでボディーはボロボロです。それでもウォール激突の時のように足回りの部品が折れることが少ないので飽きるまで遊べます。
そうそう、アスファルトは粗いし小砂利やら砂やらがいっぱいなのですぐにタイヤが減ってしまいます。
これに対する対策としてはタイヤのインナーをバラ売り製品をじゃなくタミヤのタイヤに付いてくるスポンジのインナーに変更してみました。これで扁平しづらくなってドレッド面を有効に使えそうな感じがします。(もちろんタイヤはラジアル)

優寿司 生ビール祭
優寿司 30周年を記念して 7月 1日〜7月 30日まで生ビール 600円が半額の 300円!!
塩辛いおつまみを注文してひたすら生ビールを飲むべし。

dotnetlogo2ホスト名を取得する部分は System.Net.Dns.GetHostEntry メソッドで System.Net.IPHostEntry オブジェクトを取得し、HostName プロパティの値を取れば OK だという事はすぐにわかった。
しかしホスト名が分からなかった場合、HostName プロパティには文字列形式の IP アドレスが格納されてしまう。
そもそも IPHostEntry オブジェクトはどうやってホスト名を取得してるのかがよくわからんのですが、まぁ DNS やら WINS やら hosts ファイルやらキャッシュやら、実行 PC のネットワーク環境のアレやコレやを駆使して取得しているに過ぎないんでしょうな。
IP アドレスが格納されてしまうパターンとしては、
  1. ホスト名を解決できなかった場合
  2. そもそも指定した IP アドレスのノードがネットワーク上に生きていない
てな感じ。
2 に関しては System.Net.NetworkInformation.PingReply の Status が System.Net.NetworkInformation.IPStatus.Success 以外ならその後の処理をしないようにすれば OK か。
1 に関しては HostName の値が IP アドレスと同じなら空文字を返すようにしちゃえばいいかな。

dotnetlogo2プロジェクトの環境整備のためにツールを開発中。
指定した範囲の IP アドレスに対して
  1. PING を打つ
  2. MAC アドレスを取得
  3. ホスト名を取得
てな動作。
結果はとりあえず ListView に出力。
ListView は 3列構成で、IP アドレス、ホスト名、MAC アドレスを表示。
PING が timeout になったりホスト名が取れない場合、ListView のその項目は空白のまま。(IP アドレスは必ず出力する)
ここまでは Vector あたりに沢山ツールが置いてあるわけですが、指定した範囲のアドレスに対して 1回舐めるだけじゃなく、指定した回数繰り返し処理したいわけです。
対象にしている LAN は管理ができていないカオスな所でして、「ちょっと電源を入れて 10分ぐらい作業してすぐに落としちゃう」 てな端末を取り逃したくないわけですわ。
それと [以前の続きで調査] てな機能も必要。
ListView 上の Item を舐めていきながら(IP アドレスは書き出してあるので)ホスト名か MAC アドレスが空白のノードだけ処理するモード。

てな要望を書き出していたら、このツール、素直に考えると単なる DoS 攻撃ツールなんじゃないかと。。。
んじゃぁせめて繰り返し時のインターバルを設定できるようにしようじゃないか、と。続きを読む

"2007 Microsoft Office プログラム用 Microsoft PDF/XPS 保存アドイン" てのをインストールすると PDF 出力が可能になるのですが、半透明の効果を掛けたオートシェイプが汚くなっちゃうわけですよ。
したっけ、[PDF または XPS 形式で発行] のダイアログで [オプション] を押し、「ISO 1900-1 に準拠 (PDF/A)」 のチェックを外して PDF 化すればきれいになりましたとさ。

火曜日と木曜日に従兄んところでブログ指南。
夕飯は中央警察署の近くにある幸麺
従兄の後輩とのことで、何度か来たことがある店。
お勧めは揚げ餃子と揚げポン(という名前だったと思う。鳥の皮を挙げたもの)
昨夜は黒胡麻坦々麺にラー油をたっぷりかけてウマー。

ところでここの店のメニューで使われている文字は非常にユニークな形をしてるのだが、店長の知り合いの方が書いたらしい。この方は普通にこういう文字を書くらしいのだが、個人的にはフォントにしてみたいなぁと。

↑このページのトップヘ