Articles of winapi

¿Cómo puedo cambiar el color de fondo de un botón WinAPI C ++?

Lo he buscado muchas veces, pero todo lo que encuentro es MFC. Lo quiero en C ++ WinAPI. Sé cómo cambiar el estilo de un control de botón, pero no puedo descubrir cómo hacer que un botón tenga un color diferente. Entonces, ¿cómo puedo cambiar el color de fondo de un botón de control WinAPI […]

Win32: lee de stdin con tiempo de espera

Intento hacer algo que creo que debería ser simple: hacer una lectura de locking desde la entrada estándar, pero agotar el tiempo después de un intervalo especificado si no hay datos disponibles. En el mundo de Unix esto sería simple con select() pero eso no funciona en Windows porque stdin no es un socket. ¿Cuál […]

¿Cuáles son estas extrañas variables de entorno?

Yo uso GetEnvironmentString() para obtener las variables de entorno del progtwig. Cada progtwig tiene tal resultado en el primero: =::=::\ No sé lo que significa? Aquí está el código: LPWCH lpEnvString=GetEnvironmentStringsW(); LPWSTR lpszVariable=(LPWSTR)lpEnvString; while (*lpszVariable) { wprintf(L”%s\n”,lpszVariable); lpszVariable+=wcslen(lpszVariable)+1; } FreeEnvironmentStringsW(lpEnvString); Además, si comenzamos a enumerar tales variables, podríamos ver cosas como: =::=::\ =C:=C:\Users\username\value =ExitCode=00000001 ALLUSERSPROFILE=C:\ProgramData […]

actualizar una tabla de cadenas con UpdateResource

Hice la pregunta aquí – actualizando STRING TABLE a través de UpdateResource (agregando varias cadenas) Y ahora vuelvo a preguntar, ya que esta vez puedo agregar muchos más detalles a la pregunta. He estado probando esto el último día o algo sin valor real. Lo que quiero que sea el resultado es así (manualmente agregué […]

¿Cuál es la diferencia entre las funciones `A ‘y` W` en la API de Win32?

¿Cuál es la diferencia al llamar a la función API de Win32 que tiene un carácter A agregado al final en oposición al carácter W ? Sé que significa ASCII y WIDE CHARACTER o Unicode, pero ¿cuál es la diferencia en la salida o la entrada? Por ejemplo, si llamo GetDefaultCommConfigA, ¿rellenará mi estructura COMMCONFIG […]

Deshabilitar el almacenamiento en búfer en el redireccionado stdout Pipe (Win32 API, C ++)

Estoy generando un proceso de Win32 usando CreateProcess , estableciendo las propiedades hStdOutput y hStdError de STARTUPINFO en los identificadores de las tuberías creados con CreatePipe . Tengo dos hilos que leen los tubos, esperando que los datos estén disponibles (o el proceso para completar, en cuyo punto comprueba que no quedan datos antes de […]

¿Cómo consultar un proceso en ejecución para su lista de parámetros? (ventanas, C ++)

para un proceso de Windows dado, quiero saber con qué parámetros de línea de comandos se inició. El administrador de tareas de Windows puede mostrar eso, por ejemplo. ¡Gracias de antemano!

Cómo habilitar estilos visuales sin un manifiesto

De acuerdo con los documentos : “Si desea que su aplicación utilice la versión 6 de ComCtl32.dll, debe agregar un manifiesto de aplicación o una directiva de comstackción para especificar que se debe usar la versión 6 si está disponible”. Observe el O lógico anterior? Entonces, ¿qué es esta misteriosa directiva de comstackción? Tengo una […]

Cómo hacer que un teclado sea global en todos los procesos

Intento crear una aplicación de teclado útil para que pueda hacer cosas como matar un proceso preprogtwigdo o lanzar algo. Estoy pensando que debería mantener el cmd en cualquier aplicación, luego tecleo una clave de comando de 4 dígitos para poder ejecutar o matar algo rápidamente mientras programo, depuro viendo un video, etc. Descubrí cómo […]

C ++ Ejecutando Comandos CMD

Estoy teniendo un problema serio aquí. Necesito ejecutar una línea de comandos de CMD a través de C ++ sin que se muestre la ventana de la consola. Por lo tanto, no puedo usar el system(cmd) , ya que se mostrará la ventana. He intentado con winExec(cmd, SW_HIDE) , pero esto tampoco funciona. CreateProcess es […]