Получение необработанной (нерасщепленной) командной строки в .NET
В .NET мы можем легко получить доступ к разделенным аргументам командной строки в строковом массиве из аргументаMain(string[])
или жеEnvironment.GetCommandLineArgs()
, Однако есть ли способ получить непарсированную командную строку как одну строку?
Справочная информация: мое приложение добавляет себя в контекстное меню FileExplorer (как это делает Notepad ++). Когда он запускается таким образом, имя файла передается без кавычек, что означает, что если в пути есть пробелы, оно разбивается. Я знаю, что могу это исправить, обняв%1
в кавычках в реестре вродеmyapp.exe "%1"
, но когда я проверял реестр других приложений, они этого не делали. Они просто какnotepad.exe %1
- они получили полную командную строку. Я хочу знать, возможно ли это в .NET и как.