Notas sobre la compatibilidad en componentes ActiveX.
----------------------------------------------------------
Para no romper la compatibilidad de versiones:
- Al crear la librer�a (DLL) la primera vez: hacerlo con compatibilidad de proyecto.
- Hacer una copia de la DLL creada y renombrarla (esto no es obligatorio, pero recomendable),
por ejemplo con la extensi�n .dlc o .cmp (yo uso esta �ltima)
- Al crear nuevas versiones, con nuevas propiedades y m�todos,
hacerlo con compatibilidad binaria, apuntando a la copia creada con la nueva extensi�n.
De esta forma, los programas compilados anteriormente siguen funcionando con la nueva DLL.
- Copiar la nueva DLL con la extensi�n usada en la compatibilidad binaria.
La copia creada con la nueva extensi�n, ser� siempre la �ltima versi�n distribuida de la DLL
- En muy importante que siempre que distribuyamos
una DLL, aunque se hayan hecho cambios m�nimos que no rompan la
compatibilidad binaria con la anterior, hagamos una copia para usarla como
"base" de la compatibilidad binaria, (con la extensi�n .cmp).
De esta forma, siempre tendremos la DLL distribuida como base de
compatibilidad binaria.
Si no tenemos en cuenta este "peque�o" detalle, al distribuir la nueva DLL nos
encontraremos con el error de que "no puede crear el componente ActiveX" y por
tanto "romperemos" la compatibilidad binaria y tendremos que generar
nuevamente los ejecutables que utilicen nuestro componente ActiveX.
Todo esto es necesario para que se conserven las interfaces anteriores y las nuevas.
Los programas anteriores usar�n la interface antigua y los nuevos la nueva.
Si se modifica demasiado la DLL al final el registro estar� "abarrotado" de interfaces de
nuestra DLL... as� que si se pretende hacer un cambio "brusco", lo recomendable es crear una
nueva DLL con una versi�n diferente, pero de esta forma los programas anteriores no funcionar�n
con la nueva DLL... habr�a que volver a compilarlos.
|