[seasar-dotnet:703] Re: [S2Container]WindowサービスでのApp.diocnの設置場所について

Takafumi Yoshida [E-MAIL ADDRESS DELETED]
2007年 12月 17日 (月) 11:49:19 JST


いつもお世話になります。吉田@オプティクスです。

07/12/17 に Kazuya Sugimoto<[E-MAIL ADDRESS DELETED]> さんは書きました:
> 杉本です。
> Diconファイルは相対パスの指定も可能なのですが、見つからないということは
> アプリケーションのカレントディレクトリが別になっているのかもしれません。
>
> Windowsサービスについて詳しくないので間違っているかもしれませんが、
> Windowsサービスとして起動するとカレントディレクトリがWindowsアプリケーション
> とは違う場所になっているのではないでしょうか?

System.IO.Directory.GetCurrentDirectory()でカレントディレクトリを取得すると
%WINNT%\system32
になっていました。
Windowsサービスとして起動した場合は、svchost経由で起動されるためにこのような
ことになっているようですね..

そこで、サービス起動時に、
System.IO.Directory.SetCurrentDirectory(System.AppDomain.CurrentDomain.BaseDirectory);
として希望の動作にすることができました。

ありがとうございました。


seasar-dotnet メーリングリストの案内