Во-первых, и наиболее очевидно, что вам нужно связать расширение файла с приложением либо «открыть с помощью» в оболочке, через установщик или непосредственно в реестре.
MSDN - Рекомендации по сопоставлению файлов
Тогда оттуда все довольно просто.
static class Program
{
[STAThread]
static void Main()
{
string[] args = Environment.GetCommandLineArgs();
string text = File.ReadAllText(args[1]);
// ...
}
}
- args [0] - путь к приложению.
- args [1] будет путем к файлу.
- args [n] будет любыми другими переданными аргументами.
Случайно, я не могу найти ни одного примера, который бы показывал все это вместе, но у Скотта Хансельмана есть хороший пример загрузки файлов через одно приложение WinForms, примерно то же самое ...
http://www.hanselman.com/blog/CommentView.aspx?guid=d2f676ea-025b-4fd6-ae79-80b04a34f24c