There is one way to do it, that I know of.
You could execute a cmd command to start chrome which will start it without a path to it. Most apps have a shortcut you can use via the "Run Dialog" or CMD.
This code will execute the start command for chrome, if it is installed.
You can make it a try catch statement if it cant find chrome for example it will just throw an error for the user etc.
string cmdCommand = "/C start chrome";
System.Diagnostics.Process.Start("CMD.exe", cmdCommand);
This code can also work for other apps that can be run via the run dialog with one shortcut for example, explorer.exe or just explorer.
If you have any other questions or errors, please provide some debugging data for example: errors, your VS Version the framework you are on etc.
Edit: You can also run a link just by using Process.Start
but it will start it in the default browser instead.
System.Diagnostics.Process.Start("https://google.com/");
If you want to run your own apps or other programs you would need the full path of the app.
Edit 2: There is one possibility to do this, it involves creating a try catch statement where it would search from the C:\ Directory for any files with the specific name eg. chrome.exe, this would take too long and it would be a pain to also implement the searching, if possible of other drives, Ignoring CD/DVD drives etc.
I'm not sure what you are making but I will try to find a solution to this with what I explained.
//code for the solution, coming soon
Edit 3: after a long time of searching and also kind of forgetting this, It really doesn't make sense to make such a solution as it is too complex and requires too much for a simple 'app opener'.
Tested on a default C# Windows Form on the .NET Framework 4.7.2 in Visual Studio 2019 on Windows 10 Pro 64-Bit