デスクトップやマイドキュメントは、ログインしたユーザによってパスが変わります。

プログラムでも同様に、デスクトップにファイルを出力した場合に、それだと実装できない!

というこで、マイクロソフトはちゃんと用意してくれてます。

--- code -----------

string desktopPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Desktop);

---------------------

これでOKです。

あと、この文字列を煮るなり、焼くなり好きにすればいいということだ。

ちなみに、他の特殊なフォルダ(マイドキュメント等)を取得したかったら

System.Environment.SpecialFolde列挙体を変更すればOK

以下、他のサイトを確認!

http://msdn2.microsoft.com/ja-jp/library/system.environment.specialfolder.aspx