Oh mann. Ich glaube du liest echt keine Antworten oder willst sie nicht lesen. Es wurde bereits von mehreren Usern gefragt, was denn ShellExecute für einen Rückgabewert hat. Es wäre sinnvoll wenn du solche Fragen beantworten würdest, damit man dir richtig helfen kann.
Das was mit der Powershell geht, funktioniert auch mit der Eingabeaufforderung. Zumindest dann, wenn du nur ein Programm aufrufen möchtest.
Ich frage mich, was diese unnötigen doppelten und dreifachen Anführungszeichen sollen. Du brauchst genau ein " vorne und ein " hinten um deine Exe auszuführen. Das wars. Alles was hintendran kommt wird automatisch als Parameter an deine Anwendung weitergegeben. Diesen Parameter kannst du dann auch nochmal mit jeweils einem Anführungszeichen vorne und hinten übergeben um sicherzustellen, dass das auch ankommt wenn Leerzeichen drin enthalten sind.
Ich hoffe das war jetzt nicht wertvolle Zeit die Toilette runtergespült und du beherzigst mal die Tipps die man dir gibt und gibst auch entsprechende Antworten darauf.