Ответы пользователя по тегу C#
  • Как сделать форму более отзывчивой?

    mindtester
    @mindtester Куратор тега C#
    http://iczin.su/hexagram_48
    раз уж тишина в теме, то я по памяти из winforms - покопайте эвенты перехвата фокуса, выхода на передний план, активации - и формы, и контролов

    кроме OnClick, есть всякие ControlChangeUICues, GotFocus и так далее - ответ где то там

    в частности вы явно говорите о клике мышкой - поймайте под отладкой MouseClick формы и/или контрола, где он там происходит при первом клике и поближе к контролу, оттуда и смотрите какие эвенты контрола пройдут в цепочке события и что можно отследить и как отреагировать
    Ответ написан
    2 комментария
  • С чего лучше начинать изучать технологию создания сайтов на c#: ASP.NET или ASP.NET MVC для дальнейшего трудоустройства?

    mindtester
    @mindtester Куратор тега C#
    http://iczin.su/hexagram_48
    "Я слышал, что ASP.NET умер в 2016 году" - я это слышу лет 10...

    для конкретного решения небольших задач, это отличный выбор по сей день. но надо просто разобраться в достоинствах и недостатках

    ASP.NET MVC - это скорее тренд, особенно для трудоустройства

    тем не менее, мой совет - если Вы разберетесь в нюансах сами, и будете уметь применять и то и другое, в зависимости от ситуации, и аргументировать выбор - именно тогда ваша стоимость на рынке труда будет выигрышной
    Ответ написан
    2 комментария
  • Какую студию использовать?

    mindtester
    @mindtester Куратор тега C#
    http://iczin.su/hexagram_48
    основные причины использования старых студий:

    1 - большие проекты - трудно (или все тупо в лом) переделывать, не редко еще и зависимость от сторонних проектов, которые авторы уже не поддерживают - кроме зависимостей от версий фреймворков, если еще зависимости от компиляторов и средств построения. для примера попробуйте познакомиться с проектом mpir.org - крутая математика для .NET, но так как разрабатывается комунити - всегда отстает на одну две версий студии. адаптировать ее самостоятельно под последнюю версию - мягко говоря совсем не тривиально

    2 - проекты, которые трудно вести в экспресс (бесплатный) студиях (на пример требуются продвинутые возможности коллективной работы) + политика фирмы не позволяет использовать пиратское ПО, а на обновления проф/ультимейт студий, деньги не выделяю (на самом деле 2013 уже есть продвинутая комунити студия доступная бесплатно, но это еще не у всех уложилось в головах + глобальные переходы сами по себе, все равно требуют больших усилий)

    3 - просто старое железо и не особо большие проекты - новые студии будут еще ворочаться, а старые летают

    а для дома/для души - каждый решает сам

    естественно для развития полезно работать в последней студии - работа с разными версиями расширяет кругозор

    а брать работу на дом - это само по себе признак низкой эффективности и плохой организации собственного труда

    но в некоторых случаях можно иметь дома разные версии студий - в виртуальных машинах или в разных копиях винды с мультизагрузкой. на пример если для работы надо 2010, для использования проекта типа mpir - 2012, для общего развития - 2015, и тд...

    лучше всего ставить разные студии в разных копиях винды (виртуальных машинах), некоторые версии в принципе не могут работать корректно вместе. так же можно некоторые версии ставить экспресс для экономии ресурсов, это зависит уже от предполагаемых задач для этой версии
    Ответ написан
    Комментировать
  • Отследить событие входа в систему windows из c#?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    можно еще прописать нужную программу как winlogon script в политиках, это будет действовать на всех пользователей, в т.ч. на новых

    Выполнить->gpedit.msc -> Local Computer Policy -> User Configuration -> Windows Settings -> Scripts (Logon/Logoff)

    если нужно что бы не было засветки на экране, надо делать не консольное приложение (и тем более не батник) а к примеру winform приложение, но без главного окна или стартующее с окном в состоянии "скрытое"

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

    ps - как вариант можно с каким то интервалом времени читать журнал безопасности и парсить события входа в систему

    надо понимать что в любом случае скрыться от админа практически невозможно

    к примеру тулза AutoRuns покажет "инородное тело" в системе при любом способе авто запуска - меню "автозапуск", реестр - любые ветки, сервис, драйвер, шедулер, политика... хотя вот сейчас посмотрел и с ходу не увидел... проверил - забавно, как раз политику похоже AutoRuns и не показывает...

    pps - ну не факт что для этого надо изобретать целый сервис

    тогда можно изначально запустить нужную программу как сервис

    к примеру есть библиотека для запуска для запуска отлаженой консольной программы c# как сервиса - https://github.com/Topshelf/Topshelf

    ppps - не совсем понятно зачем строить сервис - целевое приложение не может работать в бэкграунде? (его сразу можно было бы запускать как сервис, способов много, в т.ч. для готовых приложений.. в большинстве случаев по крайней мере...)

    или приложение требует интерактива с пользователем?

    можно просто создать батник в автозагрузке, для запуска всегда от имени конкретного логина - runas к Вашим услугам

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

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

    pppps - ... возможно надо уточнить - если приложение ВАШЕ (в исходниках) - ну в конце концов - сделайте само приложение сервисом и запускайте от имени системы (к примеру)... если оно интерактивное.. - да тоже самое - любой удобный способ автозапуска, но от имени нужной учетки... кстати, в том числе от имени системы тоже
    Ответ написан
    Комментировать