Obtención de línea de comando sin procesar (unsplit) en .NET

En .NET, podemos acceder fácilmente a los argumentos de línea de comando divididos en una matriz de cadenas desde el argumento deMain(string[]) oEnvironment.GetCommandLineArgs(). Sin embargo, ¿hay una manera de obtener la línea de comando sin analizar como una cadena?

Fondo: mi aplicación se está agregando al menú contextual de FileExplorer (como hace Notepad ++). Cuando se inicia de esta manera, el nombre de archivo se pasa sin comillas, lo que significa que si hay espacios en la ruta, se descompone. Sé que puedo arreglar esto abrazando%1 entre comillas en el registro comomyapp.exe "%1", pero cuando verifico el registro de otra aplicación no lo hicieron. Son simples comonotepad.exe %1 - Tienen la línea de comando completa. Quiero saber si es posible en .NET y cómo.

Respuestas a la pregunta(2)

Su respuesta a la pregunta