Estoy intentando desarrollar la aplicación C++ para un cliente. Hasta ahora, he agregado las funcionalidades básicas y funciona como se esperaba, pero es probable que aumente gradualmente la aplicación en el futuro (es decir, agregando más funciones) y es probable que el cliente actualice esas funciones en su aplicación. Ahora mis preguntas son las siguientes:

  1. Para agregar funciones, he decidido agregar funciones a un dll y es probable que el cliente reemplace el dll antiguo por el nuevo (para poder utilizar las funciones más recientes). ¿Existe un mejor enfoque para actualizar la aplicación C++?

  2. ¿Por qué algunos desarrolladores usan valores ordinales en lugar de nombres de funciones al exportar símbolos? ¿Cuál es el beneficio de usar valores ordinales que no sean un tamaño de archivo binario menor?

No quiero que mi cliente recompile / vincule la aplicación, solo quiero que el proceso de actualización sea lo más fluido posible. Necesitar consejo.

PD: Entorno = Windows + Visual Studio

0
Nouman Tajik 17 jul. 2020 a las 10:02

1 respuesta

La mejor respuesta

@Vasilij way es el camino a seguir. Si actualiza solo de DLL, ¿cómo sabrá su aplicación que hay nuevas funciones para llamar? Tienes que adaptar dinámicamente tus menús y así sucesivamente.

Simplemente cree un código auxiliar exe que ejecute la aplicación real (puede estar en un subproceso que puede eliminar) y actualice toda la aplicación (no el código auxiliar) y DLL cuando sea necesario. Ese código auxiliar también puede buscar actualizaciones y sugerir el reinicio después de la descarga.

0
Manuel 17 jul. 2020 a las 11:33