Archivo Léame de McSetupDemo.SUF7

Este documento proporciona información acerca de McSetupDemo.SUF7.

Índice

Descripción

McSetupDemo.SUF es una instalación de ejemplo creada con el programa Setup Factory que instala una base de datos .mdb.

El porqué

El instalar una aplicación de Access tanto .mdb como en .mde en un equipo de un usuario final, puede complicar su apertura si no se tiene en cuenta que versiones de Access están instaladas.
Al abrir un archivo .mdb o .mde (compilado), Windows lo hace con la versión de Access que se haya usado en última ocasión, es decir, si se ha usado 97 anteriormente y se intenta abrir un archivo de la versión 2003 se producirá un aviso de Access 97 de que el formato no es correcto. Para evitar dejar en manos de Windows esta elección se puede generar en un acceso directo que inicie primero Microsoft Access abriendo a continuación una base de datos especificada.

Ejemplos, 

Para Access XP (Opción A)
"C:\Archivos de programa\Microsoft Office\Office10\MSAccess.exe" "C:\Archivos de programa\Microsoft Office\Office10\Samples\Neptuno.mdb"

Para Access 2003 (Opción B)
"C:\Archivos de programa\Microsoft Office\Office11\MSAccess.exe" "C:\<Ruta de la App>\<MiApp>.mdb"

Para Access Runtime XP (Opción C)
"C :\Archivos de programa\Archivos comunes\Microsoft Shared\Access Runtime\Office10\MSAccess.exe" "C:\<Ruta de la App>\<MiApp>.mdb"

Para Access 2007 (Opción D)
"C:\Archivos de programa\Microsoft Office\Office12\MSAccess.exe" "C:\<Ruta de la App>\<MiApp>.mdb"

Y tras esta pequeña historia de versiones se procede a explicar lo que de manera muy simple realiza Setup Factory en su versión 7.0, bueno realiza por que se le he dicho que lo realice, ¡faltaría más! ;)

Setup Factory

En el Screens (pantallas) llamado Before Installign (antes de la instalación) y en el Screen ID “Check Boxes Comprobación” y en su Actions (acción) On Next con la función externa mc_strPathNameAccessExe, se comprueba en el registro de Windows cual es la versión instalada usando para ello un bucle desde el 10 hasta el 12 para hacerlas coincidir con los números de las versiones internas.
En caso de estar instalado el Runtime de XP, esta usa la misma clave de registro que Access X, la 10.
Si ninguna de las dos versiones está en el equipo, sería la opción C la que se usa. De todos modos se comprueba antes de proceder a la instalación del Runtime si está en la ruta estándar de instalación con la que el Package XP la instalaría, C:\Archivos de programa\Archivos comunes\Microsoft Shared\Access Runtime\Office10\MSAccess.exe.
Sólo cuando no esté en esa ruta instalado, se procede a instalar el Microsoft Access 2002 (xp) Runtime y que debe de estar el archivo ACCESSRT.MSI en la ruta relativa al instalable McSetupDemo.SUF7.v1.5.exe, ..\Runtime\ACCESSRT.MSI
Tras todas estas comprobaciones y cuando ya está determinado donde está MSAccess.exe, se procede a la creación de 4 accesos directos de por ejemplo la aplicación Mi App,

  1. En en escritorio (todos los usuarios)
  2. Inicio | Todos los programas (todos los usuarios)
  3. Inicio | Todos los programas | MiApp
  4. Menú inicio rápido

Estos accesos se pueden deseleccionar y el código está en After Installign y en el Screen Id “Check Boxes” y en la Actions “OnShutdown”.
En la acción del SUF7, On Shutdown, se generan diferentes propiedades de Información de Soporte Técnico, esas que vemos en Agregar o quitar programas y son las siguientes,

No satisfecho con la potencia que me ofrece SUF7.0, sigo rizando el rizo y consigo programar con el lenguaje LUA el que se compruebe si hay alguna revisión del programa en la ruta relativa al programa de instalación ..\Revisions\xx.MiApp.Revision.vxx.exe, cualquiera que sea la cantidad,

Siendo la versión inicial del ejemplo instalado la v10.
Lo ideal es que las revisiones sean acumulativas, por lo que se trabajaría con un solo archivo. En este caso con el último 04.McSUF7.Revision.v14.exe sería suficiente.

Diagrama de flujo

Diagrama de flujo 

MOD XP

El motivo por el que no uso el Packaging Wizard del MOD XP es debido a su rigidez en la creación de un paquete instalable, no permitiendo precisamente la comprobación de versiones previas instaladas y por tanto la creación de otro tipo de accesos directos.
No comparto tampoco que si adjuntas el Runtime al paquete de instalación este lo instala directamente, siempre, no haciendo falta ya que es posible que exista ya una versión de Access que puede hacer funcionar la aplicación.
Tal como ahora se presente el Microsoft Office Access 2007 Runtime, hago uso sólo de lo imprescindible y que es la instalación propia del Runtime XP. ACCESSRT.MSI

Estructura de archivos

A demás del archivo de ejemplo del que se trata llamado McSetupDemo.SUF7.v1.5.exe, hace falta otros más que debe de depender si tienes licencia de uso del MOD XP ya que esta es la qué te permite llegar a obtener el Runtime XP siendo su archivo inicial ACCESSRT.MSI
La ruta inicial puede ser cualquiera ya que el resto serán relativas.

  1. [Temp]    Carpeta inicial de instalación.
    McSetupDemo.SUF7.htm
    McSetupDemo.SUF7.v1.5.exe
  2. [Temp\Revisions]    Carpeta con los archivos de revisión que se ejecutan al finalizar la instalación.
    01.McSUF7.Revision.v11.exe
    02.McSUF7.Revision.v12.exe
    03.McSUF7.Revision.v13.exe
    04.McSUF7.Revision.v14.exe
  3. [Temp\Runtime]    Carpeta que contiene los archivos necesarios para instalar el Runtime de Access XP. Se han creado previamente bajo licencia del el Packaging Wizard del MOD XP.
    ACCESSRT.MSI
    MSOHELP.EXE
    OFFICE1.CAB
    OSP.MSI
    OSP1.CAB (Oculto)
  4. [Temp\Runtime\FILES\SYSTEM]    Archivos de Actualización del Sistema (OSP) y según qué versión de Internet Explorer hacen falta.
    EXTRACT.EXE
    MLANG.DAT
    MLANG.DLL
    MSXML.DLL
    T2EMBED.DLL
  5. [Temp\Runtime\FILES\WINDOWS\HELP]    Archivos de Actualización del Sistema (OSP) y según qué versión de Internet Explorer hacen falta.
    OSP.HLP
    PSS10.TXT
  6. [Temp\Runtime\SP]
    Art2002Sp3-kb834693-client-esn.exe    Service Pack 3 para cliente con Access 2002 Runtime y que se instala sólo tras la instalación del Runtime.

Descargas

Ejeutable McSetupDemo.SUF7

Vínculos de interés

Modificadores de la línea de comandos para Access, http://office.microsoft.com/es-es/access/HA101666053082.aspx?pid=CH100621863082

Autor y agradecimientos

Agradecimiento a Indigo Rose Corporation por su colaboración en la concesión de una licencia de uso.

24 de julio de 2007

Rafael Andrada
Valencia [es]

www.mcpegasus.es
www.mcpegasus.net
www.live-mcpegasus.eu

..:: Tu Access, Mi Pasión ::..
[MVP Office System - Access]