-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ошибка Внешнее исключение (System.ArgumentException): Item has already been added. Key in dictionary: ‘HOME’ Key being added: ‘home’} #33
Comments
Выложил релиз 1.3.3, в которой включена подробная диагностика вызовов C# - по совету @EvilBeaver
посмотрим, чего народ сообщит. |
@artbear а чего там в движке? кинь ссылку на досаду |
Посидели с коллегой, у которого возникала проблема.
|
ScriptEngine.HostedScript.Library.ProcessContext.Create |
if (env != null)
{
foreach (var kv in env)
{
sInfo.EnvironmentVariables[kv.Key.AsString()] = kv.Value.AsString();
}
} |
Все, у меня идеи закончились. |
|
@artbear беда в том, что ПЕРЕД |
Сделал исправление - ОДНА СТРОЧКА :) |
Пока не выпустили движок, ошибки продолжают сыпаться. Придется сделать следующий костыль:
сегодня в метро на ноуте я это уже сделал :) но не успел проверить, т.к. доехал до нужной станции :) еще можно добавить проверку на версию движка - |
Т.е. на 19 это работало? |
На 19 этого кода в 1коммандс не было. |
Ну я же пользовался прекоммитом на 20-ке, все работало. |
@EvilBeaver у тебя мог быть старый 1коммандс. ииии этот баг проявляется не у всех. у меня, например, работает. суммарно было около десяти репортов за два месяца. |
У меня больше репортов - за последнюю неделю только 5 человек из команд обучения Enterprise обратились, и аналогичные проблемы у их коллег, т.к. машины и ПО одинаковые. |
как бы все логично, нет? :) |
Ок, фикс-то выпущен в коммандс? В движок внесен |
@EvilBeaver народ уверяет, что фикс движка не помогает. |
Пока мной после общения с тобой в 1коммандс внесен фикс, который показывает расширенную инфу (стек движка), и все :) У меня уже 2-й день не доходят руки закончить доработку #33 (comment) |
Выполнено в #34 |
Что обновить чтобы заработало? |
…рте нового процесса
Проблема возникает повторно. Переоткрываю. |
Проблема в том, что при запуске прекоммит1с изнутри команды git
Сейчас в 1коммандс я делаю заглушку (код сейчас запушу) ПравильныеПеременныеСреды = УникальныеЗначенияПеременныхСреды();
Попытка
Если КодировкаВывода = Неопределено Тогда
Процесс = СоздатьПроцесс(СтрокаЗапуска, РабочийКаталог, ПерехватыватьПотоки, ПерехватыватьПотоки, ,
ПравильныеПеременныеСреды);
Иначе
Процесс = СоздатьПроцесс(СтрокаЗапуска, РабочийКаталог, ПерехватыватьПотоки, ПерехватыватьПотоки,
КодировкаВывода, ПравильныеПеременныеСреды);
КонецЕсли;
Исключение
...
КонецПопытки;
Функция УникальныеЗначенияПеременныхСреды()
ПравильныеПеременныеСреды = Новый Соответствие();
СуществующиеПеременныеСреды = Новый Соответствие();
Для Каждого Переменная Из ПеременныеСреды() Цикл
Ключ = Переменная.Ключ;
Значение = Переменная.Значение;
Лог.Отладка("ПеременныеСреды()." + Ключ + " = " + Значение);
УникальныйКлюч = ВРег(Ключ);
Если СуществующиеПеременныеСреды.Получить(УникальныйКлюч) = Неопределено Тогда
СуществующиеПеременныеСреды.Вставить(УникальныйКлюч, Значение);
ПравильныеПеременныеСреды.Вставить(Ключ, Значение);
Лог.Отладка("Используем переменную среды - " + Ключ + " = " + Значение);
Иначе
Лог.Отладка("Пропущена переменная среды - " + Ключ + " = " + Значение);
КонецЕсли;
КонецЦикла;
Возврат ПравильныеПеременныеСреды;
КонецФункции и в логе видно ожидаемое
после чего прекоммит1с отрабатывает правильно. обход на самом деле нужно делать в движке при создании процесса аналогично коду ниже @EvilBeaver @nixel2007 @dmpas Сможете в движке поправить? @nixel2007 возможно, в ovm нужно сделать аналогичные правки. |
Нет, все-таки проблема во взаимодействий движка и АПИ запуска процессов в C# прикладным кодом не обойдешь. Остается только оставить сделанную мной ранее заглушку :(
@EvilBeaver @nixel2007 @dmpas починить бы движок как я написал выше :( |
Выпущен релиз 1.5.0 с обходом ошибки (из движка?) передачи переменных среды |
Приезжает ошибка от разных пользователей
Например,
Появилась в последнем релизе
виноват вызов
ПеременныеСреды()
при создании процесса.Единственный способ обхода - вернуться к предыдущему релизу :(
/cc @dmpas @EvilBeaver исправьте в движке, реально отравляет жизнь.
The text was updated successfully, but these errors were encountered: