Artículos con la etiqueta «C++»
19 artículos con la etiqueta «C++», del más reciente al más antiguo.
-
Time Travel Debugging — Grabar y rebobinar los errores que no se reproducen en aplicaciones de larga duración
Un error que aparece una vez al mes deja en el volcado de memoria solo el resultado. Grabe y rebobine la ejecución con Time Travel Debugging (TTD) de WinDbg:...
-
Por qué se rompen los argumentos — Las reglas de los argumentos de línea de comandos de Windows
Windows pasa a CreateProcess una sola cadena que el receptor divide. Cubre las reglas de CommandLineToArgvW, el CRT y .NET, ArgumentList y el ensamblado en C++.
-
Qué queda después de que muere el padre — mantener los procesos hijos en un Job Object
Por qué los ayudantes del SDK sobreviven a una IU terminada y retienen la cámara o el puerto COM. Cómo diseñar la vida de los procesos hijos con Job Object, ...
-
API del grupo de hilos de Win32 — Concurrencia sin crear hilos, con CreateThreadpoolWork
¿Está multiplicando las llamadas a CreateThread en el código nativo? Este artículo explica, a partir de fuentes primarias, la API del grupo de hilos de Win32...
-
Canalizaciones con nombre en la práctica — El IPC estándar de Windows, del diseño a la seguridad
Guía práctica de las canalizaciones con nombre, el IPC estándar de Windows. Organiza, a partir de fuentes primarias, la elección entre modo byte y modo mensa...
-
DllMain y el bloqueo del cargador — La razón real de que le digan «no haga nada en la inicialización de la DLL»
Por qué no debe llamar a LoadLibrary ni sincronizar con otros hilos desde DllMain. A partir de fuentes primarias, este artículo explica el mecanismo del bloq...
-
Despertares espurios — por qué una variable de condición despierta «sin notificación» y cómo esperar correctamente en Windows
El wait de una variable de condición puede volver sin notificación (despertar espurio). El artículo explica, a partir de la implementación de Windows, por qu...
-
Buenas prácticas de multithreading en la práctica: edición C++ — eliminar los fallos desde la estructura con RAII y jthread
En C++ una condición de carrera de datos es comportamiento indefinido. Se cubren la trampa del destructor de std::thread, la parada con jthread y stop_token,...
-
Compatibilidad retroactiva de interfaces DLL y COM — Tabla de decisión sobre qué cambios rompen al lado que llama
Qué cambios de DLL o COM rompen al lado que llama: los tres niveles de compatibilidad, la tabla de decisión por cambio y la regla de inmutabilidad de COM.
-
¿Qué es MFC en Windows? — Conocimientos básicos para mantener activos existentes
Resumen de MFC: relación con Win32, estructura de la app, mapa de mensajes, Document/View, DDX/DDV y puntos de mantenimiento.
-
Lista de verificación para manejar procesos secundarios de forma segura en aplicaciones de Windows
Para manejar procesos secundarios de forma segura en aplicaciones de Windows, la propiedad del árbol de procesos y el procedimiento de cierre importan más qu...
-
Distribución de apps de Windows en un solo archivo - los límites del binario único y la dependencia del SO
Al reducir una app de Windows a un solo EXE, no es lo mismo unificar la distribución que eliminar la dependencia del SO: repasamos .NET, C++, WebView2, WinUI...
-
Trampas de la memoria compartida y buenas prácticas para producción
Analizamos las trampas de usar memoria compartida en producción y el diseño que reduce la tasa de incidentes: sincronización, visibilidad, ciclo de vida, ABI...
-
Cómo comparar de forma justa la velocidad de ejecución de C#, C++, Java y Go
Cómo comparar de forma justa la velocidad de ejecución de C#, C++, Java y Go: diseño de la medición, warm-up, fijación del entorno, lectura estadística y ele...
-
Cómo grabar imágenes y texto en los fotogramas de un MP4 con Media Foundation
Con Media Foundation, cómo grabar imágenes y texto en cada fotograma de un MP4 repartiendo el trabajo entre Source Reader, el dibujado, la conversión de colo...
-
Cómo convertir YUV a RGB en Media Foundation
Cómo convertir fotogramas YUV a RGB en Media Foundation: conversión automática con Source Reader, conversión manual de NV12/YUY2, stride y espacio de color.
-
Cómo extraer una imagen fija de un MP4 en un instante específico con Media Foundation
Extraemos con Source Reader el fotograma más cercano a un instante de un MP4, ajustamos el stride y el alpha de RGB32, y lo guardamos como PNG.
-
Cómo invocar una DLL nativa de C# Native AOT desde C/C++
Publicar una biblioteca de C# como DLL nativa con Native AOT e invocar sus puntos UnmanagedCallersOnly desde C/C++: casos de uso, patrones y precauciones.
-
Introducción a Media Foundation - Cómo entender la API desde la perspectiva de COM
Explicamos qué es Media Foundation junto con los términos básicos de su API multimedia en Windows —COM, HRESULT, IMFSourceReader, MFT— en el orden adecuado p...