tis-adobereader icon

Adobe Acrobat Reader

Silent install package for Adobe Acrobat Reader

2025.1.20521-89

  • package: tis-adobereader
  • name: Adobe Acrobat Reader
  • version: 2025.1.20521-89
  • categories: Office,Utilities
  • maintainer: WAPT Team,Tranquil IT,Jimmy PELÉ,Simon Fonteneau
  • editor: Adobe Inc.
  • licence: proprietary_free,wapt_public
  • locale: all
  • target_os: windows
  • impacted_process: Acrobat,AcrobatInfo,AcroBroker,AcroTextExtractor,AcroLayoutRecognizer,AcroCEF,AcroRd32,AcroRd32Info,AdobeCollabSync,RdrCEF,RdrServicesUpdater
  • architecture: x64
  • signature_date:
  • size: 732.50 Mo
  • installed_size: 1.28 Go
  • homepage : https://adobe.com/
  • depends:

package           : tis-adobereader
version           : 2025.1.20521-89
architecture      : x64
section           : base
priority          : optional
name              : Adobe Acrobat Reader
categories        : Office,Utilities
maintainer        : WAPT Team,Tranquil IT,Jimmy PELÉ,Simon Fonteneau
description       : Adobe Acrobat is a family of application software and Web services developed by Adobe Inc. to view, create, manipulate, print and manage Portable Document Format (PDF) files
depends           : tis-vcredist
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.3
sources           : https://get.adobe.com/reader/
installed_size    : 1284008424
impacted_process  : Acrobat,AcrobatInfo,AcroBroker,AcroTextExtractor,AcroLayoutRecognizer,AcroCEF,AcroRd32,AcroRd32Info,AdobeCollabSync,RdrCEF,RdrServicesUpdater
description_fr    : Adobe Acrobat est une famille de logiciels d'application et de services web développés par Adobe Inc. pour visualiser, créer, manipuler, imprimer et gérer des fichiers Portable Document Format (PDF)
description_pl    : Adobe Acrobat to rodzina aplikacji i usług internetowych opracowanych przez firmę Adobe Inc. do przeglądania, tworzenia, obróbki, drukowania i zarządzania plikami w formacie Portable Document Format (PDF)
description_de    : Adobe Acrobat ist eine von Adobe Inc. entwickelte Familie von Anwendungssoftware und Webdiensten zum Anzeigen, Erstellen, Bearbeiten, Drucken und Verwalten von Dateien im Portable Document Format (PDF)
description_es    : Adobe Acrobat es una familia de aplicaciones y servicios web desarrollados por Adobe Inc. para visualizar, crear, manipular, imprimir y gestionar archivos en formato PDF (Portable Document Format)
description_pt    : O Adobe Acrobat é uma família de software de aplicação e serviços Web desenvolvidos pela Adobe Inc. para visualizar, criar, manipular, imprimir e gerir ficheiros Portable Document Format (PDF)
description_it    : Adobe Acrobat è una famiglia di software applicativi e servizi Web sviluppati da Adobe Inc. per visualizzare, creare, manipolare, stampare e gestire file in formato PDF (Portable Document Format)
description_nl    : Adobe Acrobat is een reeks applicatiesoftware en webservices ontwikkeld door Adobe Inc. voor het bekijken, maken, manipuleren, afdrukken en beheren van Portable Document Format (PDF)-bestanden
description_ru    : Adobe Acrobat - это семейство прикладного программного обеспечения и веб-сервисов, разработанных компанией Adobe Inc. для просмотра, создания, манипулирования, печати и управления файлами Portable Document Format (PDF)
audit_schedule    : 
editor            : Adobe Inc.
keywords          : adobe,reader,acrobat,dc,pdf,portable,document,format,print,view
licence           : proprietary_free,wapt_public
homepage          : https://adobe.com/
package_uuid      : 0e83e43d-5e21-44ed-986f-3ccb4af9492a
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://helpx.adobe.com/acrobat/release-note/release-notes-acrobat-reader.html
min_os_version    : 10.0
max_os_version    : 
icon_sha256sum    : e08ef23b951752553b93f621e169cbb918ded4eb56c504ed32f7da48d7e31b7c
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-06-06T11:02:59.000000
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes
signature         : saCDopE/0+s3AH0Ix4MbsK1F8j+N6S1LoLuj2EGXRKf/bFeKIEZy2FwKR44WjFsZfKra/fnUNjZqCziMD9fqfhr1A/zVCsrf0mP1Kfoqq7xFss/oFY0PbJyI/2SoAYBcsnOoGhpaPlpc5p6DEUBSB9rzkEuC/ppJbPznBAAtujON32zuCKSOs7ozolRvagA/AQdrCXLFtHMMqltx00bM6781d6e2eOQngHSN07PMPOMIQkKFKK0qgZgI4ay4DfPNGRJx5SuolKXdmx6NpbMV1ZfhgiNwvvTaElUkVD0uZ0g+HgnymVqCf+/mAf1FOqC9mkIiP+7sGA/KYjcLjTkzJQ==

# -*- coding: utf-8 -*-
from setuphelpers import *
import os
import chardet

r"""
https://silentinstallhq.com/adobe-reader-dc-silent-install-how-to-guide/
AcroRdrDC2300320215_en_US.exe /sAll /rs /msi EULA_ACCEPT=YES /L*V "%WINDIR%\Temp\AdobeReader-Install.log"
MsiExec.exe /i "%~dp0AcroRead.msi" PATCH="%~dp0AcroRdrDCUpd2300320215.msp" /qn /L*V "%WINDIR%\Temp\AdobeReader-Install.log"

https://www.adobe.com/devnet-docs/acrobatetk/tools/DesktopDeployment/cmdline.html

Installation	9.0 & later	ENABLE_CACHE_FILES	1 (the default) enables setup file caching of the installer files on the local system. The opposite of DISABLE_CACHE.
Installation	10.0 & later	DISABLE_CACHE	1 disables setup file caching. The opposite of ENABLE_CACHE_FILES.

"C:\Windows\system32\msiexec.exe" /i {AC76BA86-7AD7-FFFF-7B44-AC0F074E4100}  /L*V "C:\Windows\Temp\AdobeReader-Install.log DISABLE_CACHE=1 REBOOT="ReallySuppress" PATCH="C:\Program Files (x86)\Common Files\Adobe\Acrobat\Setup\{AC76BA86-7AD7-FFFF-7B44-AC0F074E4100}\RDC\AcroRdrDCUpd2300320215_MUI.msp" /qn

"C:\Program Files (x86)\Common Files\Adobe\Acrobat\Setup\{AC76BA86-7AD7-FFFF-7B44-AC0F074E4100}\RDC\setup.exe" /sAll /rs /msi /L*V "C:\Windows\Temp\AdobeReader-Install.log DISABLE_CACHE=1

"C:\Program Files (x86)\Common Files\Adobe\Acrobat\Setup\{AC76BA86-7AD7-FFFF-7B44-AC0F074E4100}\setup.exe" /sAll /rs /msi DISABLE_CACHE=1

"C:\Windows\system32\msiexec.exe" /i "C:\Program Files (x86)\Common Files\Adobe\Acrobat\Setup\{AC76BA86-7AD7-FFFF-7B44-AC0F074E4100}\AcroRead.msi" TRANSFORMS=""  DISABLE_CACHE=1 REBOOT="ReallySuppress" PATCH="C:\Program Files (x86)\Common Files\Adobe\Acrobat\Setup\{AC76BA86-7AD7-FFFF-7B44-AC0F074E4100}\AcroRdrDCUpd2300320215_MUI.msp" /qn

some keys examples: https://github.com/bmrf/standalone_scripts/blob/master/tron_guid_whitelist.txt

# 32bit app
{
 "key":"{AC76BA86-7AD7-FFFF-7B44-AC0F074E4100}",
 "name":"Adobe Acrobat Reader MUI",
 "version":"23.003.20215",
 "install_date":"2023-07-04 00:00:00",
 "install_location":"C:\\Program Files (x86)\\Adobe\\Acrobat Reader DC\\",
 "uninstall_string":"MsiExec.exe /I{AC76BA86-7AD7-FFFF-7B44-AC0F074E4100}",
 "publisher":"Adobe Systems Incorporated",
 "system_component":0,
 "win64":false
}

# 64bit app
{
 "key":"{AC76BA86-1033-FF00-7760-BC15014EA700}",
 "name":"Adobe Acrobat (64-bit)",
 "version":"23.003.20215",
 "install_date":"2023-07-04 00:00:00",
 "install_location":"C:\\Program Files\\Adobe\\Acrobat DC\\",
 "uninstall_string":"MsiExec.exe /I{AC76BA86-1033-FF00-7760-BC15014EA700}",
 "publisher":"Adobe",
 "system_component":0,
 "win64":true
}

"""
app_scheduled_tasks = ["Adobe Acrobat Update Task"]
app_services = ["AdobeARMservice"]


def install():
    software_version = control.get_software_version().split("20", 1)[-1]
    log_path = makepath(r"C:\Windows\Temp", "AdobeReader-Install.log")
    # upgrade_log_path = makepath(r"C:\Windows\Temp", "AdobeReader-Upgrade.log")
    silentflags = f'/sAll /rs /msi EULA_ACCEPT=YES /L*V "{log_path}"'
    
    if ensure_list(control.architecture)[0] == "x64":
        app_uninstallkey = "{AC76BA86-1033-FF00-7760-BC15014EA700}"
    else:
        app_uninstallkey = "{AC76BA86-7AD7-FFFF-7B44-AC0F074E4100}"

    # Uninstalling old products and app if install is forced
    for to_uninstall in installed_softwares("Adobe Acrobat"):

        do_uninstall = False
        installer_key = None

        #Getting some info in registry key to know which version of Adobe is installed
        try:
            key = reg_openkey_noredir(HKEY_LOCAL_MACHINE, fr'SOFTWARE\Adobe\Adobe Acrobat\DC\Installer')
            installer_key = reg_getvalue(key, "shAlfSdPackCab")
        except WindowsError as e:
            pass

        #If Pro version is installed
        if installer_key and installer_key != "NULL":
            if force:
                print(f'WARNING: {to_uninstall["name"]} is a Pro version and will be remove because the install is forced.')
                do_uninstall = True
            else :
                print(f'INFO: {to_uninstall["name"]} ({to_uninstall["version"]}) is already installed and is a Pro version, you can remove it with a force install.')
                return
        else:
            continue

        if "MUI" in to_uninstall["name"]:
            if force:
                print(f'WARNING: {to_uninstall["name"]} is a MUI version and will be remove because the install is forced.')
                do_uninstall = True
            else :
                print(f'INFO: {to_uninstall["name"]} ({to_uninstall["version"]}) is already installed and is a MUI version, you can remove it with a force install.')
                return

        if do_uninstall:
            print("Removing: %s (%s)" % (to_uninstall["name"], to_uninstall["version"]))
            killalltasks(ensure_list(control.impacted_process))
            run(uninstall_cmd(to_uninstall["key"]))
            wait_uninstallkey_absent(to_uninstall["key"])

        if Version(to_uninstall["version"]) == Version(control.get_software_version()) and iswin64() and not to_uninstall["win64"]:
            print(
                f'INFO: {to_uninstall["name"]} (32-bit) version is installed and up-to-date. You can force-install this package to migrate to the (64-bit) version after removing the "architecture      : all" package from your repo.'  # or changing his "max_os_version" to "10.0"
            )
        # else:
        #     print(
        #         f'INFO: {to_uninstall["name"]} version is installed. You can force-install this package to migrate to the (32-bit) version (not recommended) after removing the "architecture      : x64" package from your repo and changing "max_os_version" to "". '
        #     )

    # Removing application desktop shortcut if allowed
    if params.get("remove_desktop_shortcuts"):
        silentflags += " DISABLEDESKTOPSHORTCUT=1"
        remove_desktop_shortcut("Acrobat Reader DC")
        remove_desktop_shortcut("Adobe Acrobat")

    # Installing software
    bin_name = glob.glob("AcroRdrDC*.exe")[0]
    try:
        install_exe_if_needed(
            bin_name,
            silentflags=silentflags,
            key=app_uninstallkey,
            min_version=software_version,
            timeout=1200,
        )
    except Exception as e:
        print(e)
        with open(log_path, "r", encoding=detect_file_encoding(log_path)) as f:
            log_content = f.read()
        error(log_content)

    # # Upgrading software
    # bin_name = glob.glob("AcroRdrDC*.msp")[0]
    # if need_install(app_uninstallkey, min_version=software_version):
    #     print(r"Installing: %s (%s)" % (bin_name, software_version))
    #     try:
    #         run(f'msiexec.exe /p "{bin_name}" /norestart /quiet ALLUSERS=1 EULA_ACCEPT=YES /L*V "{upgrade_log_path}"', timeout=1200)
    #     except Exception as e:
    #         print(e)
    #         with open(upgrade_log_path, "r", encoding=detect_file_encoding(upgrade_log_path)) as f:
    #             log_content = f.read()
    #         error(log_content)
    # else:
    #     print("MSP setup %s already installed. Skipping" % bin_name)
    # if need_install(app_uninstallkey, min_version=software_version):
    #     error("%s upgrade failed." % bin_name)

    # Disabling application scheduled tasks
    for task_name in app_scheduled_tasks:
        if task_exists(task_name):
            try:
                disable_task(task_name)
            except:
                print(f"Unable to disable the task_name: {task_name}")

    # Changing default start mode of the application services
    for service_name in app_services:
        set_service_start_mode(service_name, "Disabled")
    
    # To unsure no update is launch !
    registry_set(HKEY_LOCAL_MACHINE, rf'SOFTWARE\WOW6432Node\Adobe\Adobe ARM\Legacy\Acrobat\{app_uninstallkey}', 'Mode', 0, REG_DWORD)
    registry_set(HKEY_LOCAL_MACHINE, rf'SOFTWARE\WOW6432Node\Policies\Adobe\Adobe Acrobat\DC\FeatureLockDown', 'bUpdater', 0, REG_DWORD)
    registry_set(HKEY_LOCAL_MACHINE, rf'SOFTWARE\WOW6432Node\Adobe\Adobe ARM\1.0\ARM', 'iCheck', 0, REG_DWORD)
    registry_set(HKEY_LOCAL_MACHINE, rf'SOFTWARE\WOW6432Node\Adobe\Adobe ARM\1.0\ARM', 'iDisablePromptForUpgrade', 1, REG_DWORD)

def uninstall():
    
    if ensure_list(control.architecture)[0] == "x64":
        app_uninstallkey = "{AC76BA86-1033-FF00-7760-BC15014EA700}"
    else:
        app_uninstallkey = "{AC76BA86-7AD7-FFFF-7B44-AC0F074E4100}"
    
    # 64bit app
    editor_dir = makepath(programfiles, "Adobe")
    app_dir = makepath(editor_dir, "Acrobat DC", "Acrobat")
    if isdir(app_dir):
        remove_tree(app_dir)
    if remove_empty_directories(editor_dir):
        remove_tree(editor_dir)

    # 32bit app
    editor_dir = makepath(programfiles32, "Adobe")
    app_dir = makepath(editor_dir, "Acrobat Reader DC", "Reader")
    if isdir(app_dir):
        remove_tree(app_dir)
    if remove_empty_directories(editor_dir):
        remove_tree(editor_dir)

    adobe_registry_entries = [
        (HKEY_LOCAL_MACHINE, rf'SOFTWARE\WOW6432Node\Adobe\Adobe ARM\Legacy\Acrobat\{app_uninstallkey}', 'Mode'),
        (HKEY_LOCAL_MACHINE, r'SOFTWARE\WOW6432Node\Policies\Adobe\Adobe Acrobat\DC\FeatureLockDown', 'bUpdater'),
        (HKEY_LOCAL_MACHINE, r'SOFTWARE\WOW6432Node\Adobe\Adobe ARM\1.0\ARM', 'iCheck'),
        (HKEY_LOCAL_MACHINE, r'SOFTWARE\WOW6432Node\Adobe\Adobe ARM\1.0\ARM', 'iDisablePromptForUpgrade')
    ]

    for root_key, subkey_path, key_name in adobe_registry_entries:
        full_path = f"{subkey_path}\\{key_name}"
        if reg_key_exists(root_key, full_path):
            registry_deletekey(root_key, subkey_path, key_name, recursive=True)


def remove_empty_directories(root_directory):
    if os.path.exists(root_directory):
        for dirpath, dirnames, filenames in os.walk(root_directory, topdown=False):
            if not any(os.scandir(dirpath)):
                os.rmdir(dirpath)
                print(f"Removed empty directory: {dirpath}")


def detect_file_encoding(file_path):
    """Detect the encoding of a file.

    Args:
        file_path (str): The path to the file to be analyzed.

    Returns:
        str: The detected character encoding of the file.

    >>> detect_file_encoding(file_path)
    'UTF-8-SIG'

    """
    with open(file_path, "rb") as file:
        raw_data = file.read()
        result = chardet.detect(raw_data)
        return result["encoding"]

# -*- coding: utf-8 -*-
from setuphelpers import *
from setupdevhelpers import *
from waptutils import get_sha256

"""
https://get.adobe.com/reader/enterprise/
https://get.adobe.com/reader/download?os=Windows+11&name=Reader+DC+2023.003.20215+MUI+for+Windows-64bit&lang=mui&nativeOs=Windows+10&accepted=&declined=&preInstalled=&site=enterprise
https://get.adobe.com/reader/download?os=Windows+7&name=Reader+DC+2023.003.20215+MUI+for+Windows-32bit&lang=mui&nativeOs=Windows+10&accepted=&declined=&preInstalled=&site=enterprise
https://ardownload2.adobe.com/pub/adobe/acrobat/win/AcrobatDC/2300320215/AcroRdrDCx642300320215_MUI.exe
https://ardownload2.adobe.com/pub/adobe/reader/win/AcrobatDC/2300320215/AcroRdrDC2300320215_MUI.exe

https://silentinstallhq.com/adobe-reader-dc-silent-install-how-to-guide/
Enter the following command to extract the MSI:
AcroRdrDC2300320215_en_US.exe -sfx_o"C:\Downloads\ReaderDC" -sfx_ne

"""


def update_package():
    # Declaring local variables
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    update_dict = {
        "bin_contains": {
            "windows": "_MUI.msp",
            "mac": "_MUI.dmg",
        },
        "bin_name_to_substitute": {
            "windows-all": "AcroRdrDC%s_MUI.exe",
            "windows-x64": "AcroRdrDCx64%s_MUI.exe",
            "mac-all": "AcroRdrSCADC%s_MUI.dmg",
        },
        "name_api": {
            "windows-all":r"Windows%207",
            "windows-x64": r"Windows%2011",
            "mac-all": "Mac%20OS%2010.15.0",
        },
    }

    # # Getting base installer
    # if control.target_os == "windows":
    #     if iswin64():
    #         # https://ardownload2.adobe.com/pub/adobe/acrobat/win/AcrobatDC/2400120615/AcroRdrDCx642400120615_MUI.exe
    #         binaries_dict = {"AcroRdrDCx642400120615_MUI.exe": "8820bff54abd9c636bbc7fb11a5ed338de5dc72222055d22983a7b86388a3f1d"}
    #     else:
    #         # https://ardownload2.adobe.com/pub/adobe/reader/win/AcrobatDC/2400120615/AcroRdrDC2400120615_MUI.exe
    #         binaries_dict = {"AcroRdrDC2400120615_MUI.exe": "c34f14e5e1c5ffae7b0422e92cb907d72b1b243b7a0c085e55c1601b6838f1c1"}

    #     for bin_name in binaries_dict:
    #         # http is ok since we are verifying sha256
    #         download_url = "http://srvtemplates.ad.tranquil.it/binary_cache/" + (bin_name)
    #         sha256 = binaries_dict[bin_name]
    #         if isfile(bin_name):
    #             if get_sha256(bin_name) != sha256:
    #                 remove_file(bin_name)
    #         print("Download URL is: %s" % download_url)
    #         if not isfile(bin_name):
    #             print("Downloading: %s" % bin_name)
    #             wget(download_url, bin_name, sha256=sha256, proxies=proxies)
    #         else:
    #             print("Binary is present: %s" % bin_name)

    url = "https://helpx.adobe.com/acrobat/release-note/release-notes-acrobat-reader.html"
    web_version = "0"

    # Getting latest version from official sources
    found = False
    print("URL used is: %s" % url)
    for release in bs_find_all(url, "a", "disablelinktracking", "false", proxies=proxies):
        if not release.text.startswith("DC "):
            continue
        for release_url in bs_find_all(release["href"], "a", "class", "reference external", proxies=proxies):
            if release_url["href"].endswith(update_dict["bin_contains"][control.target_os]):
                latest_bin = release_url["href"].split("/")[-1]
                if control.architecture == "x64" and not "x64" in latest_bin:
                    continue
                download_url_part = release_url["href"].rsplit("/", 1)[0]
                version_adobe = download_url_part.split("/")[-1].lower()
                web_version = release.text.split("(")[-1].split(")")[0].lower()

                if "x" in web_version:
                    count_x = web_version.count("x")
                    missing_digits = version_adobe[-count_x:]
                    web_version = web_version.split("x", 1)[0] + missing_digits

                latest_bin = update_dict["bin_name_to_substitute"][f"{control.target_os}-{control.architecture}"] % version_adobe
                download_url = download_url_part + "/" + latest_bin
                if requests.head(download_url, proxies=proxies).status_code == 404:
                    web_version = "0"
                    continue
                found = True
                break
        if found:
            break

    # Downloading latest binaries

    Os = update_dict["name_api"][f"{control.target_os}-{control.architecture}"]
    data = requests.get('https://rdc.adobe.io/reader/products?lang=mui&os=' + Os +'&preInstalled=0&country=FR&api_key=dc-get-adobereader-cdn',proxies=proxies)
    datajson = json.loads(data.content)
    namear  = datajson['products']['reader'][0]['displayName'].replace(' ','%20')
    versionofficial = datajson['products']['reader'][0]['version']

    version = "20%s" % web_version

    if Version(versionofficial) > Version(web_version):
        version = "20%s" % versionofficial
        url = r"https://rdc.adobe.io/reader/downloadUrl?name=" + namear  + r"&nativeOs=&os=" + Os + "&site=enterprise&lang=mui&country=FR&api_key=dc-get-adobereader-cdn"
        data = requests.get(url,proxies=proxies)
        datajson = json.loads(data.content)
        download_url = datajson['downloadURL']
        latest_bin = download_url.split('/')[-1]



    print("Latest %s version is: %s" % (control.name, version))
    print("Download URL is: %s" % download_url)
    if not isfile(latest_bin):
        print("Downloading: %s" % latest_bin)
        wget(download_url, latest_bin, proxies=proxies)
    else:
        print("Binary is present: %s" % latest_bin)

    # Deleting outdated binaries
    for f in glob.glob('*_MUI.*'):
        if f != latest_bin:
            remove_file(f)

    # Changing version of the package
    if Version(version, 4) > Version(control.get_software_version(), 4):
        print("Software version updated (from: %s to: %s)" % (control.get_software_version(), Version(version)))
        package_updated = True
    else:
        print("Software version up-to-date (%s)" % Version(version))
    control.set_software_version(version)
    control.save_control_to_wapt()

    # Validating or not update-package-sources
    return package_updated

    # # Changing version of the package and validating update-package-sources
    # return complete_control_version(control, version)

a761fb53643ff59c8bfe4029e4a615a053fb6fd8713bd8311c977fd42149fede : AcroRdrDCx642500120521_MUI.exe
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
ab1a2be47df078e75864207816d85ef742e1523d6f4f028503262dd31d35cde1 : WAPT/changelog.txt
06c19addfbdb21afee2f7a54ae2c58ff1a7ffcf0c4e83f149f52aaa7d6497c7e : WAPT/control
e08ef23b951752553b93f621e169cbb918ded4eb56c504ed32f7da48d7e31b7c : WAPT/icon.png
29445e9fa013c66e7ac258f556abc5d67af5f3e585b756da69855da9bde0e1bf : luti.json
40d88359fe8e77c9a5d8084de0449bfc5963124a6be137e7f512124b9d725ed3 : setup.py
474a0dbe4f58838d36f3abc8fa257c0fdce9832efe4b208f41e3d23ff2eddfb6 : update_package.py

https://helpx.adobe.com/acrobat/release-note/release-notes-acrobat-reader.html
86
===
- Improve info message

85
===
- Improve detection of Pro or MUI version already install
- No more uninstalling Pro version by default


84
===
- No longer use a base configuration, instead you should import and edit the package: tis-adobe-acrobat-config-template
- Logging file are now printed in WAPT Console when crashing.
- Uninstall code reduced.
- Fix update_package()


80
===
- Printing more information about Pro version workaround


79
===
- Major code improvement
- Switching to EXE (containing msi and msp file)
- Now printing what is happening in install
- Now uninstalling the software if install is forced (to fix: "Setup has detected that you already have a more functional product installed. Setup will now terminate")
- Windows 7 is still maintained as 32bit installer
- Code is unique for package architecture "all" and "x64", even if 64bit app is called Adobe Acrobat and 32bit app is called Acrobat Reader
- Disabling WelcomeScreen
- Disabling some pop-ups
- Disabling automatic updates, telemetry and intrusive services
- Zoom 100% by default
- Manipulating registry with dicts to handle multi architecture pathes
- Avoiding AdobeCollabSync.exe to run on startup
- Avoiding uninstallation on every installs
- We need further tests to determine if "Adobe Acrobat DC (64-bit)" is the only Pro version