[XAML] 数字で始まるフォルダを作成して埋め込まれたリソースをいれるとパスがかわる

ちょっとハマってしまったのでメモ。

ソリューションのフォルダ構成で「XXXX/YYYY/000_ZZZZ」みたいなフォルダを作り、「000_ZZZZ」フォルダの中にリソース(XAMLとかmp3とか)を入れていました。リソースは「埋め込まれたリソース」として登録し、実行時に動的に読み込むようにしました。

この場合は「Assembly.GetManifestResourceStream」メソッドで読み込むことになるのですが、パス指定では以下の注意点が挙げられます。

  • パス区切り文字は「. (ピリオド)」になる
  • パスの最初に「名前空間」をいれ、ピリオドを挟んだ後プロジェクトのルートからの相対パスを書く
  • 大文字小文字は区別される

一応これらを注意して書いたのですが、実行時にどうしても null が返ってきてしまいます。

どうしてもわからなかったので「Assembly.GetManifestResourceNames()」メソッドで中身を調べてみたところフォルダのパスが「XXXX.YYYY._000_ZZZZ」のようになっていて数字から始まっているフォルダ名の最初に「_ (アンダースコア)」が追加されていました。とりあえず読込パスを同じようにアンダースコアを入れてみたところ正常に読む込むことができました。

ハマりそうなので注意が必要ですね。

]]>

SkyDrive for Windows 同期ツールが何度も再起動する件についての補足

ある特定の環境において SkyDrive for Windows 同期ツールが勝手に再起動を繰り返す現象に悩まされていました。

環境は以下のとおりです。

  • OS:Windows 7 Ultimate SP1 x64
  • メモリ:2.5GB (ただし動的メモリで最大8GBまで拡張可能)
  • 媒体:仮想OS (Hyper-V 3.0 ゲスト)

この件について、Microsoft Answersで「SkyDrive for Windows 同期アプリが何度も再起動する」という表題で質問したところ、Microsoftの回答としては「Hyper-V上のゲストOSではサポートしていない」とのことでした。

質問の件についてはいったんこれで終了したのですが、その後、原因っぽいのを発見しました。

SkyDrive はそのままインストールしていたのですが、フォルダ構成などを作り変えていたらいつの間にか SkyDrive が再起動することなく正常に動作していました。そしてフォルダの再構成として「シンボリックリンク」を使ってフォルダを作成したところ、SkyDrive がまた再起動を繰り返すようになってしまいました。

おそらくこの「シンボリックリンク」がSkyDrive が再起動する原因ではないかと思います。ただ、物理 PC の Windows 8 の環境ではシンボリックリンクでフォルダを作成しても特に再起動していなかったイメージがあったので、「仮想 OS 環境でシンボリックリンクを使う」または「Windows 7 環境でシンボリックリンク」を使うと SkyDrive が異常終了して再起動するのではないかと思います。

まあ、きちんと検証しているわけではないのであくまでも「想定」なんですけどね(^^;)

]]>

IIS 実行ユーザーで DCOM を使用して Excel を扱う方法 (Windows Server 2008, 2008 R2)

Windows Server 2008 や Windows Server 2008 R2 で ASP.NET プログラムから DCOM を使用して Excel を扱おうとしてもエラーがでて Excel を扱うことができません。これは IIS 実行ユーザーが Excel を使用するために必要なフォルダが Windows Server 2008, 2008 R2 に存在しないために発生する問題です。

IIS の実行ユーザーに依存するので、ASP.NET から直接 Excel を扱う場合や、ASP.NET から起動したプログラム(exe, bat, vbs 等)すべてに影響します。ちなみに Windows Server 2003, 2003 R2 ではフォルダが存在するためこの問題は発生しません。

 

この問題を回避するためには以下の箇所にフォルダを作成する必要があります。

 

[Windows Server が 32bit の場合] 、または [Windows Server が 64bit かつ Office が 64bit の場合]

  • C:WindowsSystem32configsystemprofileDesktop

Windows Server が 64bit かつ Office が 32bit の場合

  • C:WindowsSysWOW64configsystemprofileDesktop
]]>

オンラインストレージ リアルタイムファイル同期サービス その2

前回4月に一度書いたのですが、クラウドが流行なせいか新しいオンラインストレージサービスが次々とでき、既存のサービスも改良されていったりととても速いスピードで変化していってます。

今回は新しい物も含めて比較表を書いてみたいと思います。とりあえず条件としては

  • 無料枠
  • ローカルフォルダとオンラインストレージ自動同期
  • 制限がきつくないもの、使いにくいものは除外

であげてみたいと思います。(表が右で切れている場合もあるのでブラウザを拡大してください)

サービス名

SugarSync

Windows Live Mesh 2011

Dropbox

ZumoDrive

Nドライブ

KDrive

ドライビー

登録URL

登録URL

登録URL

登録URL

登録URL

登録URL

登録URL

登録URL

無料登録のストレージ容量

5 GB : 初期容量
500MB×無限? : ユーザー紹介

5 GB : 初期容量

2GB : 初期容量
+250MB×32人 : ユーザー紹介により
+250MB : Dropboxを始める完了後 (誰でも可)
+~640MB : Dropboxキャンペーン完了後 (今だけ?)

1GB : 初期容量
+1GB : Dojo完了後 (誰でも可)
+250MB×20人 : ユーザー紹介により

30 GB : 初期容量

2 GB : 初期容量
+512MB×16人 : ユーザー紹介により

3 GB : 初期容量

無料枠最大容量

無制限

5 GB

約 20GB (時期により変動)

7 GB

30 GB

10 GB

3 GB

有料登録のストレージ容量

30GB ~ 500GB

なし

50GB ~ 100GB

10GB ~ 500GB

なし

30GB ~ 100GB

なし

同期フォルダ指定

・場所自由
・複数指定可
・デフォルトで固定フォルダがひとつ作成される

・場所自由
・複数指定可

・場所自由
・1つのみ指定

・場所自由
・複数指定可
・ドライブレターを一つ消費する

・ドライブレターのみ

・ドライブレターひとつ消費、または指定フォルダ1つのみ

・ドライブレターのみ (WebDAV 使用)

日本語対応

完全対応

完全対応

完全対応

完全対応 (初期表示は英語、一部日本語訳が変)

完全対応

完全対応

完全対応

クライアント管理ツール

あり

あり (ただし、フォルダの一覧を表示、作成などの簡易ツール)

設定ツール

設定ツール

設定ツール

設定ツール

なし

Web 管理ツール

あり

あり (簡易機能)、SkyDrive と併用

あり

あり

あり

あり

あり

制限

       

・最後のログインから3年でファイル削除

 

・90日間無アクセスでファイル自動削除(?)
・1ファイル2GBまで

その他

・スマートフォン対応

・お気に入り, Office テンプレートの設定同期
・オンラインストレージを使用しない PC 間ファイル同期。容量制限なし
・SkyDrive 併用ファイル保管用の 25GB のストレージ枠。
・リモート接続機能

・スマートフォン対応

・スマートフォン対応

・スマートフォン対応

・スマートフォン対応

・スマートフォン対応

]]>

オンラインストレージ リアルタイムファイル同期サービス

2011年3月11日の東日本大震災のようにパソコンや HDD がすべて津波で流されたなど、いくらローカルでバックアップ体制をとっていてもデータが損失してしまう事態が起こる可能性がでることが否定できない状態になっています。これを機会にデータをオンラインのデータセンターなどにバックアップしておきたいという需要が震災前よりも出てきたのではないかと思います。

とまあ一応前置きとして震災のことについて書きましたが、それ以外の意味合いでも複数のPCでのファイル自動同期はかなり便利なのでこれらのオンラインサービスはどんどん普及すると思います。

2,3年前ぐらいは「Dorpbox」がこのサービスで有名になり持てはやされていましたが、今となっては他にもいろいろなオンラインストレージサービスが立ち上がってきたため、今まで優位に立っていた Dropbox も容量や日本語対応などいくつかの部分で他のサイトよりも若干遅れをとっている状態になったようにも思えます。

そこで今存在するファイル同期オンラインサービスからいくつか試したものがあるので簡単に比較表を載せたいと思います。あまり詳しくまでは調べていないので Windows 限定であることと、日本人なので日本語に対応しているサイトについて載せています。また、1GB など容量が小さいものも省いています。

サービス名

SugerSync

Windows Live (Mesh)

Dropbox

4shared

ZumoDrive

登録 URL 登録 URL 登録 URL 登録 URL 登録 URL 登録 URL
無料登録のストレージ容量 5 GB 5 GB 2 GB 10 GB 1GB ~ 2GB (いくつか手順を踏むことによって 2GB になる)
有料登録のストレージ容量 30GB ~ 500GB なし 50GB ~ 100GB 100GB 10GB ~ 500GB
フォルダ指定
  • 場所自由
  • 複数指定可
  • デフォルトで固定フォルダがひとつ作成される
  • 場所自由
  • 複数指定可
  • 場所自由
  • 1つのみ指定
  • 場所自由
  • 1つのみ指定(複数指定可だが、同じファイルが同期されるだけ)
  • 場所自由
  • 複数指定可
  • ただし Z ドライブなどドライブレターを一つ消費する
日本語対応 完全対応 完全対応 未対応 対応 (Web は一部英語) 完全対応 (初期表示は英語、一部日本語訳が変)
クライアント管理ツール あり あり (ただし、フォルダの一覧を表示、作成などの簡易ツール) 設定ツール あり 設定ツール
Web 管理ツール あり あり (簡易)、SkyDrive と併用 あり あり あり
その他
  • スマートフォン対応
  • お気に入り, Office テンプレートなどの設定同期
  • オンラインストレージを使用しない P2P による PC 間ファイル同期もあり。こちらは容量制限なし
  • SkyDrive 併用であるため、登録すると同期ストレージ枠とは別にファイル保管用の 25GB のストレージ枠が使用可。
    • スマートフォン対応
  • 同期システムはベータバージョン
    • スマートフォン対応
私感 インターフェースとかわかりやすい感じがします。
無料ストレージ枠も大きいのでおすすめかも。
管理インターフェースは簡易的なものしかありませんが、
ファイルをフォルダに入れれば自動的に同期されるのであまり問題なし。
それよりもファイルサイズ無制限で PC 間同期の方が魅力。
同期パフォーマンスがいい。
ただしでかいファイルを同期すると CPU 処理を一時的に持って行かれることも。
使用事例は多い。
Web やクライアントのインターフェースがわかりにくいかも。
容量が大きいのは魅力なのですが…。
以前は 1GB のみで Z ドライブにしか同期できない、
必要なときにしかファイルがダウンロードされないなどがありましたが、
今は他のサービスに引けを取らないぐらいになりました。

私の場合、いままではストレージの同期として Dropbox のみを使っていて、PC 間のファイル同期としてはファイルサイズ制限のない Windows Live Mesh を使っていました。Windows Live Mesh の P2P によるファイル同期は PC が 立ち上がってないと同期されないので古いファイルが混在する可能性があるのですが、ひとつ同期用サーバーとして常時立ち上げていれば、ファイル数、ファイルサイズに制限がないファイル同期ができるので今でも主力で使っています。

ひとつひとつのオンラインサービスだと上限 5GB ほどなので足りないように思えるかもしれませんが、複数のサービスで登録すれば数十GBぐらいにはなるかと思います。ただ、ファイルがいろんな場所に点在する可能性があるので、1か所にまとめたいのであれば有料版の使用も考えてもいいかもしれません。まあ Windows Live Mesh のときのようにひとつファイル同期サーバー作ってしまえば無料版だけでもファイルを1か所にまとめることもできたりしますが(^^)

]]>