Я работаю над автоматизацией программ (программа под названием SEO indexer). Я написал автоматизацию, используя имя библиотеки python pywinauto.
Все отлично работает, когда я запускаю автоматизацию через RDP-соединение с сервером. Но когда я пытаюсь выйти из программы и отключиться от RDP, окно Windows «Сохранить как» не запускается и программа вылетает ...
кто-то знает, как это исправить?
код, который отвечает за сохранение файла -
def run(self, process_id, link):
controls = self._app[u'TForm1']
text_box = controls.Edit
text_box.set_text(link)
button = controls.ToolBar1
windows = Desktop(backend="uia")
button.click()
self.wait_for_finish(process_id)
result_box = controls.TVirtualStringTree
result_box.RightClick()
sleep(1)
windows_list = windows.windows()
context_menu = windows.window(best_match = "Context")
save_all_button = context_menu.children()[2]
save_all_button.select()
save_as = windows.window(best_match = "save_as")
properties_section = save_as.children()[0]
file_name = "C:\\Windows\\Temp\\indexer_" + str(randint(0, 10000))
file_name_label = properties_section.children()[4].children()[0]
file_name_label.set_text(file_name)
save_button = save_as.children()[2]
save_button.click()
sleep(2)
yes_no_dialog = windows.window(best_match = "GSA SEO Indexer v2.34")
yes_no_dialog.children()[0].click()
return file_name
он упал на -
save_as = windows.window(best_match = "save_as")
есть ли способ заставить его открыть диалоговое окно сохранения как, даже если нет экрана?
UPDATE:
Я просто замечаю, что проблема не в том, что панель Save as
не создана, проблема в том, что когда я без экрана и пытаюсь выбрать из контекстного меню (которое создается) - только текст выделен, не нажимая на нее