Получение текста из внешнего приложения C# - PullRequest
1 голос
/ 07 апреля 2020

Я пытаюсь создать бота для внешнего приложения. Сначала я использовал sendkeys (^ a ^ c). После нажатия кнопки «В середине чата» в окне приложения получаю текст из буфера обмена и сохраняю его. в файле, затем прочитайте его и ответьте с помощью sendkeys, и я делаю все это под контролем таймера. Я выполняю все эти задачи каждую 1 секунду, недавно я искал другой способ сделать это, потому что использование Sendkeys требует моего процессора и p c будет работать медленнее, я не смогу использовать свой p c, когда мой бот работает, после долгого поиска я обнаружил автоматизацию пользовательского интерфейса, к которой я могу получить доступ к другому приложению control и получить / установить текст, который я нашел, как это сделать. это с помощью блокнота, но я не знаю, или это не сработало для моего приложения. Я использовал приведенный ниже код, чтобы получить текст из блокнота. Я хочу знать, какие изменения я должен внести в код, чтобы работать в моем приложении. приложение, я скачал Autoit и Spy ++

    private void btn_getText_Click(object sender, EventArgs e)
    {
     PropertyCondition idCond = new PropertyCondition(AutomationElement.AutomationIdProperty,"15");
      AutomationElement nameTxt = mainWnd.FindFirst(TreeScope.Descendants, idCond);
        if (nameTxt != null)
        {
            TextPattern txtPattern = nameTxt.GetCurrentPattern(TextPattern.Pattern) as TextPattern;
            txt_output.Text = txtPattern.DocumentRange.GetText(-1);
        }
    }

Я обнаружил, что если приложение не поддерживает пользовательский интерфейс textpatteren, то это не работает, но я не знаю, как это узнать, я не знаю. Платформа приложения сделана из.

приложения, которое я пытался получить из него текст www.RankedGaming.Com

Вот снимок экрана приложения https://prnt.sc/ruxo2m Мы печатаем текстового бота, и сообщения будут отображаться в верхней части чата, даже я не знаю, что это за инструмент. не будет написано внутри его только для чтения.

...