Obtendo a linha de comando raw (unsplit) no .NET
No .net, podemos acessar facilmente argumentos de linha de comando divididos em uma matriz de strings a partir do argumento deMain(string[])
ouEnvironment.GetCommandLineArgs()
. No entanto, existe uma maneira de obter a linha de comando unparsed como uma seqüência de caracteres?
Background: meu aplicativo está se adicionando ao menu de contexto do FileExplorer (como o Notepad ++). Quando é lançado dessa maneira, o nome do arquivo é passado sem aspas, o que significa que, se houver espaços no caminho, ele será dividido. Eu sei que posso consertar isso por abraçar%1
entre aspas no registro comomyapp.exe "%1"
, mas quando eu verificar o registro de outro aplicativo eles não fizeram isso. Eles são simples comonotepad.exe %1
- eles obtiveram a linha de comando completa. Eu quero saber se é possível no .NET e como.