Windowsサービスとファイルパス

最近はWindowsサービス(以下WS)にを少し触っている.

WSの開発についてやWSをコンソールでデバッグする方法についての詳しい内容がを載せている先人がいたため,

ameblo.jp

参考にしつつ,コードを組んでいたが…

ほとんどの内容はコンソールと大差ないと考えていたら
ファイルパスがコンソール時のデバッグと動作が異なっていた.

始めは相対パスを使っていたが,WSとコンソールではもちろん動作するディレクトリが違うため,動作は異なる.

また,

Environment.GetFolderPath(Environment.SpecialFolder.Personal)

Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)

を使ったときに,ファイルパスが
C:\Windows\system32になってしまうため,気を付ける必要がある.