How does your HViewer "know" which file to open?
Typically for such purposes a commandline parameter can be passed (see ParamCount/ParamStrUtf8() ).
If HViewer can handle that (commandline parameters), then you in your calling program you can add the filename to TProcess.Parameters.
Bart