Ответы пользователя по тегу .NET
  • C# изменить иконку exe?

    Nipheris
    @Nipheris Куратор тега C#
    Попробуйте www.bome.com/products/restorator или ResHacker, насколько мне известно у .net-сборок ресурсы лежат также, как и в нативных файлах, т.е. проводник их ищет по тем же идентификаторам. Открываете файл - заменяете иконку, сохраняете, смотрите результат. На всякий случай проверьте, чтобы размеры совпадали у новой и старой иконок.
    Ответ написан
    Комментировать
  • Почему возникает ошибка доступа к контролу из другого потока?

    Nipheris
    @Nipheris Куратор тега C#
    > Объект, работающий с SerialPort находится в отдельном потоке?

    Цитирую из https://msdn.microsoft.com/en-us/library/system.io... :

    The DataReceived event is raised on a secondary thread when data is received from the SerialPort object. Because this event is raised on a secondary thread, and not the main thread, attempting to modify some elements in the main thread, such as UI elements, could raise a threading exception. If it is necessary to modify elements in the main Form or Control, post change requests back using Invoke, which will do the work on the proper thread.

    А вообще, если есть еще какая-то логика обработки данных, приходящих из порта, то лучше вызывать ее в ивенте DataReceived, и уже в ней, после необходимой обработки, отправлять более высокоуровневые сообщения в GUI-поток через какую-нибудь очередь сообщений, например организованную с помощью ConcurrentQueue. Тогда ваш GUI-поток будет дергаться не по приходу пары байт, а тогда, когда вам самим это будет нужно. Но это уже архитектурный вопрос, который я вас советую продумать, если у вас не одноразовая лаба.
    Ответ написан
  • Как работают Action в Контроллерах когда к ним обращаются сразу несколько пользователей?

    Nipheris
    @Nipheris Куратор тега C#
    Никаких lock-ов в экшене не будет (если вы их сами туда не поставите), и не нужно им там быть. Дефолтовая фабрика контроллеров создает инстанс контроллера на каждый запрос, поэтому 99 пользователей одного ждать не будут. Если нужны подробности - ищите в гугле "asp.net mvc controller instancing", вываливается масса статей с которых можно начать разбираться.
    Ответ написан
  • C# отключение звука в программе?

    Nipheris
    @Nipheris Куратор тега C#
    Попробуйте воспользоваться WinAPI функцией waveOutSetVolume. Вроде как начиная с Висты, вызов функции приводит к заданию уровня громкости для конкретного приложения. Если не сталкивались ранее с вызовами WinAPI - почитайте о P/Invoke.
    Ответ написан
    Комментировать
  • Какую студию использовать?

    Nipheris
    @Nipheris Куратор тега C#
    Сидим до сих пор на 2008-й студии (большой проект на C++), пытались перейти года два назад на 2012-ю, но не смогли из-за проблем поддержки продукта под Windows XP - были проблемы с работой рантаймов. Майкрософт их потом вроде пофиксил, но мы уже не стали второй раз пытаться. Теперь ждем, когда пользователи слезут с XP. А в 2012-й только дампы смотрим и профайлимся.

    C .NET-ом в этом плане намного проще, в студии сейчас есть возможность выбирать в качестве целевой платформы любой фреймворк, начиная с 2.0, поэтому обновиться в большинстве случаев не проблема.
    Ответ написан
    Комментировать