Какая WinAPI выполняет cmd...

Тема в разделе "WASM.WIN32", создана пользователем pikador, 4 дек 2008.

  1. max7C4

    max7C4 New Member

    Публикаций:
    0
    Регистрация:
    17 мар 2008
    Сообщения:
    1.203
    люди :) будте проще. WinExec("command", visible); тут не про процессы спрашивают а про функцию! вот это оно. для выполнения cmd'шных команд, но будьте осторожны с наследованием консоли (некоторые cmd'шки убивают после себя консоль, а некоторые наоборот выводят хз куда)
     
  2. Partner

    Partner Павел

    Публикаций:
    0
    Регистрация:
    28 фев 2008
    Сообщения:
    917
    Адрес:
    Los Angeles
    WinExec предшественница CreateProcess. Сейчас устарела и не рекомендуется к использованию.

    This function is provided only for compatibility with 16-bit Windows. Applications should use the CreateProcess function.
     
  3. q_q

    q_q New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2003
    Сообщения:
    1.706
    Partner
    > Ты привел всего два пункта
    Imho дело не в количестве пунктов, а в качестве настроек запуска процесса/приложения предоставляемых этими функциями.

    > ShellExecuteEx может все, перечисленное тобой
    Сомневаюсь. Например, как, используя ShellExecuteEx, добиться функциональности предоставляемой STARTUPINFO.hStdInput и STARTUPINFO.hStdOutput.

    > Ты сомневаешся что она может больше ?
    Не в этом дело. Я сомневаюсь, что человеку просящему предоставить интерфейс командной строки потребуются иконки, мониторы, ассоциации и иже с ними.

    max7C4
    Твое сообщение напоминает узбекского мальчика с плакатом "Пахтакор - Чемпион!" из Ералаша.
     
  4. Partner

    Partner Павел

    Публикаций:
    0
    Регистрация:
    28 фев 2008
    Сообщения:
    917
    Адрес:
    Los Angeles
    Никак. Но об этом и не упоминалось.

    hStdInput и hStdOutput ему тоже навряд нужны :)
     
  5. Com[e]r

    Com[e]r Com[e]r

    Публикаций:
    0
    Регистрация:
    20 апр 2007
    Сообщения:
    2.624
    Адрес:
    ого..
    Partner, да чёто работает жеж .\
    причём гораздо короче получается код, чем критпроцесс с его сотнями структур и событий!
     
  6. q_q

    q_q New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2003
    Сообщения:
    1.706
    Partner
    об этом и не упоминалось
    Ты не внимателен. См. #10 : "в STARTUPINFO можно настроить не только видимость окна".

    Partner > Можно ли с помощью CreateProcess ... Запустить ассоциированное приложение
    Osen > Она позволяет ... запуск программ, которые ассоциированны с файлами)
    Я так понимаю, что Osen под Она имеет ввиду ShellExecuteEx/ShellExecute, недооценивая CreateProcess. Пример запуска по ассоциации
    Код (Text):
    1. CreateProcess(NULL, "cmd /K start c:\\Book.xls", NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi)
    Comer_
    Сотня структур и событий не понадобились.