Как мне увеличить размер командной строки запуска запуска, чтобы увеличить цель - PullRequest
3 голосов
/ 22 февраля 2010

Я передаю параметры от запуска к моему приложению Windows. Я узнал, что вы не можете передать более 259 символов. У меня есть приложение Windows в C #, где я хочу передать аргументы. Сначала я приводил аргументы командной строки, используя enviorment.getcommandlineargs, который работал успешно. Теперь клиент выдвинул новое требование: вместо того, чтобы идти в командную строку и посылать аргументы, он будет отправлять из строки запуска (он не будет заходить в командную строку). Этот exe состоит из параметров, длина которых превышает 259 символов.

Как я должен справиться с этим сценарием.

Ответы [ 3 ]

5 голосов
/ 22 февраля 2010

Используйте файл конфигурации приложения, а не аргументы командной строки, если у вас столько настраиваемых элементов.

При необходимости вы всегда можете принять местоположение файла конфигурации в качестве аргумента командной строки.

1 голос
/ 22 февраля 2010

Ваше приложение всегда запускается вручную? Тогда, возможно, решением будет преобразовать его в приложение WinForms и показать пользователю диалоговое окно, в котором он может ввести параметры. Если ваша программа запускается иногда вручную, иногда программно, то лучшим решением может быть поддержка как: файла параметров, когда есть параметр командной строки, предоставляющий файл, так и диалогового окна, когда его нет.

Кстати, ваш пользователь уже столкнется с проблемами при попытке ввести более 259 символов в Start-Run-Box, он не принимает больше.

1 голос
/ 22 февраля 2010

Легкий выигрыш в этом случае - индивидуальная подрезка длины аргументов. Если вы не ожидаете, что пользователь запомнит значения аргументов, вы можете сократить ключи и значения.

например. Если ваше приложение ранее принимало что-то вроде myApp.exe myFirstParam=EnableGui mySecondParam=DataHere, вы можете легко сократить его до myApp.exe p1=1 p2=14. Эти сокращенные параметры могут быть добавлены в дополнение к версии longhnad, чтобы сохранить возможность запуска из командной строки с распознанными аргументами, но уменьшат количество символов, необходимых для новых параметров.

Конечно, может случиться так, что вы не сможете сократить значения в ваших параметрах, но более короткие клавиши могут помочь.

Всегда есть возможность вызова файла .bat / .cmd со всеми указанными параметрами. Это имело бы эффект, аналогичный предоставлению файла config xml, но без (по общему признанию тривиального) дополнительного требования к кодированию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...