tis-crystaldiskinfo icon

CrystalDiskInfo

Silent install package for CrystalDiskInfo

9.7.2-1

  • package: tis-crystaldiskinfo
  • name: CrystalDiskInfo
  • version: 9.7.2-1
  • categories: Utilities
  • maintainer: WAPT Team,Tranquil IT,Clément Baziret
  • editor: Crystal Dew World
  • licence: opensource_free,wapt_public
  • locale: all
  • target_os: windows
  • impacted_process: DiskInfo32,DiskInfo64
  • architecture: all
  • signature_date:
  • size: 5.51 Mo
  • installed_size: 17.30 Mo
  • homepage : https://crystalmark.info/en/software/crystaldiskinfo/
  • depends:

package           : tis-crystaldiskinfo
version           : 9.7.2-1
architecture      : all
section           : base
priority          : optional
name              : CrystalDiskInfo
categories        : Utilities
maintainer        : WAPT Team,Tranquil IT,Clément Baziret
description       : CrystalDiskInfo is an MIT-licensed S.M.A.R.T. utility for reading and monitoring disk drive status
depends           : tis-dotnetfx
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.3
sources           : https://crystalmark.info/en/software/crystaldiskinfo/
installed_size    : 17300095
impacted_process  : DiskInfo32,DiskInfo64
description_fr    : CrystalDiskInfo est un utilitaire S.M.A.R.T. sous licence MIT qui permet de lire et de contrôler l'état des lecteurs de disques
description_pl    : CrystalDiskInfo to licencjonowane przez MIT narzędzie S.M.A.R.T. do odczytu i monitorowania stanu dysków
description_de    : CrystalDiskInfo ist ein MIT-lizenziertes S.M.A.R.T.-Programm zum Lesen und Überwachen des Laufwerkstatus
description_es    : CrystalDiskInfo es una utilidad S.M.A.R.T. con licencia MIT para leer y monitorizar el estado de las unidades de disco
description_pt    : O CrystalDiskInfo é um utilitário S.M.A.R.T. licenciado pelo MIT para ler e monitorizar o estado da unidade de disco
description_it    : CrystalDiskInfo è un'utility S.M.A.R.T. con licenza MIT per la lettura e il monitoraggio dello stato delle unità disco
description_nl    : CrystalDiskInfo is een S.M.A.R.T. hulpprogramma met een SIT-licentie voor het lezen en controleren van de status van schijfstations
description_ru    : CrystalDiskInfo - лицензированная MIT утилита S.M.A.R.T. для чтения и мониторинга состояния дисковых накопителей
audit_schedule    : 24h
editor            : Crystal Dew World
keywords          : crystaldiskinfo,s.m.a.r.t.,smart,utility,monitoring,disk,drive,status
licence           : opensource_free,wapt_public
homepage          : https://crystalmark.info/en/software/crystaldiskinfo/
package_uuid      : 4880e31e-2933-430a-a5bd-01b602dc55a8
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://crystalmark.info/en/software/crystaldiskinfo/crystaldiskinfo-history/
min_os_version    : 5.1
max_os_version    : 
icon_sha256sum    : 6e1989215c0946c9bb4166f91153644817dd3d18ab634c94cec2ea1777925504
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-09-05T02:00:37.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         : glws906xx7a8Rh9Q4k3hiqE7FbeJEM5hOc6Fnf31P9mOMBE97rgyAm3w7UHdKexkNZu6PIHmTKdRgK+I/k1y8c0OxF6U/ag45bQ6KxpETc3VhqXk6WkD4V25bTWOHuWTEe1Wb6K2VI/gVcYwzfNhSt+DGUyrIS/rP+HI/lXG+DG0yQWmXXFCaymBlms/sqZdGVONclHX54VE44UsAZ75Eb3fSlx/34vIPWqBiE1KTL3YDO7C7yBtR/IMX7zhy2jIBJXoEoqXpU8NRJJinWFmNCEC0BHGHXHICE4V5olGboSBTcmqmfCo7CbyT+cRE/DuAa1fvuJm8HhYd+Dk/LSn0g==

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


def install():
    bin_name = glob.glob("CrystalDiskInfo*.exe")[0]

    install_exe_if_needed(
        bin_name,
        silentflags="/silent /verysilent",
        key="CrystalDiskInfo_is1",
        min_version=control.get_software_version(),
    )


def audit():
    audit_status = "OK"
    app_path = ""

    if is64():
        app_path = makepath(programfiles, "CrystalDiskInfo", "DiskInfo64.exe")
    else:
        app_path = makepath(programfiles, "CrystalDiskInfo", "DiskInfo32.exe")
    run('"%s" /CopyExit' % app_path)

    with open("C:/Program Files/CrystalDiskInfo/DiskInfo.txt", "r") as f:
        for ligne in f:
            if "Health Status" in ligne:
                ligne = ligne[19:22]
                if ligne != "Bon":
                    audit_status = "ERROR"
    # remove_file(r"C:/Program Files/CrystalDiskInfo/DiskInfo.txt")

    return audit_status

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


def update_package():
    # Declaring local variables
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    app_name = control.name
    url = "https://sourceforge.net/projects/crystaldiskinfo/files/"


    # Getting latest version from download url
    print("URL latest version from download url")
    for bs_search in bs_find_all(url, "tr", "class", proxies=proxies) :
        version = bs_search["title"]
        break
    url_version = url + version

    for bs_search in bs_find_all(url_version, "tr", "title", proxies=proxies) :
        p = re.compile(r'\D{1,}\d{1,}[_]\d{1,}[_]\d{1,}[.]\bexe\b')
        result = re.search(p,bs_search["title"])
        if result: 
            download_url = bs_search.find_next("a").get("href")
            latest_bin = download_url.split("/")[-2]
            break

    # Downloading latest binaries
    print("Latest %s version is: %s" % (app_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)

    # Checking version from file
    version_from_file = get_version_from_binary(latest_bin)
    if Version(version_from_file, 4) != Version(version, 4) 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")

    # 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))

    # Deleting binaries
    for f in glob.glob("*.exe"):
        if f != latest_bin:
            remove_file(f)


    control.set_software_version(version)
    control.save_control_to_wapt()

    # Validating or not update-package-sources
    return package_updated

244a024fa29fad26065488e58ec76b3bdac2295c884b6a92154f85f2b2c3f0ab : CrystalDiskInfo9_7_2.exe
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
6e34947fff9cbfc0a15a4ed6ad74f129d537f5d2622f186b5f4862597c23f852 : WAPT/control
6e1989215c0946c9bb4166f91153644817dd3d18ab634c94cec2ea1777925504 : WAPT/icon.png
d1996e8f54fd63b7087424b01879585bb6fe104a20e817759620cfd24a59e6af : luti.json
86a9546f42d7260d409621b55f2424b08eac62ee17066bc087c6c5b3759e38f1 : setup.py
e51a9160d9e6b661f68c3b7f5bca892e91dfc5232bc05abec64a6783abdc3d13 : update_package.py