crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Работа с командной строкой
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
Теги
Выровнять по центру
Ссылка на тему
Ссылка на сообщение
Скрытый текст
Сокращение
Код с подсветкой
Offtopic
 
Удалить форматирование
Спец. элементы
Шрифт
Размер
 
Цвет шрифта
 
Отменить ввод
Вернуть ввод
Полужирный
Курсив
Подчеркнутый
 
 
Смайлики
Вставить изображение
Вставить адрес электронной почты
Цитата
Код
Раскрывающийся текст
 
Увеличить отступ
По левому краю
По центру
По правому краю
Вставить список
Вставить список

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
kwisp Дата 30.10.2010, 0:28
  вопрос не имеет отношение у Qt
Игорь Дата 30.10.2010, 0:14
  Вот пытался передать переменные в system, но после компиляции программа аварийно вылетает

#include "mainwindow.h"
#include <QProcess>
#include <string.h>

int main(int argc, char *argv[])
{
    const char user[]="Администратор";
    char* qwe1;
    strcat(qwe1,"net user ");
    strcat(qwe1,user);

    system(qwe1);

    return 0;
}


Проге не нравиться вот это "const char user[]="Администратор";" Что не так?
Игорь Дата 29.10.2010, 22:40
  Спасибо, обязательно поищу.
Еще один вопрос, можно ли передать переменную в system()?

Мне нужно набрать в командной строке для просмотра информации о пользователе "net user [Имя учетной записи]"
Мне нужно из переменной "Имя учетной записи" вставить продолжение команды. Как это сделать?
Litkevich Yuriy Дата 29.10.2010, 21:51
  смысл такой, создаёшь процесс, например, с командой dir. Затем читаешь из стандартного потока вывода этого процесса и пишешь в стандартный поток ввода этого же процесса. Это будет равносильно сиденью в одной и той же консоли.

Работа с QProcess освещалась на форуме, поищи и почитай
Игорь Дата 29.10.2010, 21:46
 
Цитата(alex977 @ 29.10.2010, 21:39) *
А создать bat-файл и вызывать на выполнение уже его никак нельзя?


Мне нужно написать программу клиент, который по команде сервера делает настройки системы, удаляет ненужные файлы и прочее. Помимо связи с сервером, она должна быть еще и невидимой.
С невидимостью я разобрался, со связью с сервером разобраться не сложно, осталось только понять как как отвечать на вопросы, которые может задавать консоль и передавать в качестве переменных сообщения, которые выводит консоль.

В этом случаю *.bat ну никак не подойдет
alex977 Дата 29.10.2010, 21:39
  А создать bat-файл и вызывать на выполнение уже его никак нельзя?
Игорь Дата 29.10.2010, 21:31
  Мне надо выполнить несколько операций без вмешательств пользователя и получить в переменную что выводит консоль
Алексей1153 Дата 29.10.2010, 21:24
  Игорь, ты уж определись, тебе надо одну команду выполнить или консоль открыть и там работать
Игорь Дата 29.10.2010, 21:22
  system("dir&&who&&ls&&read"); Сработало,но и сразу же наткнулся на следующую проблему, а как отвечать на запросы?
То есть если в командной строке надо ввести какое-то имя файла или ответить Y или N, то как и это выполнить программно?
Алексей1153 Дата 29.10.2010, 21:22
  BRE, класс ))

system("dir&&pause"); - это тоже работает
Просмотр темы полностью (откроется в новом окне)
RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 11.7.2025, 12:07