автоматический ввод (консольное приложение)
От: PhantomIvan  
Дата: 23.09.06 11:54
Оценка:
есть консольное приложение
периодически оно просит пользователя нажать какую-нибудь кнопку
как сделать автовыбор по прохождению, например 5 секунд, если пользователь пошел пить кофэ?
то есть совершить автовыбор

я ожидаю ввода с помощью Console.ReadKey, это как известно, синхронная операция
может, какой-то код можно повесить на таймер, чтобы он отправил на консольный input символ?
какой это должен быть код?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: автоматический ввод (консольное приложение)
От: Mika Soukhov Stock#
Дата: 24.09.06 10:51
Оценка: 2 (1)
Здравствуйте, PhantomIvan, Вы писали:

PI>есть консольное приложение

PI>периодически оно просит пользователя нажать какую-нибудь кнопку
PI>как сделать автовыбор по прохождению, например 5 секунд, если пользователь пошел пить кофэ?
PI>то есть совершить автовыбор

PI>я ожидаю ввода с помощью Console.ReadKey, это как известно, синхронная операция

PI>может, какой-то код можно повесить на таймер, чтобы он отправил на консольный input символ?
PI>какой это должен быть код?

// This example demonstrates the Console.KeyAvailable property.
using System;
using System.Threading;

class Sample 
{
    public static void Main() 
    {
    ConsoleKeyInfo cki = new ConsoleKeyInfo();

    do {
        Console.WriteLine("\nPress a key to display; press the 'x' key to quit.");

// Your code could perform some useful task in the following loop. However, 
// for the sake of this example we'll merely pause for a quarter second.

        while (Console.KeyAvailable == false)
            Thread.Sleep(250); // Loop until input is entered.
        cki = Console.ReadKey(true);
        Console.WriteLine("You pressed the '{0}' key.", cki.Key);
        } while(cki.Key != ConsoleKey.X);
    }
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.