ShellExecute will always open the file with the associated program --in your case, with Notepad.
Take a look at CreateProcess instead. This will allow you to specify the program to run and pass as argument the name of the file to open.
I don't have the time at the moment, but if you are still struggling with it later I'll give you an example.