Я работаю над приложением в C # 4.0 (VS2010), и у меня очень странная ситуация. Мне сообщают об ошибке от всей команды, и я всегда не могу воспроизвести ее, пока один из других разработчиков не сказал мне дважды щелкнуть исполняемый файл и следовать сценарию ошибки вместо запуска с VS2010.
После некоторых исследований я обнаружил, что большинство комментариев по этой проблеме касаются неинициализированной кучи памяти и т. П., Но в контексте C ++. Я знаю, что C # выдает ошибку , а не предупреждение, если переменная остается неинициализированной, так что, скорее всего, это не проблема.
Обе сборки одинаковы как на моей машине, так и на пользователях, и теперь я знаю, что нажатие F5 (начать с отладки) не приводит к проблеме, тогда как Ctrl + F5 делает Таким образом, вопрос не в разнице между ними (другие вопросы уже рассмотрели это), а в том, как присоединение отладчика к процессу C # может повлиять на его поведение?!
Код создает соединение по сети.