Articles of Winapi

¿Cómo puedo determinar el tiempo de inactividad de la pantalla de Python en Windows, Linux y MacOS?

Me gustaría saber cuánto tiempo ha pasado desde la última vez que el usuario presionó una tecla o movió el mouse, no solo en mi aplicación, sino en toda la “computadora” (es decir, la pantalla), para adivinar si todavía están en la Computadora y capaz de observar las notificaciones que aparecen en la pantalla. Me […]

¿Anaconda de 64 bits en win32 usa 32 bits o 64 bits?

Supongo que la respuesta es de 32 bits, pero estoy un poco confundido sobre por qué puedo instalar Anaconda 64 en un win32. Solía ​​trabajar en Anaconda de 64 bits, pero me di cuenta de que mi sistema es win32 y esto generó algunas excepciones de vez en cuando. Ver por ejemplo este problema que […]

Progtwig evita el movimiento del mouse

Tengo un bot de clic para un juego y no lo he usado por un tiempo. Lo instalé nuevo (quizás haya una nueva versión) y mi bot ya no funciona. Parece que el evento está bloqueado de alguna manera cuando se activa el juego. Activo el juego, con esto: shell=win32com.client.Dispatch(“Wscript.Shell”) success = shell.AppActivate(“Game) Probé 2 […]

Obtener ID de proceso con python

¿Cómo obtener el id del proceso actual con python en windows? existe esta función os.geteuid (), pero solo funciona con linux / unix. Alguien podría decir cuál es la forma pythonica de obtener la identificación del proceso actual en Windows.

¿Por qué falla la función kernel32.GetModuleHandleA () para msvcr100 en Python?

Estoy teniendo problemas para llamar a GetModuleHandleA() usando Python. Tengo un módulo que se adjunta como depurador al proceso. Estoy trabajando en una función que devolvería la dirección de la función en el módulo DLL específico. GetModuleHandleA(“msvcr100”) falla todo el tiempo. from ctypes import * kernel32 = windll.kernel32 Función declarada como parte de una clase […]

¿Cómo obtener Process Owner by Python usando WMI?

Intenté obtener información sobre el propietario del proceso, utilizando WMI. Intenté ejecutar este script: import win32com.client process_wmi = set() strComputer = “.” objWMIService = win32com.client.Dispatch(“WbemScripting.SWbemLocator”) objSWbemServices = objWMIService.ConnectServer(strComputer,”root\cimv2″) process_list = objSWbemServices.ExecQuery(“Select * from Win32_Process”) for process in process: owner = process.GetOwner if owner != 0: print(‘Access denied’) else: print(‘process: ‘,process.Name, ‘PID: ‘, process.ProcessId, ‘Owner: ‘, […]

Problema al obtener el contenido de un cuadro de lista con python y ctypes en win32

Me gustaría obtener el contenido de un cuadro de lista gracias a python y ctypes. item_count = ctypes.windll.user32.SendMessageA(hwnd, win32con.LB_GETCOUNT, 0, 0) items = [] for i in xrange(item_count): text_len = ctypes.windll.user32.SendMessageA(hwnd, win32con.LB_GETTEXTLEN, i, 0) buffer = ctypes.create_string_buffer(“”, text_len+1) ctypes.windll.user32.SendMessageA(hwnd, win32con.LB_GETTEXT, i, buffer) items.append(buffer.value) print items El número de elementos es correcto pero el texto es […]

¿Cómo establecer la prioridad del proceso usando pywin32 y WMI?

from win32com.client import GetObject for proc in GetObject(“WinMgmts:{impersonationLevel=impersonate,(IncreaseBasePriority,Debug)}”).InstancesOf(“Win32_Process”): if proc.CommandLine == “”: proc.SetPriority(4) # fails He intentado pasar una clase de prioridad (0x40) así como una prioridad real (4), pero ambos fallan con el siguiente mensaje: File “test.py”, line 5, in proc.SetPriority(0x40) File “C:\Progs\Python26\lib\site-packages\win32com\client\dynamic.py”, line 505, in __getattr__ ret = self._oleobj_.Invoke(retEntry.dispid,0,invoke_type,1) pywintypes.com_error: (-2147352567, ‘Exception occurred.’, […]

Abrir un archivo de Excel manualmente permite ejecutar fórmulas, abrir un archivo de Excel con VBScript o PowerShell o el win32com de Python no

Tengo un problema con una secuencia de comandos que no actualiza un archivo de Excel y lo reduje al siguiente problema: Si abro un archivo de Excel, puedo ir a la pestaña Fórmulas y hacer clic en “Calcular ahora” y me llevará un poco de tiempo actualizar todos los cálculos. Si ejecuto un VBScript solo […]

PyKeyboard.tap_key () no funciona cuando me desconecto de Escritorio remoto

Tengo un progtwig que utiliza PyKeyboard.tap_key () para enviar pulsaciones de teclas a otra aplicación que estoy automatizando (la aplicación no se puede automatizar de otra manera, desafortunadamente). Lo ejecuto en una computadora remota con Windows, a la que accedo a través de Escritorio remoto. PyKeyboard.tap_key () funciona bien mientras estoy conectado, pero si me […]