Musiałbyś obsługiwać w programie parametry, jakie otrzymuje program zaraz po uruchomieniu - tylko tak system operacyjny może przekazać plik (ścieżkę do niego) do programu, aby ten go otworzył.
Sprawdź, z jakimi argumentami uruchamia się Twój program, kiedy próbujesz otworzyć plik przez systemowo skojarzony program. :)