Dürr VistaSoft
Guida tecnica per installatori: cosa controlla Rceasy, in quale ordine, con quali percorsi e chiavi di registro, e come risolvere ogni singolo errore che può comparire.
%LOCALAPPDATA%\Rceasy\Logs\rceasy-log-<data-ora>.txt. Prima di intervenire a mano, apri l'ultimo file e cerca le righe con prefisso [DurrVistaSoft]: trovi il nome esatto del controllo, se è andato a buon fine o no, e il messaggio di dettaglio riportato qui sotto.
1. Prerequisiti tecnici
Rceasy verifica questi elementi nell'ordine indicato nella sezione successiva. Classe di riferimento nel codice: DurrSetupService.
VistaSoft installato
Rceasy legge il valore Executable dalla chiave HKLM\SOFTWARE\WOW6432Node\DUERR DENTAL\VistaSoft. Se la chiave non è leggibile, cerca direttamente gli eseguibili VistaSoft.exe o Duerr.DigitalDiagnostics.Presentation.Host.exe tra i processi e nei percorsi noti del sistema.
Versione maggiore o uguale a 3
La versione è letta dal ProductVersion/FileVersion dell'eseguibile; se assente, da un file di testo version accanto all'eseguibile. Viene confrontato solo il numero di versione maggiore: deve essere ≥ 3.
Modalità Connect attiva
Verificata, in ordine: DeploymentConfig.json (chiave Configuration.ConnectMode), poi il valore di registro HAS_CONNECTMODE sotto HKLM\SOFTWARE\DUERR DENTAL\VistaSoft (vista a 64 bit, a 32 bit e percorso legacy WOW6432Node), infine una chiamata live alle API di ServerService/services che cerca i marcatori AcquisitionSourceForConnect, UpdateIsUsedForConnectStatus, IsXrayStationUsedForConnect, ConnectConfiguration.
VistaSoft in esecuzione
Rceasy controlla che almeno uno di questi processi sia attivo: VistaSoft.exe, VistaSoft, Duerr.DigitalDiagnostics.Presentation.Host.exe, Duerr.DigitalDiagnostics.Presentation.Host.
LocalServer raggiungibile
Rceasy chiama in sequenza https://localhost:3113/WorkstationService/services e https://localhost:3113/ServerService/services, con timeout di 6 secondi ciascuna e certificato TLS autofirmato accettato. Sono considerate valide le risposte HTTP 200, 401 e 403 (indicano che il servizio è comunque in ascolto).
2. Flusso di configurazione
Selezionando "Dürr VistaSoft", Rceasy esegue questi controlli, nell'ordine, fermandosi al primo che fallisce:
CheckVistaSoftInstalledAsync — Installazione
Verifica la presenza di VistaSoft via registro o ricerca eseguibili. In caso di fallimento: "VistaSoft does not appear to be installed. No valid registry reference or VistaSoft executables found."
CheckVersionAsync — Versione
Legge e interpreta la versione installata, verificando che sia ≥ 3. Cinque possibili motivi di fallimento distinti (vedi sezione Errori).
CheckVistaSoftConnectModeAsync — Modalità Connect
Verifica che Connect sia abilitato, provando le tre fonti elencate nei Prerequisiti in ordine.
CheckVistaSoftAppRunningAsync — Applicazione in esecuzione
Verifica che il processo VistaSoft sia effettivamente avviato sulla postazione.
CheckLocalServerAsync — Servizi locali
Verifica che WorkstationService e ServerService rispondano sulla porta 3113. Se tutti i controlli precedenti sono passati, Rceasy procede alla selezione della postazione.
Esempio di schermata durante il setup automatico
3. Selezione della postazione
Dopo le verifiche, Rceasy interroga il server VistaSoft per ottenere la lista delle postazioni radiografiche configurate.
Schermata di selezione della postazione VistaSoft
Seleziona la postazione
Dal menu a tendina, scegli la postazione usata normalmente per le scansioni radiografiche. Se sono presenti solo postazioni demo, Rceasy lo segnalerà ma permetterà comunque la selezione.
Conferma
Premi "Conferma" per applicare la configurazione. Rceasy registra il client su VistaSoft Connect, imposta la postazione selezionata e configura il numero scheda paziente come criterio identificativo — a meno che non sia già tutto così (vedi "Comportamenti da conoscere" sotto).
Setup completato
Se tutto va a buon fine, compare la schermata di conferma con il riepilogo della postazione configurata e il tipo di dispositivo associato.
Schermata finale di conferma configurazione Durr
4. Comportamenti da conoscere
"Timeout waiting for VistaSoft command completion. CommandUid='...'", significa che Rceasy ha atteso fino a 24 secondi (con interrogazioni ogni 900ms) una risposta di VistaSoft alla coda comandi e non l'ha ricevuta. Non è un bug dell'app: indica che VistaSoft non ha risposto in tempo. Verificare che VistaSoft non sia bloccato, in aggiornamento o sovraccarico sulla postazione, poi riprovare.
5. Errori comuni e soluzioni
Una card per ogni esito possibile dei controlli di DurrSetupService, nello stesso ordine del flusso.
VistaSoft non installato
Messaggio: "VistaSoft does not appear to be installed. No valid registry reference or VistaSoft executables found." Né la chiave di registro né gli eseguibili sono stati trovati.
Soluzione: installare VistaSoft, oppure verificare che la chiave HKLM\SOFTWARE\WOW6432Node\DUERR DENTAL\VistaSoft\Executable esista e punti a un percorso valido.
Errore durante la lettura del registro
Messaggio: "Error while checking VistaSoft installation: {messaggio eccezione}". Il registro ha dato un errore (permessi, corruzione) invece di un semplice "non trovato".
Soluzione: controllare i permessi di lettura su HKLM\SOFTWARE\WOW6432Node\DUERR DENTAL\VistaSoft con l'utente con cui gira Rceasy (serve amministratore locale per molte di queste chiavi).
Chiave di registro non trovata (versione)
Messaggio: "VistaSoft registry key not found." oppure "Executable value not present" / "Executable value present but empty".
Soluzione: reinstallare o riparare VistaSoft: l'installazione ha lasciato il registro incompleto.
Versione non determinabile
Messaggio: "Unable to determine the VistaSoft version from the EXE or fallback file." oppure "Version could not be parsed: '{valore}'". Né l'eseguibile né il file version accanto a esso contengono un numero leggibile.
Soluzione: verificare che l'eseguibile puntato dal registro non sia danneggiato o sostituito da una versione senza informazioni di versione valide.
Versione VistaSoft non supportata
Messaggio: "VistaSoft version detected: {versione}. Version 3.0 or later is required."
Soluzione: aggiornare VistaSoft a una versione 3.0 o superiore.
VistaSoft Connect non disponibile
Messaggio: "No ConnectMode value found in DeploymentConfig.json or the VistaSoft registry." oppure, se una fonte era leggibile ma non concludente, un messaggio con il dettaglio di DeploymentConfig.json allegato.
Soluzione: richiedere l'attivazione di VistaSoft Connect al supporto Dürr. Verificare anche manualmente DeploymentConfig.json e il valore HAS_CONNECTMODE.
Connect mode esplicitamente disattivato
Messaggio: "VistaSoft installed without Connect mode according to {percorso}: Configuration.ConnectMode=false." (o la variante con registro). A differenza del caso precedente, qui è stato trovato un valore esplicito false, non un'assenza di dati.
Soluzione: far attivare Connect mode dal supporto Dürr, poi riprovare.
VistaSoft non in esecuzione
Messaggio: "VistaSoft application not detected running." Nessuno dei 4 nomi di processo controllati risulta attivo.
Soluzione: aprire VistaSoft sulla postazione, attendere il caricamento completo e rilanciare la procedura.
LocalServer VistaSoft non disponibile
Messaggio: "VistaSoft LocalServer not available. Endpoints tested: {urls}. Last outcome: {esito}." Entrambi gli endpoint (WorkstationService e ServerService) hanno risposto con errore o non hanno risposto entro 6 secondi.
Soluzione: riavviare VistaSoft; verificare che nulla (antivirus, firewall) blocchi la porta 3113 in locale. Se il problema persiste, contattare il supporto tecnico Dürr.
Nessuna postazione rilevata
La scansione del server VistaSoft non ha restituito postazioni radiografiche.
Soluzione: verificare che le postazioni siano configurate correttamente in VistaSoft, poi premere "Aggiorna lista".
Errore durante l'applicazione della postazione
Non è stato possibile completare la configurazione automatica di VistaSoft Connect. Controllare se nel log compare il timeout della coda comandi descritto sopra.
Soluzione: verificare che VistaSoft sia in esecuzione e risponda, poi riprovare. Se il problema persiste, raccogliere il file di log e contattare il supporto tecnico.
