Use the VI Name property instead. Open VI reference will use the string and load the VI in memory, which is the the one used by the static VI reference.
Again, use Name, not Path. It will return a string, which Open VI Ref will take, and open the VI in memory, regardless of where it is on disk.
Can you please post the entire VI, not just tiny screenshots of it?
Also can you tell us the error number and text that come out of the "Open VI" node when it fails?
Can you also tell us what you want to do? Why are you jumping through these hoops rather than simply calling the sub-VI itself? Are any of these scenarios correct?
Seeing the existing code (attach the VI, or if it is part of a Project, compress the folder containing the Project files and attach the resulting .ZIP file) would really help.
There are multiple ways to approach this however if you are trying to access an executable or VI on a different machine you will need to use a relative file path to access the file. This will allow you to search the other computer's directory for the file, one example of how this can be done is in the code snippet below. You will need to build the file bath, open the reference, perform an action, and then lastly close the reference.