• Telegram Bot как узнать chat_id зная username?

    s0l0wey
    @s0l0wey
    Ведущий мероприятий
    @userinfobot возвращает значение твоего chat_id
    @ShowJsonBot возвращает чуть больше информации
    Ответ написан
    4 комментария
  • Как правильно вставить переменные в URL для POST-запроса в PHP?

    @kovalevsky
    $url = 'http://gate.smsaero.ru/send/?to=PHONENUMBER&user=EMAIL&text=$name%20$tel&password=PASSWORD&from=REKLAMA';


    Используйте " вместо ' для того, чтоб переменная интерпретировалась как переменная, иначе будет как строка.

    $url = "http://gate.smsaero.ru/send/?to=PHONENUMBER&user=EMAIL&text=$name%20$tel&password=PASSWORD&from=REKLAMA";


    или

    $url = 'http://gate.smsaero.ru/send/?to=PHONENUMBER&user=EMAIL&text=' . $name . '...


    А ещё советую Вам отказаться от eval, совсем и навсегда
    Ответ написан
    1 комментарий
  • Как получить данные из стандартных команд cmd.exe в своем приложении на C#, не вызывая подпрограммы?

    @mayorovp
    У вас путаница в мыслях... Во-первых, "подпрограмма" - это в C# синоним метода. Если вы используете winforms - то вы уже используете кучу подпрограмм :) А то, чего вы хотите избежать, называется "внешняя программа" или "дочерний процесс".

    Во-вторых, рефлексия возможна только в отношении программ на платформе .NET - а перечисленные вами программы являются нативными. Разумеется, рефлексия в их отношении невозможна. По той же причине бесполезно из декомпилировать - все равно вам надо будет писать то же самое на другом языке.

    В-третьих, ping, tracert и netsh не являются командами cmd.exe. Команды cmd.exe - это echo, if, call, set, goto, for и т.д., а то, что вы перечислили - это системные утилиты.

    Теперь по вопросу.

    ping. Имеется вот этот класс: msdn.microsoft.com/en-us/library/system.net.networ... Ни разу с ним не работал, но выглядит удобным.

    tracert. Используйте тот же класс, указав Ttl в PingOptions.

    netsh. Тут все сложнее. Дело в том, что эта программа - обертка для кучи разных настроек, находящихся в совершенно разных местах. Если вам нужно получать данные - то попробуйте поискать их в msdn.microsoft.com/en-us/library/system.net.networ... Если их там нет - гуглите. Главное - гуглите без ключевого слова netsh.

    etc. А вот тут все не просто сложно, а невозможно. Невозможно взять неизвестную заранее утилиту, и сделать то же самое, что она делает, не запуская ее при этом. Поэтому вам надо определиться - либо ваша программа умеет выполнять фиксированный список действий - либо ей можно передать любую команду, но она будет запускать дочерние процессы. Возможен и промежуточный вариант - есть действия, которые программа может выполнять сама, а для выполнения других будут запускаться дочерние процессы.
    Ответ написан
    Комментировать