Blog
Artículos prácticos de KomuraSoft LLC sobre desarrollo web, SEO, Google Ads, desarrollo para Windows, aprovechamiento de sistemas existentes e investigación de fallos.
Búsqueda con IA en todo el sitio
Las consultas de búsqueda se envían a Cloudflare AI Search para generar los resultados. No introduzcas datos personales.
-
Compatibilidad de WPF con alto DPI ── causas y soluciones del desenfoque pese a que «debería ser resistente al DPI»
WPF es System DPI Aware, pero al moverse a un monitor con otro DPI toda la ventana se difumina y los mapas de bits se ven borrosos. Repasamos el diagnóstico,...
-
El problema de EXCEL.EXE que permanece al operar Excel desde C# — Patrones de liberación de referencias COM y el criterio de sustitución
Explica por qué EXCEL.EXE permanece al operar Excel vía COM desde C#, mediante el conteo de referencias COM y el RCW. Cubre la regla de los dos puntos, los p...
-
Compatibilidad de WinForms con pantallas de alto DPI ── Por qué se ve borroso o se rompe el diseño en monitores 4K, y cómo abordarlo de forma realista
Explica por qué las aplicaciones WinForms se ven borrosas o rompen su diseño en monitores 4K, a partir de la virtualización de DPI y los modos de reconocimie...
-
Cómo elegir la comunicación entre procesos en Windows — canalizaciones con nombre / TCP / gRPC / memoria compartida / COM: tabla de decisión
Cómo elegir la comunicación entre procesos en Windows: comparamos en una tabla de decisión las canalizaciones con nombre, el TCP local, gRPC, la memoria comp...
-
Cómo usar SQLite en aplicaciones empresariales con C# — Modo WAL, control de exclusión, prevención de corrupción y cuándo usar EF Core
Reunimos el conocimiento práctico para integrar SQLite en aplicaciones empresariales con Microsoft.Data.Sqlite: modo WAL, SQLITE_BUSY, mapeo de tipos, copias...
-
Cómo crear y operar un servicio de Windows — de la diferencia con el Programador de tareas a la creación de servicios con BackgroundService
¿Un proceso en segundo plano debe ser servicio de Windows o basta con el Programador de tareas? Tabla de decisión, creación con .NET Worker Service, cuenta d...
-
¿Es WebView2 el siguiente paso tras el modo IE? — La restricción de que ActiveX no funciona y un diseño de migración realista
Explicamos la estructura básica de WebView2, la estrategia de distribución Evergreen y Fixed Version, la trampa de la carpeta de datos de usuario, la comunic...
-
Cómo elegir el destino de almacenamiento de datos en una app de Windows ── Tabla de decisión: SQLite / JSON / Registro / Access
Dónde y con qué guardar los datos de una app de escritorio Windows: uso de AppData/ProgramData, ventajas y trampas de SQLite, JSON, Registro y Access, con pr...
-
Las tareas del Programador de tareas no se ejecutan o terminan con 0x1 — cómo aislar la causa y diseñar una operación segura
Repasamos la cuenta de ejecución, el tipo de inicio de sesión, las causas típicas del 0x1, la activación del historial, el control de ejecuciones múltiples y...
-
Automatizar procesos empresariales con Power Automate — Cuándo usar el flujo en la nube o el de escritorio, y cómo diseñar el manejo de errores
Diferencias entre el flujo en la nube y el de escritorio de Power Automate, cuándo usar PowerShell o VBA, licencias, manejo de errores, estabilización de la ...