Cuestión : Paquetes Runtime de Delphi

Hola, el

I que construye mi programa con el paquete runtime de la versión 8 de la ventaja, cuando ejecuto lo e intento para hacer una petición todo trabaja fine.

I quiere saber si es posible entregar un .exe que ejecutaría aunque el cliente tiene versión 8 o 9 de ventaja sin tener que recompile el .exe.

Example: ¿Construyo mi .exe con el paquete runtime de la versión 9 de la ventaja, yo lo entregan al cliente que tiene ya el paquete de la versión 8 de la ventaja, mis .exe ajustarán a esa versión y ejecutarán?

 
class= del

Respuesta : Paquetes Runtime de Delphi

Mi objetivo principal es tener solamente un .exe con el cual ser construido con la ventaja 9, y quisiera que también pudiera ejecutar con la ventaja 8…

Todavía hay los medios por los cuales usted puede (clase de) hace lo que usted está intentando hacer.  Es un poco más trabajo pero podría ser un “trabajo alrededor.”

  1. Primero trasladarse su acceso de datos a un Datamodule, si usted no tiene ya.  
     
  2. Entonces crear una versión del Datamodule que es específico a cada uno de las versiones de la ventaja, es decir deben ser exactamente paralelos/idénticos a excepción de las secuencias y de los cnoonections de la conexión a las diversas versiones de la ventaja.  Deben tener la misma función/procedimientos que aceptan los mismos parámetros y vuelven los mismos resultados (en el caso de funciones) y hacen las mismas cosas.  También significa que usted necesita tener todos los datasources y preguntas y todos los otros componentes del acceso de datos nombrados iguales en cada datamodule.
     
  3. El DLLs en 2) arriba tendrá que ser DLL “dinámicamente cargados” (que sea donde “un poco el más trabajo” entra en realmente el cuadro.
     
  4. Eso también significa que usted necesitará un procedimiento en su app principal que cargue y conecte encima del DLL apropiado de DataModule.
     
  5. Usted entonces necesitará tener una manera que identificar que favorecen nunca la versión que el cliente tiene.  Eso le dejará cargar el DLL apropiado de DataModule. 

He hecho esto en el pasado en que tuve que poder cambiar golpe entre el servidor de DB2, del SQL, y Oracle.  (Por lo menos, teóricamente, su situación está toda en una familia. ; -)  

Alternativo, he conectado con o el servidor del SQL expreso (localmente) o servidor del SQL (en una red) simplemente fijando las secuencias de la conexión para cada uno y después teniendo el intento del uso para hacer la conexión al servidor del SQL de la red y después, si ése no trabaja, intento el servidor local del SQL expreso.  Este acercamiento podría ser modificado probablemente de modo que pudiera trabajar con su variación en el tema.  

Dependiendo que los componentes de la conexión usted están utilizando, usted puede poder utilizar el mismo truco de mí hice exactamente cuando tknow del didn de I qué la red o la conexión local parecería.  Creé un procedimiento en mi datamodule que caminó el usuario con crear la secuencia de la conexión y después ahorró eso.

Otras soluciones  
 
programming4us programming4us