C#で、実行時ディレクトリを取得する方法
EXE絶対パス
String _location = System.Reflection.Assembly.GetEntryAssembly().Location;
上記で、exeファイルの絶対パス付きで返ってきます。
ディレクトリ名だけ取り出す
String _dname = Path.GetDirectoryName(_location);
_locationはexeファイルの絶対パスとしています。
プロセス名表示
System.Diagnostics.Process.GetCurrentProcess().ProcessName
実行しているプロセス名
ファイル名の拡張子変更
string logfilename = Path.ChangeExtension(Path.Combine(_dname, System.Diagnostics.Process.GetCurrentProcess().ProcessName ), ".txt");
絶対パスファイルの拡張子を変更するには、Path.ChangeExtensionを使います。
プロセス名取得はProcess.GetCurrentProcess().ProcessNameを使っています。

