2010年4月1日木曜日

x64 DCOM 問題解決

つい先日、長い間頭を悩ませた問題が解決した。
Excel を DCOM で制御するプログラムがあったんだけど、x64 の Windows Server 2008 だとファイルのオープンに失敗するという謎の現象があった。
普通に Excel.Application オブジェクトを使ってファイルを Open するだけで例外が発生する。
x86 や Windows Server 2003 だと大丈夫。

結構調べて解決せず、まあサーバOSだからなーとか諦めていたんだけど、偶然見つけた掲示板に解決がありました。




Excel 2007 automation on top of a Windows Server 2008 x64

どうやら従来は存在していたフォルダが Windows Server 2008 では存在していないらしく、そのフォルダを参照する処理で Excel がエラーを出して例外を上げている可能性が高い様子。

Windows Server 2008 x64 の場合以下のフォルダを作成。
C:\Windows\SysWOW64\config\systemprofile\Desktop

x86 の場合は以下のフォルダを作成
C:\Windows\System32\config\systemprofile\Desktop

半信半疑でフォルダを作成して実行すると・・・

なんとすんなり動きました!
H Ogawa さん、グッジョブです。


0 件のコメント:

コメントを投稿