HTTPステータス・コードを取得するには、まずWebページにアクセスする。これに関しては、リクエストを示すHttpWebRequestクラスと、レスポンス(応答)を示すHttpWebResponseクラス(ともにSystem.Net名前空間)を使用する。これらのクラスの利用方法については「TIPS:WebRequest/WebResponseクラスでWebページを取得するには?」を参照してほしい。 Webサーバから応答があった場合には、WebサーバからのレスポンスであるHttpWebResponseオブジェクトのStatusCodeプロパティにHttpStatusCode列挙体の値がセットされる。 ただし、例えばページが存在しない場合には、HttpWebResponseオブジェクトの取得時に例外が発生する。それでもWebサーバが応答している場合には、例外オブジェクトであるWebExcept
Visual Studioでは、ブレークポイントなどによりプログラムの実行を中断している際、マウス・カーソルを変数部分の上に移動させるだけで、その内容を確認することができる。 次の画面はbutton1_Clickメソッドの最後の行でブレークポイントにより実行を中断し、マウス・カーソルを変数sender上に移動させて、その内容を表示しているところだ。
「TIPS:ほかのアプリケーションを実行するには?」では、外部アプリケーションの起動方法を解説したが、起動に続けて、そのアプリケーションを操作したいような場合には、それが実際に利用できるようになるまで待つ必要がある。たいていのアプリケーションは、実行ファイルが起動されてから、それが実際に利用できるようになるまでに初期化などで時間がかかるためだ。 どれくらい待つ必要があるかは当然ながらアプリケーションによって異なるが、Processクラス(System.Diagnostics名前空間)には、プロセスがユーザー入力(マウスやキーボードの操作など)を受け付けることができるアイドル状態*になるまで待機するためのWaitForInputIdleメソッドが用意されている。 WaitForInputIdleメソッドはインスタンス・メソッドであるため、これを呼び出すには、まずProcessクラスのインスタ
このような[コマンド プロンプト]画面を表示せずに実行されるコンソール・アプリケーションを作成したい場合には、Visual Studio 2005以降では、コンソール・アプリケーションのプロジェクト・プロパティの[アプリケーション]タブを開き、C#の場合は[出力の種類]を「コンソール アプリケーション」から「Windows アプリケーション」に、Visual Basicの場合は[アプリケーションの種類]を「コンソール アプリケーション」から「Windows フォーム アプリケーション」に切り替えればよい。 ちなみにVisual Studio .NET 2002/2003では(Visual Basic、C#のどちらも)、コンソール・アプリケーションのプロジェクト・プロパティのダイアログで、[共通のプロパティ]-[全般]ツリーを選択し、[出力の種類]を「コンソール アプリケーション」から「Wi
Visual Studio 2005(以下、VS 2005)やVisual Studio 2008(以下、VS 2008)には、余計な表示や処理を省き、動作を速くするためのオプションがいくつか用意されている。ここではそのうち、起動に関するものを2つ紹介する。 なお以降ではVS 2008を用いて解説するが、VS 2005の場合でも操作は同じだ。 スプラッシュ・ウィンドウを非表示に VSの起動時には、IDEが表示される前に、画面中央にスプラッシュ・ウィンドウがまず表示されるが、これは非表示にできる。これには、devenv.exe(=Visual Studio本体の実行ファイル)を実行する際に「/nosplash」オプションを付ければよい。 通常、VSの起動は、Windowsの[スタート]メニューから[すべてのプログラム]-[Microsoft Visual Studio 2008]-[Micr
「TIPS:文字列を連結するには?」で解説しているように、StringBuilderクラス(System.Text名前空間)を使うと複数の文字列の連結を高速に行うことができる。 また、StringBuilderクラスには、Appendメソッド(文字列の追加)以外にも、Insertメソッド(挿入)やRemoveメソッド(削除)などが用意されており、あたかも文字のコレクション(集合)として、その文字列を操作できる。 しかし、コレクション系のクラス(例えばListジェネリック・クラス)にはたいてい存在する、コレクション内の要素をすべて削除するClearメソッドに相当するメソッドは、StringBuilderクラスには存在しない。StringBuilderオブジェクト内の文字列をクリアするにはどうすればよいのだろうか。 書き込み可能なStringBuilderクラスのLengthプロパティ Str
セットアップ・プログラムやClickOnce配置などを中心に、セキュリティ管理の手段としてデジタル証明書(Digital Certificate)を活用する場面が増えている。Windows OSにはデジタル証明書を一元管理する機能が搭載されており、これを操作/閲覧するためのツールとして「証明書MMCスナップイン」(certmgr.msc)が提供されている。 このツールは、通常「C:\Windows\System32\certmgr.msc」にインストールされており、起動すると次の画面のような「証明書MMCスナップイン」が表示される。素早く起動するには、[Windows]+[R]キーで[ファイル名を指定して実行]ダイアログを表示し、「certmgr.msc」と入力して[Enter]キーを押せばよい。 このツールを用いて手動でデジタル証明書をインストールするには、証明書MMCスナップイン(の左
.NET Frameworkによるプログラミングでは、Clipboardクラス(System.Windows名前空間)を用いて、テキストや画像をクリップボードにセットしたり、逆にクリップボードから取得したりできる。クリップボードの標準的なアクセス方法については、「TIPS:クリップボードへデータを送るには?」や「TIPS:クリップボードからデータを受け取るには?」などで解説している。 しかしながら、クリップボードの変更をリアルタイムに検知して、クリップボードの内容を取得するような処理は、Clipboardクラスだけでは実現できない。これには、Win32 APIに含まれるSetClipboardViewerという関数を呼び出すことにより、アプリケーションをクリップボードのビューアとして登録し、さらにWindowsメッセージを直接処理することで、クリップボードにデータが登録されたことを検知でき
連載目次 .NETでは、共有アセンブリ(=.DLLファイル)の配置場所としてGAC(グローバル・アセンブリ・キャッシュ)が提供されている。 従来、Windows用のプログラムは(バージョン管理機能を備えていない)通常のシステム・フォルダを共有場所として使っていたため、(主に何らかのプログラムをインストールしたときに)古いバージョンの共有.DLLファイルで、すでにインストールされている新しいバージョンの共有.DLLファイルが上書きされてしまい、既存のプログラムが正常に動作しなくなるなど、いわゆる「DLL地獄」の問題が発生することがあった。このような問題に対し、.NETではバージョン管理機能を備える共有アセンブリ管理システムとしてGACが提供されるようになった。 実際に、.NET Frameworkの基本ライブラリ(例えば「System.dll」ファイルなどのアセンブリ群)はGACで管理され、
WebサーバであるIIS 6.0に、(C#やVBで作るXAP形式の)Silverlight 2アプリケーションを配置する場合には、IIS 6.0の設定で、次の「MIMEの種類」(MIMEタイプ)の追加が必要となる*。 拡張子:.xap MIMEの種類:application/x-silverlight-app * Windows Vista RTMのIIS 7.0や、IIS以外のWebサーバ(Apacheなど)でSilverlight 2アプリケーションをホストする場合にも、このMIME設定は必要となる。Windows Vista SP1やWindows Server 2008のIIS 7.0では既定で設定されている。 「.xap」はSilverlight 2アプリケーション本体のファイルの拡張子である(実際にはこのファイルはZIP形式の圧縮ファイルで、アプリケーションのアセンブリやリソー
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く