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
]]>

HTML5でファイルを複数選択してアップロードする方法

HTML5 では input タグの属性に「multiple="multiple"」を追加するだけで、ファイル選択時に複数のファイルを選択できるようになります。

<input id="fileUpload"  name="fileUpload" type="file" multiple="multiple" />

HTML 4.01 の時は、複数のファイルをアップロードするのに、対応する数の input タグを配置しなければいけませんでした。

ただし、multiple 属性は Web ブラウザが対応していないと効果がありません。今のところ Google Chrome, Safari が対応されているようです。

 

ちなみに、ASP.NET で multiple 属性による複数ファイルがアップロードされた場合、Request.Files に選択されたファイルの数だけ HttpFileCollectionBase が格納されるようです。

]]>