• Как считать аргументы командной строки?

    Rou1997
    @Rou1997
    Во-первых, индексация массивов в C# начинается не с 1, а с 0, могли бы убедиться что это верно и для аргументов, обнаружив, что args[1] возвращает второй, а не первый аргумент.
    Во-вторых, по-правильному в любом случае нужна проверка на наличие каждого аргумента, его может и не быть, программа должна не "вылетать", а выдавать "user-friendly" описание ошибки и завершаться.

    В тестовом задании

    Тестовое задание при учебе или при устройстве на работу?
    Если второе, то... хм, однако. :)
    Ответ написан
    4 комментария
  • Что означает открыть/закрыть соединение и почему это операция дорогая?

    Rou1997
    @Rou1997
    Отправить серверу TCP/IP-пакет о открытии или закрытии соединения, при открытии сервер создаст новый сокет и можно будет отправлять данные и опрашивать его (принимать данные), при закрытии удалит сокет, операция никакая не особо медленная, ведь сами пакеты почти пустые а открытие/закрытие сокета на самом сервере не занимает много времени, но все-таки сколько-то времени операция занимает поэтому в идеале лучше без нее.
    Ответ написан
    Комментировать
  • Как вы планировали своё учебное время?

    Rou1997
    @Rou1997
    Никак не планировал, что хотел, то и изучал, если это практика то это вполне естественный процесс для мозга и не надо в него вмешиваться, а если для вас первична не практика, а теория, то есть вы "зубрите", то это само по себе "извращение" и ничего хорошего не будет.
    Сейчас вот я работаю, и по-прежнему изучаю новое, 90% это то что нужно для работы, у меня теперь и возможности нет ставить жесткие планы по часам, и не нужно это, какие часы если работа творческая и не знаешь с какими трудностями столкнешься, тут с неделями бы угадать.
    Ответ написан
    Комментировать
  • Как работает WebSocket(Comet)?

    Rou1997
    @Rou1997
    Для начала советую изучить TCP, затем WebSocket рекомендую начинать изучать на Node.js, уже потом без него, быстро все равно не получится реализовать систему, если конечно нужна надежность и действительно максимально "реальное" время с учетом обрывом сетевого кабеля, пропадания Wi-Fi у клиентов и т.п.
    Ответ написан
    Комментировать
  • Почему ноутбук больше не включается, после подключения зарядки?

    Rou1997
    @Rou1997
    Аккумулятор вынуть, снова вставить, батарейку CR2032 тоже (это уж совсем маловероятно что связано, но все-таки), надеюсь аккумулятор заряжен (попробуйте все-таки подключить другой БП), дальше разбирать и диагностировать цепи питания, сперва хорошо поискать схему материнской платы и сервис-мануал, но если их и нет, то в ноутбуке все равно не так сложно, как скажем в телефоне.

    Как думаете, что произошло

    Ну, теоретически электромагнитная помеха от искр, или скачок напряжения мог вывести из строя PMIC (контроллер питания), в ноутбуках попадаются разные "косяки" по питанию, но обычно такого как вы описали не бывает.
    Ответ написан
  • Какую скрытую персональную информацию хранят в себе APK файлы?

    Rou1997
    @Rou1997
    Ничего не хранят, я не видел ни в APK, ни в DEX, ни в ELF.

    или всё это мифы?

    Какие еще мифы? Это что вопрос есть Бог или нет?
    Есть спецификации всех форматов и есть средства, позволяющие разобрать их до каждого байта, если сомневаетесь то проделайте эту работу и все, заодно что-то путное сделайте, еще одно средство типа elfedit или gdb тоже не помешает, в первую очередь для реверс-инжиниринга, такие средства хоть и есть, но их дефицит и они не бывают лишними и идеальными тоже.
    Ответ написан
    Комментировать
  • Подключение к Wi-Fi посредством WPS в С# или CMD?

    Rou1997
    @Rou1997
    В C# можно использовать любые функции Windows API, если есть в принципе, то и в C# есть.
    Ответ написан
    Комментировать
  • Как отрубить оптимизатор в С#?

    Rou1997
    @Rou1997
    Оптимизация компилятора здесь ни при чем, если считаете что она виновата - используйте дизассемблер (ildasm и ilasm) и скажите как написать на MSIL чтобы работало верно.
    На самом деле просто не надо каждый раз создавать новый объект Random или используйте seed, чтобы числа были случайными, а не псевдослучайными.
    Ответ написан
    Комментировать
  • Как правильно написать SOAP client?

    Rou1997
    @Rou1997
    SOAP - это HTTP.
    Заголовки и т.п. никакие не нужны? Тогда попробуйте просто file_put_contents, отправляйте строку с этим XML.
    Если нужны заголовки и т.п., то лучше curl, и проверяйте сниффером какой получается запрос, всё.
    Ответ написан
  • Что изучать ADO NET или Entity Framework?

    Rou1997
    @Rou1997
    Сначала ADO.NET, затем EF если опредились уже с примерной работой и он требуется, а EF Core это тот же самый EF, только кроссплатформенный.
    EF это ORM для ADO.NET, без ADO.NET его не бывает, а вот ADO.NET можно использовать и без него, вручную составляя SQL-запросы, если есть время то лучше начать именно с этого, кто бы что ни говорил.
    Ответ написан
    Комментировать
  • Как запустить jar-файл в linux?

    Rou1997
    @Rou1997
    Проверьте манифест - откройте JAR как ZIP-архив, затем META-INF и MANIFEST.
    Ответ написан
  • Почему mGoogleApiClient возвращает null в onStart?

    Rou1997
    @Rou1997
    Ошибка в том, что в onCreate у вас инициализируется локальная переменная, а не поле класса, к которому обращается onStart, поле остается null, довольно частая ошибка и конкретное API тут ни причем.
    Ответ написан
    1 комментарий
  • Api phpDolphin и Android реально?

    Rou1997
    @Rou1997
    Разумеется, на то оно и API, по ссылке описание стандартного GET-запроса, протокол HTTP, в десктопных и мобильных приложениях с ним нет никаких ограничений, причем в данном случае API очень простое.
    Ответ написан
  • Какой дизайн форм вам больше по душе и какой создаете вы в своих проектах?

    Rou1997
    @Rou1997
    Если именно "Имя" - "Фамилия" - "О себе", то лучше 4 так как фамилия и имя - "семантически" единое целое, но в иных случаях лучше 3, он более гибкий, позволяет обеспечить любую длину надписей, да и проще он, не надо думать о контейнере, просто br, br, br - и готово. :)
    А если выбирать между 1 и 2, то зависит от выравнивания (центр = 2) и от того сколько строчек (2 предотвращает путаницу глазами строчек с надписями).
    Вывод: зависит от задачи, от того что вокруг формы, а в идеале надо иметь инструмент (компонент типа "layout manager"), который позволит быстро менять варианты.

    По ошибкам, самый удобный - 3, можно и справа их выводить и сверху и снизу, а самый неудобный - 4, но если из практики, то поле "О себе" не должно проходить вообще никакую валидацию и не должно быть обязательным, "Имя" и "Фамилия" минимальную, так что в данном случае ошибок почти и не будет.
    Ответ написан
    Комментировать
  • Как написать приложение под iOS для личного пользования?

    Rou1997
    @Rou1997
    Взнос $99 необходим только для публикации в App Store, а если вы не боитесь Jailbreak, то вам не нужно публиковать приложение в App Store, следовательно $99 не нужно.
    Но вам понадобится ПК с OS X, чтобы создать и скомпилировать приложение.
    Поэтому если у вас нет компьютера Apple, то либо придется поставить Хакинтош, либо OS X в виртуальную машину, либо арендовать VPS с OS X, третий способ самый легкий, не нужно ничего устанавливать, не нужно мощного "железа", и в отличие от Hackintosh это будет оригинальная OS X, удаленный рабочий стол тоже будет, IDE Xcode и симулятор iOS вы сможете поставить и они будут работать, но этот способ платный, стоит такой сервер долларов 30 в месяц.
    Ответ написан
    Комментировать
  • Ссылки на маленькие PHP-библиотеки?

    Rou1997
    @Rou1997
    Понятие "правильно написанные" имеет смысл только для конкретной задачи, поэтому необходимо сперва поставить задачу! Если это сделать, то и искать не придется, просто перебирать все подряд, а правильные или не правильные - поймете сами.
    Те, кто не осознает соответствие средств - целям, просто мыслят слишком узко, и имеют мало опыта.
    Ответ написан
    2 комментария
  • QT: Как серверу понять, какой именно сокет отсоединился?

    Rou1997
    @Rou1997
    Удаляйте тот, на который указывает значение, возвращаемое sender(), вы же не копировали объект когда добавляли указатель в контейнер, а значит, это и есть тот же самый объект, не знаю насчет QMap, но обычно списки поддерживают удаление объекта без ключа или индекса, в специальный метод передаете указатель и список удаляет этот элемент.
    Если с этим проблемы - то да, реализуйте собственную идентификацию.
    Ответ написан
    1 комментарий
  • Есть ли где материал на тему удаленных протоколов rdp, ssh, telnet, vnc?

    Rou1997
    @Rou1997
    Необходимо смотреть исходный код клиентов и серверов, и пользоваться сниффером для исследования, в ином случае реального понимания не будет, теория без практики годится только для курсовой работы и т.п., и не даст вам навыков в работе.

    как они эмулируют мышь и клавиатуру?

    С помощью API ОС, например на Windows есть WinAPI-функции mouse_event и keybd_event.

    их связь c tcp/ip

    Протоколы, реализованные в этих программах, реализованы поверх протокола TCP, то есть для передачи изображения с монитора и других данных там используется Berkeley sockets API, это API входит в Windows API и в другие ОС совместимые с POSIX, например Линуксы и OS X.
    А каждый "пакет" содержит: заголовок Ethernet, заголовок IPv4, заголовок TCP, и наконец данные конкретного прикладного протокола такого как SSH.
    Грубо говоря, протокол - это формат данных, которые содержатся в некоем условном "пакете" - фрагменте потока данных, передаваемых по сети. "Пакет" чем-то похож на файл, он так же является "кусочком" абстрактного множества байт (будь то в кабеле или на диске), и также как и файлы, "пакет" обычно имеет формат, это и есть протокол.
    Именно в таких программах, как удаленные рабочие столы, протокол TCP используется "полноценно" или близко к "идеалу", то есть предусмотрена максимальная стабильность, вплоть до выявления и обработки обрывов сетевого кабеля или эквивалентных ему проблем с сетью Wi-Fi.
    Ответ написан
    Комментировать
  • Что почитать по reverse engineering?

    Rou1997
    @Rou1997
    Основное - это практика, а почитать многое можно, Криса Касперски, старые архивы Wasm, exelab.ru, отдельные статьи на Хабрахабре по конкретным темам, но это лишь справочная информация и сама по себе она умения и понимания не создаст, да никто и не старался сделать нечто большее, чем предоставить справочник.
    Реверсная инженерия, как и любая другая мало кем изученная область, априори требует творческий подход, быть выше конкретных справочников и "учителей", если вы на это не способны, то обратитесь к специалисту.
    Ответ написан
  • Как динамически загрузить DLL?

    Rou1997
    @Rou1997
    Если и приложение и DLL являются сборками MSIL (.NET), то Assembly.Load
    Если DLL нативные, то используйте WinAPI - LoadLibrary, GetProcAddress.
    Ответ написан