|
.NET TIPS 分離ストレージの容量を調べるには?[C#、VB]デジタルアドバンテージ 一色 政彦2007/05/31 |
![]() |
|
|
|
分離ストレージには利用可能な容量に制限がある。この容量制限(以降、ディスク・クォータ)はセキュリティ環境(例えばInternetゾーン)などによって異なるため一概には判断できないので注意が必要だ(分離ストレージについては「TIPS:分離ストレージを活用するには?」を参照されたい)。
ディスク・クォータを調べる方法には「ツールによる方法」と「コードによる方法」があるので、それぞれ解説しよう。
ツールによりディスク・クォータを調べるには?
ディスク・クォータを調べるには、「Microsoft .NET Framework x.x 構成」(x.xには1.0、1.1、2.0などの.NET Frameworkのバージョン番号が入る)というツールを利用すればよい。なお、このツールは.NET Framework SDKに付属するものであるため、あらかじめ(.NET Frameworkのバージョンに合った).NET Framework SDKをコンピュータにインストールしておく必要がある(※Visual Studioをインストールするとオプションによっては自動的に入る)。
次の画面は実際に「Microsoft .NET Framework 2.0 構成」を利用して、Internetゾーンにおけるディスク・クォータを調べているところだ。
上記の画面の例では、ディスク・クォータが512000Bytes(=500KBytes)なのが分かる。
この値はプログラミング・コードから取得することもできる。
コードによりディスク・クォータを調べるには?
(プログラムに割り当てられた)分離ストレージ環境のディスク・クォータのサイズ(全容量)は、分離ストレージ環境を表すIsolatedStorageFileオブジェクト(System.IO.IsolatedStorage名前空間)のMaximumSizeプロパティから取得できる。また、すでに使用済みの容量はCurrentSizeプロパティから取得できるので、MaximumSizeプロパティの値からCurrentSizeプロパティの値を引けば、分離ストレージの空き容量が求まる。
次のコードは実際に、「全容量」「使用済みの容量」「空き容量」を調べて、それぞれの値をコンソール上に表示するサンプル・プログラムだ。
|
||
| ディスク・クォータの容量を調べるサンプル・プログラム(上:C#、下:VB) |
このサンプル・プログラムをInternetゾーンで実行すると、筆者の環境では次のような出力が得られた。
|
|
| サンプル・プログラムのInternetゾーンでの実行結果 | |
| Visual Studio 2005でプログラムをデバッグする際に、そのプログラムをInternetゾーンのセキュリティ環境で実行するには、プロジェクト・プロパティの[セキュリティ]タブで、[ClickOnce セキュリティ設定を有効にする]チェックボックスにチェックを入れ、[これは部分的に信頼するアプリケーションです]ラジオボタンを選択し、[アプリケーションがインストールされるゾーン]コンボボックスで「インターネット」を選んだうえで、プログラムをデバッグ実行すればよい。なお従来のVisual Studio .NET(2002/2003)にはこの機能はない(参考:「特集:ノータッチ・デプロイメント」の「インターネット・ゾーンでテストする方法」)。 |
ちなみに、ディスク・クォータを超えて分離ストレージ環境にデータを書き込もうとすると、「クォータが完全に使用されています。 (HRESULT からの例外: 0x80131485)」というメッセージのIsolatedStorageException例外(System.IO.IsolatedStorage名前空間)が発生する。![]()
| カテゴリ:クラス・ライブラリ 処理対象:分離ストレージ 使用ライブラリ:IsolatedStorageFileクラス(System.IO.IsolatedStorage名前空間) 使用ライブラリ:IsolatedStorageFileStreamクラス(System.IO.IsolatedStorage名前空間) 関連TIPS:分離ストレージを活用するには? |
|
||||||||||||||||||||
| 「.NET TIPS」 |
TechTargetジャパン
- 新人プログラマーのためのInsider.NETの歩き方 2012 (2012/5/22)
晴れて.NETプログラマーとなる新人が効率的に開発技術を習得するには? 大量にある記事群の中から新人が読むべきお勧めを厳選して紹介 - jQuery MobileでJavaScriptプログラミング (2012/5/17)
jQuery Mobileは手軽なだけでなく、JavaScriptのAPIも充実しており、独自機能の実装もできる。今回は「グローバル設定」と「イベント」を解説 - Windows上で開発するための開発環境構築入門 (2012/5/16)
Windowsを使ってチームで開発している? なのにサーバOSを設定・運用した経験がない? そうなら、今すぐ学ぼう - 「コントラクト」でアプリのサンドボックスを乗り越える! (2012/5/11)
Metroスタイル・アプリはサンドボックスの中で動作する。それを乗り越えてほかのアプリと連携する仕組み「コントラクト」を解説
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -



