That's complicated, because Windows isn't set up to do that for you - apps should accept a command line argument, but once they are running you can't add to or otherwise change that collection.
So your app has to be "aware": when it starts, it checks for and existing instance (which is pretty easy:
A simple way to ensure only one instance is running.[
^] should help) and if one is, then talk to it and transfer the file data.
A Socket in a separate task permanently listening for connections should do it.