Hatena::ブログ(Diary)

@camelmasaの開発日記 このページをアンテナに追加 RSSフィード

Githubで活動しています。

2009-07-13

初めてc#に触れました!

| 10:21

初めてc#に触れたので、触れることとなった経緯や困った部分を記事にしました。

経緯

とある案件で「IPアドレスを偽装」する事が出来ないかという話になりました。

ユーザーエージェントやリファラーを偽装する事は簡単なのは知っていたのですが、IPアドレスの偽装はさすがに無理だろうと思っていましたが、なんと出来るようです。

下記アドレス参考

http://www.stackasterisk.jp/tech/program/howtosniff02_01.jsp

上記のサイトのサンプルソースを見ると、cもしくはc++かなと思っていたのですが、ダウンロードして拡張子を見ると「.cs」となっていました。

「.cs」ってなんだろうと調べてみると、なんとc#ファイル!

いやーこんなところでc#とお会い出来るなんて(笑)

上記サイトでコンパイルしてと書いてあったので、Visual Studio 2008をダウンロードしてインストールコンパイルする事にしました。

c#コンパイルで躓く

Nightmare.csprojファイルをVisual Studio 2008で開き、コンパイルを実行…しかし、

アンセーフ コードは /unsafe でコンパイルした場合のみ有効です。

とのエラーが表示されてしまいました。

そもそもunsafeってなんだろうと調べましたら、cやc++で使用出来るポインタc#Javaでは制限していて、一時的にc#ポインタを使用できるように出来るコンテキストのようです。

下記サイト参考

http://ufcpp.net/study/csharp/sp_unsafe.html

では、Visual Studio 2008 で/unsafe でコンパイルするには…と調べると、プロパティを許可するだけで出来るようになりました。

下記サイト参考

http://hdknr.spaces.live.com/Blog/cns!82BB74511E950AA4!1252.entry

で再度コンパイルに成功した訳ですが…。

生成されるであろうexeファイルが見当たらない…。

デスクトップにも無いし…。

と思っていましたら、プロジェクトフォルダ内にobj/Releaseフォルダがあるじゃないですか。

そこにNightmare.exeが!

f:id:camelmasa:20090713101648p:image

やったー!

まとめ

IPアドレスを偽装」の案件が成功したかという話ではないのですが、初めてc#に触れる事が出来ましたので、嬉しかったです。

何事もやってみるもんですね。


[PR]Spreeの情報を集めています。

ECを持ちたい方、仕事でECを使いたい方向けのコミュニティサイトです。

このサイトでは世界で最も使用されているECの1つであるSpreeについての情報を提供しています。

http://spreecommerce.jp/