Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.09.2011, 18:59   #1
g-davicelli
Пользователь
 
Аватар для g-davicelli
 
Регистрация: 05.02.2011
Сообщений: 11
Сообщение Ввод команды и вывод результата

Собственно вот на чём застрял: Консольная программа, работа с видео устройствами и так далее... Получаю список доступных видео источников, код ниже.
Код:
function CleateList: string;
var
  CommandList: TStringList;
  Enumerator: Integer;
begin
  CommandList := TStringList.Create;
  try
    SystemVideoDevice := TSysDevEnum.Create(CLSID_VideoInputDeviceCategory);
    try
      if SystemVideoDevice.CountFilters > 0 then
      begin
        for Enumerator := 0 to SystemVideoDevice.CountFilters - 1 do
        begin
          CommandList.Add(SystemVideoDevice.Filters[Enumerator].FriendlyName);
        end;
      end;
      Result := CommandList.GetText;
    except
      on Problem: Exception do
      begin
        Writeln('Error:> Impossible to get a list of video devices');
      end;
    end;
  except
    on Problem: Exception do
    begin
      Writeln('Error:> Having trouble creating a team list');
    end;
  end;
end;
После чего собственно, результат выводится в окне, отрезок кода ниже.
Код:
Writeln(CleateList);
Всё круто! Теперь мне осталось только, используя клавиатуру ввести номер устройства в окне и запустить его. А как это сделать?
Сосбтвенно элементарный пример ввода и вывода приведён ниже.
Код:
var
  Name: string;
begin
  Writeln('Your name');
  Readln(Name);
  Writeln('Hello ' + Name);
  Readln;
end;
Но у меня немного иная история. Я так сейчас понимаю что надо к каждому устройству привязывать свой номер, к номеру привязывать ссылку на устройство. А после ввода того или иного номера запускать связанное с ним устройство...
Есть ещё одна запинка! Если в приложении не подключен модуль форм, то в таком случаи вылетает ошибка/исключение. Собственно модуль DSUtil, строка - 1948.
Код:
hr := SysDevEnum.CreateClassEnumerator(CatGUID, EnumCat, 0);
Это не сильно страшно, но всё же напрягает. Особенно если ненужен лишний модуль форм.
Кто может помочь?
g-davicelli вне форума Ответить с цитированием
Старый 25.09.2011, 22:37   #2
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,814
По умолчанию

а занести все полученные данные в массив из N элементов и потом выводить нужный K-й элемент из списка (чтоб 1<=K<=N).такое невозможно?
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.

Последний раз редактировалось NetSpace; 25.09.2011 в 22:41.
NetSpace вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод результата в Memo Giggs13 Общие вопросы Delphi 1 20.02.2011 12:56
вывод результата на порт В ТатьянаП Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 26.10.2010 07:28
Запрос в БД и вывод результата Nice42ru Помощь студентам 10 05.11.2009 09:47
Ввод команды с клавиатуры во время бесконечного цикла в С Эльфе Помощь студентам 1 24.05.2009 21:18