Парсер синтаксиса командной строки Windows ведет себя так же, как вы говорите, разбивается на пробел, если перед ним нет закрытой цитаты. Я бы рекомендовал написать парсер самостоятельно. Что-то вроде этого возможно:
static string[] ParseArguments(string commandLine)
{
char[] parmChars = commandLine.ToCharArray();
bool inQuote = false;
for (int index = 0; index < parmChars.Length; index++)
{
if (parmChars[index] == '"')
inQuote = !inQuote;
if (!inQuote && parmChars[index] == ' ')
parmChars[index] = '\n';
}
return (new string(parmChars)).Split('\n');
}
Из MDN в window.onerror
:
Когда функция возвращает
true
, это предотвращает срабатывание обработчика событий по умолчанию.
См. Также хром Issue 92062 : strike>
В Chrome возвращение
true
из window.onerror позволяет распространять ошибку и возвратfalse
подавляет его.Это обратное поведение в Firefox и IE, где возвращение «true» подавляет ошибку, но возвращение
false
распространяет ее.
Примечание: проблема, упомянутая выше, была исправлена, поведение теперь такое, как упомянуто в MDN для всех браузеров.