Nano Hash - криптовалюты, майнинг, программирование

Невозможно выбрать пункты меню в NASPT Exerciser с помощью pywinauto

Я использую pywinauto для автоматизации инструмента NASPT Exerciser. Я не могу выбрать

 app.IntelNASPerformanceToolkitExerciser.PhotoAlbum.Click().

нажать кнопку фотоальбома,

app.IntelNASPerformanceToolkitExerciser.all.Click()

нажать все. Это не выбор всех кнопок.

app.IntelNASPerformanceToolkitExerciser.MenuSelect("Configure->NASPT Tool")

Выдает ошибку, говоря, что не может выбрать меню для этого объекта.

Есть ли другой способ решить вышеуказанную проблему? Кто-нибудь может помочь в этом?


  • Настройка выглядит как кнопка на панели инструментов. Меню нет. 14.01.2015

Ответы:


1

Это приложение .NET. pywinauto имеет очень ограниченную поддержку элементов управления .NET. Поэтому вам нужно использовать Windows UI Automation API для такой панели инструментов. Именно InvokePattern должно помочь с нажатием кнопки на панели инструментов.

Или вы можете попробовать нажать кнопку по жестко запрограммированным координатам, например:

app.IntelNASPerformanceToolkitExerciser.Children()[54].ClickInput(coords=(300, 10))

Этот способ жесткого кодирования может быть лучше, чем иметь дело с довольно сложным API автоматизации пользовательского интерфейса.

Кстати, вы можете получить клонирование pywinauto с поддержкой программных имен .NET. Просто скачайте его как zip и запустите python setup.py install.
С этим модом вы можете кодировать так:

app.IntelNASPerformanceToolkitExerciser.toolStrip.ClickInput(coords=(300, 10))

Я только что проверил это. Я думаю, что жестко закодированные координаты здесь подходят, потому что программное обеспечение устарело и не будет изменено. Не так много неподдерживаемых элементов управления .NET.

14.01.2015
  • Настройка, сброс находятся в панели инструментов и они статичны. Я думаю, pywinauto не поддерживает статические элементы управления 29.01.2015
  • pywinauto поддерживает управление со статическим типом. В .NET это называется Label. Панель инструментов видна Win32 API как одно окно, поэтому pywinauto не может распознавать отдельные кнопки. 29.01.2015
  • Только что скачал программные имена .NET. Это сработало как шарм !! 30.01.2015
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..