アプリケーションのあるディレクトリを調べる方法
CompactFrameworkでアプリケーションのあるディレクトリを調べる方法について、ちょっと前に色々調べて、ごそごそやったのだけども*1、ずいぶんと簡単な方法があることを発見した。
http://www.microsoft.com/japan/msdn/mobility/prodtechinfo/devtools/netcf/FAQ/default.aspx#7.1
ここによると、
//C# using System.Reflection; using System.IO; // 次の場合は、完全なディレクトリと exe 名になります。 String fullAppName = Assembly.GetExecutingAssembly().GetName().CodeBase; // 次の場合は、exe 名が除外されます。 String fullAppPath = Path.GetDirectoryName(fullAppName);
という事らしい。簡単すぎる。あのときの苦労はなんだったんだ。
リンク先は色々と書いてあって良い感じ。
ま、これじゃなくて本当に調べてる方のは見つからなかったのだけれども。
*1:DllImportでGetModuleFileNameってのを使ってやった。