tis-dopdf icon

doPDF

Silent install package for doPDF

11.9.492-14

  • package: tis-dopdf
  • name: doPDF
  • version: 11.9.492-14
  • categories: Office,Utilities
  • maintainer: WAPT Team,Tranquil IT,Jimmy PELÉ
  • editor: Softland
  • licence: Freeware
  • locale: all
  • target_os: windows
  • impacted_process: novapdfs,novacl11,novaem11,novaemex11
  • architecture: x64
  • signature_date:
  • size: 142.60 Mo
  • installed_size: 139.71 Mo
  • homepage : https://www.dopdf.com/
  • depends:

package           : tis-dopdf
version           : 11.9.492-14
architecture      : x64
section           : base
priority          : optional
name              : doPDF
categories        : Office,Utilities
maintainer        : WAPT Team,Tranquil IT,Jimmy PELÉ
description       : This package will install Visual Studio 2010 Tools for Office Runtime and autorun the Spooler service - doPDF installs itself as a virtual PDF and allow you to convert any type of printable documents to PDF files
depends           : tis-dotnetfx,tis-vcredist2010
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.0
sources           : https://www.dopdf.com/download.html
installed_size    : 139714560
impacted_process  : novapdfs,novacl11,novaem11,novaemex11
description_fr    : Ce paquet installera Visual Studio 2010 Tools for Office Runtime et lancera automatiquement le service Spooler. doPDF s'installe comme un PDF virtuel et vous permet de convertir tout type de document imprimable en fichier PDF
description_pl    : Pakiet ten zainstaluje Visual Studio 2010 Tools for Office Runtime i autorun usługę Spooler - doPDF instaluje się jako wirtualny PDF i pozwala na konwersję dowolnego typu drukowanych dokumentów na pliki PDF
description_de    : Dieses Paket installiert Visual Studio 2010 Tools for Office Runtime und autorisiert den Spooler-Dienst - doPDF installiert sich selbst als virtuelles PDF und ermöglicht es Ihnen, jede Art von druckbaren Dokumenten in PDF-Dateien zu konvertieren
description_es    : Este paquete instalará Visual Studio 2010 Tools for Office Runtime y ejecutará automáticamente el servicio Spooler - doPDF se instala como un PDF virtual y permite convertir cualquier tipo de documentos imprimibles en archivos PDF
description_pt    : Este pacote irá instalar o Visual Studio 2010 Tools for Office Runtime e auto-instalar o serviço Spooler - doPDF instala-se como um PDF virtual e permite converter qualquer tipo de documentos imprimíveis em ficheiros PDF
description_it    : Questo pacchetto installa Visual Studio 2010 Tools for Office Runtime e avvia il servizio Spooler - doPDF si installa come PDF virtuale e consente di convertire qualsiasi tipo di documento stampabile in file PDF
description_nl    : Dit pakket installeert Visual Studio 2010 Tools for Office Runtime en autorunt de Spooler service - doPDF installeert zichzelf als een virtuele PDF en maakt het mogelijk om elk type afdrukbare documenten om te zetten naar PDF bestanden
description_ru    : Этот пакет установит Visual Studio 2010 Tools for Office Runtime и автозапуск службы Spooler - doPDF установит себя как виртуальный PDF и позволит вам конвертировать любой тип печатных документов в PDF файлы
audit_schedule    : 
editor            : Softland
keywords          : 
licence           : Freeware
homepage          : https://www.dopdf.com/
package_uuid      : f339b9db-e88c-4e50-ab56-1cbd61b3080a
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://forum.dopdf.com/announcements-f2/changelog-dopdf-10-t5455.html
min_os_version    : 5.1
max_os_version    : 
icon_sha256sum    : 09e973c61b70a9985a49ca9d2d3d10a78f2556f5f56a9f7e5d284dcfc6093365
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-07-09T09:25:51.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         : d5K+VSpz18Q8+02DVfJmzlbLhgu5brh3SesYkciscZ4XAzK+Xcg3LPg4WvF3vdftBU7PnyAg25rgc1dXLpNGT86xKLStHTeb1id4nzff3Jl6TxUyvHeNuQRtIpuR5NrBieYErz/EP/BhZLk3rmUs9FxO+RnXM4qkMaxD8Uzv8zgmyggyCivBOuPWho1q+1APNub/gURJ43UBbmK8s5BLTeldsl6f509ukaz0EosZrCpGkG7Mf0FsKFeUHRKt/TpI4xXGtOEyOVaYby7rH0TZj6LAyIxkKt+7lz6WVK0Z0dftI80PxYcommbno/6z+t9kIp/vCKmvC41IGqjBz/Zhpg==

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

r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()

https://forum.dopdf.com/general-f1/dopdf-10-silent-install-without-office-add-ins-t5476.html

"""
# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls
bin_name_string = "dopdf-full-%s.exe"
app_name = "doPDF"
# vstor_zip = "vstor_dopdf.zip"


def install():
    # Declaring local variables
    package_version = control.version.split("-", 1)[0]
    major_version = package_version.split(".")[0]
    bin_name = bin_name_string % package_version

    # Disabling Telemetry twice
    registry_setstring(HKEY_LOCAL_MACHINE, r"SOFTWARE\Softland\novaPDF %s\doPdf_Softland" % major_version, "SendTelemetry", "False")
    registry_setstring(HKEY_LOCAL_MACHINE, r"SOFTWARE\Softland\novaPDF %s\doPdf_Softland" % major_version, "ShowTrayIcon", "False")
    registry_setstring(HKEY_LOCAL_MACHINE, r"SOFTWARE\Softland\novaPDF %s\doPdf_Softland" % major_version, "AutomaticUpdate", "0")

    # Uninstall before if install forced
    if force:
        try:
            uninstall()
        except:
            print("WARNING: Uninstallation before installation do not complete")

    # App dependencies
    unzip("vstor_dopdf.zip", ".")
    install_exe_if_needed(r"vstor_dopdf\Setup.exe", "/q /norestart")
    set_service_start_mode("Spooler", "Auto")

    # Installing the software
    print("Installing: %s" % bin_name)
    install_exe_if_needed(
        bin_name,
        silentflags="/SILENT /VERYSILENT /SUPPRESSMSGBOXES /NOCANCEL /NORESTART",
        name=app_name,
        min_version=package_version,
        # timeout=300,
    )
    wait_uninstallkey_present(name=app_name)

    # Avoiding the usage by WAPT of the app built-in Uninstallstring
    uninstallkey.clear()

    # Disabling Telemetry twice
    registry_setstring(HKEY_LOCAL_MACHINE, r"SOFTWARE\Softland\novaPDF %s\doPdf_Softland" % major_version, "SendTelemetry", "False")
    registry_setstring(HKEY_LOCAL_MACHINE, r"SOFTWARE\Softland\novaPDF %s\doPdf_Softland" % major_version, "ShowTrayIcon", "False")
    registry_setstring(HKEY_LOCAL_MACHINE, r"SOFTWARE\Softland\novaPDF %s\doPdf_Softland" % major_version, "AutomaticUpdate", "0")


def uninstall():
    # Uninstalling the package
    for soft in installed_softwares(name=app_name):
        print("Removing: %s " % soft["name"])
        run_notfatal(WAPT.uninstall_cmd(soft["key"]))
        wait_uninstallkey_absent(soft["key"])
    if len(installed_softwares("dopdf")) != 0:
        error("ERROR: %s is not fully uninstalled" % app_name)


def session_setup():
    print("Disabling: Auto-update check")

    # Declaring local variables
    package_version = control.version.split("-", 1)[0]
    major_version = package_version.split(".")[0]

    registry_setstring(HKEY_CURRENT_USER, r"SOFTWARE\Softland\novaPDF %s\doPdf_Softland" % major_version, "AutomaticUpdate", "0")
    registry_setstring(HKEY_CURRENT_USER, r"SOFTWARE\Softland\novaPDF %s\doPdf_Softland" % major_version, "HideNews", "1")
    registry_setstring(HKEY_CURRENT_USER, r"SOFTWARE\Softland\novaPDF %s\doPdf_Softland" % major_version, "SendTelemetry", "True")
    # registry_delete(HKEY_CURRENT_USER, r'SOFTWARE\Softland\novaPDF %s\doPdf_Softland' % major_version, 'UpdateInterval')

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


def update_package():
    # Declaring local variables
    bin_name_string = "dopdf-full-%s.exe"

    result = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    app_name = control.name
    url_dl = "https://download.dopdf.com/download/setup/dopdf-full.exe"

    # Getting latest informations from official website
    for bs_search in bs_find_all(control.sources, "span", proxies=proxies):
        if bs_search.text.startswith("Version:"):
            version = bs_search.text.split(" ")[2]
    
    print("Latest %s version is: %s" % (app_name, version))
    print("Download url is: %s" % url_dl)

    print("Downloading: dopdf-full.exe")
    wget(url_dl, "dopdf-full.exe", proxies=proxies)

    # Checking version from file
    version_from_file = get_version_from_binary("dopdf-full.exe")
    if Version(version) != Version(version_from_file) and version_from_file != "":
        print("Changing version to the version number of the binary (from: %s to: %s)" % (version, version_from_file))
        version = version_from_file
    else:
        print("Binary file version corresponds to online version")

    filecopyto("dopdf-full.exe", bin_name_string % version_from_file)
    remove_file("dopdf-full.exe")

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

    # Deleting outdated binaries
    remove_outdated_binaries(version)

    # Validating or not update-package-sources
    return result

38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
d325f554c7e9923a089da13e9fc6319afe9225f63165a08e378c925528ec32df : WAPT/control
09e973c61b70a9985a49ca9d2d3d10a78f2556f5f56a9f7e5d284dcfc6093365 : WAPT/icon.png
1a23af3bf4ec2af48bf061ae5e8fa3d8d5a3f0edaf484788e0412ddc5f969390 : dopdf-full-11.9.492.exe
42091695c9023833ba3bd42d26d638dbc5bebc9cd9fb5988d6aafbd72bd6f903 : luti.json
d1174fe296e1dc5b687d69946520efaf1df5a32e5c9c21e0888667d38abbb261 : setup.py
498a013888f4eed044b970fb7a043fe2cf6cd87085820cbdf42db766a28ae3f9 : update_package.py
676330a122fbc0821e4cfe6c24e5705aa467b0cc36ee38dfecf9e923e4c42ca7 : vstor_dopdf.zip