una subir publicar entradas entrada crear contenido como blog aƱadir articulo agregar installer wix point-of-sale pos-for-.net

installer - subir - crear entrada de blog en wix



Instalador WIX: Agregar POS como un requisito previo (4)

Si no puede obtener un módulo de fusión (que sería la solución preferida, si el editor lo pone a disposición), puede incluir un EXE con la instalación y luego ejecutarlo durante la instalación de WiX como una acción personalizada.

Del excelente tutorial sobre WiX en Tramontana, aquí hay una página sobre acciones personalizadas y cómo configurarlas: básicamente necesitas definir un elemento <CustomAction> en tu archivo WiX y especificar qué hacer cuando se ejecuta:

<CustomAction Id=''LaunchFile'' FileKey=''FoobarEXE'' ExeCommand='''' Return=''asyncNoWait'' />

Esto lanzará un archivo que acaba de instalar como parte de su aplicación y que se hace referencia en su script de WiX como FoobarEXE .

<CustomAction Id=''LaunchFile'' BinaryKey=''FoobarEXE'' ExeCommand='''' Return=''asyncNoWait'' />

Esto haría referencia a un archivo binario (por ejemplo, un EXE) que incluyó en su paquete de instalación de WiX (MSI o CAB), pero que no se ha instalado como parte de la instalación y que se extrajo como un archivo binario.

Una vez que sepa lo que hará, deberá definir cuándo, en la secuencia de los pasos de instalación, se debe ejecutar esta acción personalizada:

<InstallExecuteSequence> ... <Custom Action=''LaunchFile'' After=''InstallFinalize''>NOT Installed</Custom> </InstallExecuteSequence>

Aquí, la acción personalizada llamada LaunchFile se ejecutará una vez finalizada la instalación, pero solo si se determinó que la aplicación aún no se había instalado.

Por lo tanto, supongo que debería poder hacer lo que se esfuerza por hacer con una acción personalizada en WiX; consulte la documentación de WiX 2.0 y la publicación de blogs de Steven Bone para obtener información adicional.

¡Espero que esto ayude!

Bagazo

Soy bastante nuevo en WIX. Desnudo conmigo.

Deseo instalar Microsoft POS (punto de servicio) con mi instalador, después de instalar .net fx, sql server compact edition, etc.

Estoy dispuesto a proporcionar el exe descargado con el instalador (no es necesario obtenerlo de la web).

Encontré este enlace . El artículo en el enlace indica que debe llamar a la configuración con algunos parámetros. Pero no tengo ni idea de cómo hacerlo en Wix. En segundo lugar, no estoy seguro de que sea la manera correcta de hacerlo también. (¿tal vez se necesita un módulo de fusión?)

¿Cualquiera sabe?

Gracias Ariel


Wix produce archivos MSI, y no puede iniciar un programa de instalación desde dentro de un MSI. Si encuentra un módulo de fusión para POS, puede incluirlo en su Wix. De lo contrario, deberá usar un programa de arranque para instalar primero el POS y luego ejecutar su MSI (como DotNetInstaller ).


Si utiliza dotnetinstaller, el adjunto es un archivo xml de muestra.

Ejecute InstallerEditor.exe y abra el archivo xml de muestra, modifíquelo para su uso, luego ejecute InstallerLinker.exe de la siguiente manera: InstallerLinker.exe /Configuration:"c:/path/to/your/prod.xml "/ Output:" c: / work / setup.exe "/t:"%DOTNETINSTALLER%/Bin/dotNetInstaller.exe" / v

<?xml version="1.0" encoding="utf-8"?> <configurations lcid_type="UserExe" show_language_selector="False" language_selector_title="" language_selector_ok="OK" language_selector_cancel="Cancel" configuration_no_match_message="" ui_level="full" fileversion="" productversion="" log_enabled="True" log_file="#APPPATH/YourPackageInstallLog.txt"> <schema version="1.10.1525.0" generator="dotNetInstaller InstallerEditor" /> <fileattributes> <fileattribute name="FileDescription" value="YourPackage Installer" /> <fileattribute name="CompanyName" value="MyCompany Design" /> <fileattribute name="FileVersion" value="%RESOLVEVERSION%" /> </fileattributes> <configuration dialog_caption="YourPackage Installer" dialog_message="In order to install YourPackage you must install these components:" dialog_message_uninstall="" dialog_bitmap="#APPPATH/banner.bmp" skip_caption="Skip" install_caption="Install" uninstall_caption="Uninstall" cancel_caption="Close" status_installed=" (Installed)" status_notinstalled="" failed_exec_command_continue="Failed to install %s. Continue with others components?" installation_completed="YourPackage installed successfully!" uninstallation_completed="YourPackage uninstalled successfully!" installation_none="YourPackage is already installed!" uninstallation_none="YourPackage is not installed!" installing_component_wait="Installing %s. Wait, this operation could take some time ..." uninstalling_component_wait="Uninstalling %s. Wait, this operation could take some time ..." reboot_required="To continue the installation you must restart your computer. Restart now?" must_reboot_required="False" dialog_otherinfo_caption="" dialog_otherinfo_link="" complete_command="" complete_command_silent="" complete_command_basic="" wait_for_complete_command="True" auto_close_if_installed="True" auto_close_on_error="False" reload_on_error="True" dialog_show_installed="True" dialog_show_uninstalled="True" dialog_show_required="True" cab_dialog_message="%s" cab_cancelled_message="" cab_dialog_caption="" cab_path="#TEMPPATH/#GUID" cab_path_autodelete="True" dialog_default_button="cancel" dialog_position="" dialog_components_list_position="" dialog_message_position="" dialog_bitmap_position="" dialog_otherinfo_link_position="" dialog_osinfo_position="" dialog_install_button_position="" dialog_cancel_button_position="" dialog_skip_button_position="" auto_start="False" auto_continue_on_reboot="False" reboot_cmd="" show_progress_dialog="True" show_cab_dialog="True" type="install" lcid_filter="" language_id="" language="" os_filter="" os_filter_min="win7" os_filter_max="win7" processor_architecture_filter="" supports_install="True" supports_uninstall="True"> <component package="#CABPATH/%CUDATOOLKITPACKAGE%" cmdparameters="/passive" cmdparameters_silent="/qn" cmdparameters_basic="/qb-" uninstall_package="" uninstall_cmdparameters="/qb-" uninstall_cmdparameters_silent="/qn" uninstall_cmdparameters_basic="/qb-" id="%CUDATOOLKITPACKAGE%" display_name="%CUDATOOLKITPACKAGE%" uninstall_display_name="" os_filter="" os_filter_min="win7" os_filter_max="win7" os_filter_lcid="" type="msi" installcompletemessage="" uninstallcompletemessage="" mustreboot="False" reboot_required="" must_reboot_required="False" failed_exec_command_continue="" allow_continue_on_error="True" default_continue_on_error="False" required_install="False" required_uninstall="False" selected_install="True" selected_uninstall="False" note="" processor_architecture_filter="x64" status_installed="" status_notinstalled="" supports_install="True" supports_uninstall="False" show_progress_dialog="True" show_cab_dialog="True"> <embedfile sourcefilepath="../../../Prereqs/%CUDATOOLKITPACKAGE%" targetfilepath="%CUDATOOLKITPACKAGE%" /> <installedcheck path="SOFTWARE/NVIDIA Corporation/GPU Computing Toolkit/CUDA" fieldname="VersionsInstalled" fieldvalue="%CUDATOOLKITVERSION%" defaultvalue="False" fieldtype="REG_MULTI_SZ" comparison="contains" rootkey="HKEY_LOCAL_MACHINE" wowoption="WOW64_64" type="check_registry_value" description="Installed Check" /> </component> <component executable="#CABPATH/%POSTGRESQLPACKAGE%" executable_silent="" executable_basic="" install_directory="" responsefile_source="" responsefile_target="" responsefile_format="none" uninstall_executable="" uninstall_executable_silent="" uninstall_executable_basic="" uninstall_responsefile_source="" uninstall_responsefile_target="" returncodes_success="" returncodes_reboot="" exeparameters="--mode unattended --unattendedmodeui minimal --servicepassword YourProduct --superpassword YourProduct --superaccount postgres --serviceaccount postgres --debuglevel 4" exeparameters_basic="" exeparameters_silent="" uninstall_exeparameters="" uninstall_exeparameters_basic="" uninstall_exeparameters_silent="" id="%POSTGRESQLPACKAGE%" display_name="%POSTGRESQLPACKAGE%" uninstall_display_name="" os_filter="" os_filter_min="win7" os_filter_max="win7" os_filter_lcid="" type="exe" installcompletemessage="" uninstallcompletemessage="" mustreboot="False" reboot_required="" must_reboot_required="False" failed_exec_command_continue="" allow_continue_on_error="True" default_continue_on_error="False" required_install="False" required_uninstall="False" selected_install="True" selected_uninstall="False" note="" processor_architecture_filter="x64" status_installed="" status_notinstalled="" supports_install="True" supports_uninstall="False" show_progress_dialog="True" show_cab_dialog="True"> <embedfile sourcefilepath="../../../Prereqs/%POSTGRESQLPACKAGE%" targetfilepath="%POSTGRESQLPACKAGE%" /> <installedcheck path="SOFTWARE/PostgreSQL/Installations/postgresql-x64-9.0" fieldname="Version" fieldvalue="%POSTGRESQLVERSION%" defaultvalue="False" fieldtype="REG_SZ" comparison="version_ge" rootkey="HKEY_LOCAL_MACHINE" wowoption="WOW64_64" type="check_registry_value" description="Installed Check" /> </component> <component executable="#CABPATH/vcredist_x64.exe" executable_silent="" executable_basic="" install_directory="" responsefile_source="" responsefile_target="" responsefile_format="none" uninstall_executable="" uninstall_executable_silent="" uninstall_executable_basic="" uninstall_responsefile_source="" uninstall_responsefile_target="" returncodes_success="" returncodes_reboot="" exeparameters="/passive" exeparameters_basic="" exeparameters_silent="" uninstall_exeparameters="" uninstall_exeparameters_basic="" uninstall_exeparameters_silent="" id="vcredist_x64.exe" display_name="vcredist_x64.exe" uninstall_display_name="" os_filter="" os_filter_min="win7" os_filter_max="win7" os_filter_lcid="" type="exe" installcompletemessage="" uninstallcompletemessage="" mustreboot="False" reboot_required="" must_reboot_required="False" failed_exec_command_continue="" allow_continue_on_error="True" default_continue_on_error="False" required_install="False" required_uninstall="False" selected_install="True" selected_uninstall="False" note="" processor_architecture_filter="" status_installed="" status_notinstalled="" supports_install="True" supports_uninstall="False" show_progress_dialog="True" show_cab_dialog="True"> <embedfile sourcefilepath="C:/Program Files (x86)/Microsoft SDKs/Windows/v7.0A/Bootstrapper/Packages/vcredist_x64/vcredist_x64.exe" targetfilepath="vcredist_x64.exe" /> <installedcheck path="SOFTWARE/Wow6432Node/Microsoft/VisualStudio/10.0/VC/VCRedist/x64" fieldname="Installed" fieldvalue="1" defaultvalue="False" fieldtype="REG_DWORD" comparison="match" rootkey="HKEY_LOCAL_MACHINE" wowoption="WOW64_64" type="check_registry_value" description="Installed Check" /> </component> <component executable="#CABPATH/%QUICKTIMEPACKAGE%" executable_silent="" executable_basic="" install_directory="" responsefile_source="" responsefile_target="" responsefile_format="none" uninstall_executable="" uninstall_executable_silent="" uninstall_executable_basic="" uninstall_responsefile_source="" uninstall_responsefile_target="" returncodes_success="" returncodes_reboot="" exeparameters="/passive" exeparameters_basic="" exeparameters_silent="" uninstall_exeparameters="" uninstall_exeparameters_basic="" uninstall_exeparameters_silent="" id="%QUICKTIMEPACKAGE%" display_name="%QUICKTIMEPACKAGE%" uninstall_display_name="" os_filter="" os_filter_min="win7" os_filter_max="win7" os_filter_lcid="" type="exe" installcompletemessage="" uninstallcompletemessage="" mustreboot="False" reboot_required="" must_reboot_required="False" failed_exec_command_continue="" allow_continue_on_error="True" default_continue_on_error="False" required_install="False" required_uninstall="False" selected_install="True" selected_uninstall="False" note="" processor_architecture_filter="" status_installed="" status_notinstalled="" supports_install="True" supports_uninstall="False" show_progress_dialog="True" show_cab_dialog="True"> <embedfile sourcefilepath="../../../Prereqs/%QUICKTIMEPACKAGE%" targetfilepath="%QUICKTIMEPACKAGE%" /> <installedcheck path="SOFTWARE/Apple Computer, Inc./QuickTime" fieldname="Version" fieldvalue="%QUICKTIMEVERSION%" defaultvalue="False" fieldtype="REG_DWORD" comparison="version_ge" rootkey="HKEY_LOCAL_MACHINE" wowoption="WOW64_32" type="check_registry_value" description="Installed Check" /> </component> <component package="#CABPATH/YourPackageInstaller.msi" cmdparameters="" cmdparameters_silent="/qn" cmdparameters_basic="/qb-" uninstall_package="" uninstall_cmdparameters="/qb-" uninstall_cmdparameters_silent="/qn" uninstall_cmdparameters_basic="/qb-" id="YourPackageInstaller.msi" display_name="YourPackageInstaller.msi" uninstall_display_name="" os_filter="" os_filter_min="win7" os_filter_max="win7" os_filter_lcid="" type="msi" installcompletemessage="" uninstallcompletemessage="" mustreboot="False" reboot_required="" must_reboot_required="False" failed_exec_command_continue="" allow_continue_on_error="False" default_continue_on_error="False" required_install="True" required_uninstall="True" selected_install="True" selected_uninstall="True" note="" processor_architecture_filter="x64" status_installed="" status_notinstalled="" supports_install="True" supports_uninstall="True" show_progress_dialog="True" show_cab_dialog="True"> <embedfile sourcefilepath="YourPackageInstaller.msi" targetfilepath="YourPackageInstaller.msi" /> <installedcheck path="SOFTWARE/MyCompany Design/YourProduct YourPackage" fieldname="Version" fieldvalue="%YOURVERSION%" defaultvalue="False" fieldtype="REG_SZ" comparison="version_ge" rootkey="HKEY_LOCAL_MACHINE" wowoption="WOW64_64" type="check_registry_value" description="Installed Check" /> </component> </configuration> </configurations>


Recientemente he luchado con este problema al tratar de proporcionar POS para .NET en un arranque de WiX. De fábrica, el archivo POS para el ejecutable de .NET no es muy útil, especialmente cuando se intenta proporcionarlo como una instalación silenciosa desde otro instalador. Encontré que la mejor manera de evitar esto era proporcionar POS para .NET en un ejecutable autoextraíble personalizado más amigable. Esta es la solución que funcionó para mí:

  1. Ejecute el POS para el ejecutable .NET y extraiga los archivos en un directorio local.
  2. Resalte todos los archivos y carpetas en el directorio descomprimido y, usando WinRAR, haga clic en "Agregar al archivo ..."
  3. En la ventana emergente, haga clic en examinar para seleccionar dónde se guardará su archivo de salida y cambie el nombre del archivo a algo más amigable (opcional).
  4. Haga clic en "Crear archivo SFX" en la sección Opciones de archivo; haga clic en Aceptar y se generará un archivo ejecutable en su ubicación especificada.
  5. Haga clic con el botón derecho en su nuevo archivo ejecutable y seleccione "Abrir con WinRAR".
  6. Haga clic en el icono de SFX en la parte superior y luego haga clic en "Opciones avanzadas de SFX".
  7. En la pestaña Configuración, vaya a "Ejecutar después de la extracción" e introduzca:

    Setup.exe / ADDLOCAL Runtime, Posdm

  8. Vaya a la pestaña "Modos" y asegúrese de que "Desempaquetar en carpeta temporal" esté marcado, y que "Ocultar todo" esté seleccionado en "Modo silencioso"
  9. Haga clic en Aceptar dos veces y WinRAR agregará su configuración al archivo ejecutable.
Seguir los pasos anteriores le permitirá empacar POS para .NET de una manera "fácil de usar" y ahora se puede incluir como un elemento ExePackage en su paquete que se instalará en silencio.

Espero que esto ayude a alguien.