Accedi con Microsoft
Accedi o crea un account.
Salve,
Seleziona un altro account.
Hai più account
Scegli l'account con cui vuoi accedere.

Sintomo

Uno script che può essere eseguito correttamente in modalità frequentata non viene eseguito correttamente in modalità automatica.

In genere si verifica un errore con un messaggio come: "Si è verificato un problema durante l'esecuzione dell'azione 'Fai clic'. Non è stato possibile fare clic sul collegamento nella pagina Web".

Causa

Gli errori tipici nelle esecuzioni incustodate sono causati da uno dei seguenti:

  • Script non testato in modalità frequentata prima di passare alla modalità automatica

  • Configurazione diversa usata dalla sessione incustodito

    • Un account di Windows diverso usato dall'esecuzione automatica rispetto a quello usato per creare il flusso

    • Risoluzione dello schermo ( vedi come modificare la risoluzione dello schermo)

    • Configurazione del browser

      • Utente

      • Blocco popup

      • Estensioni (mancanti/ non attivate)

  • Le schermate non vengono caricate interamente (ritardi mancanti)

  • Richiesta di controllo dell'interfaccia utente che blocca l'automazione dell'interfaccia utente all'avvio della sessione

Soluzione

Poiché le cause potrebbero essere diverse, la soluzione seguente descrive come aggiungere screenshot prima e dopo un'azione non riuscita per ottenere un feedback visivo. Esaminare attentamente gli screenshot dopo un errore di script incustodito potrebbe aiutare a trovare una delle cause elencate sopra. Descrive anche come confrontare le impostazioni di risoluzione e scala dello schermo.

Se nel flusso sono già presenti screenshot che non vengono eseguiti, potrebbe essere presente una finestra di dialogo Controllo dell'account utente che blocca l'esecuzione del flusso. Esegui l'accesso alla macchina che riproduce il problema con l'account che usi per eseguire il flusso e verifica se hai una finestra di dialogo di tale blocco. In questo caso, modificare la routine di avvio per evitare che ciò si verifichi.

Aggiunta di screenshot per la risoluzione dei problemi

Per iniziare, accedi al computer che riproduce il problema con l'account che usi nella connessione. Verifica che non sia visualizzata alcuna richiesta di controllo dell'account utente che potrebbe bloccare l'automazione dell'interfaccia utente.

Se non ci sono elementi che potrebbero bloccare l'automazione dell'interfaccia utente, crea uno screenshot prima e dopo un passaggio non riuscito in modalità automatica può aiutarti a ottenere feedback visivo.

Il passaggio che ha esito negativo dovrebbe continuare in caso di errore, in modo che sia possibile acquisire uno screenshot dopo l'errore.

1- Cercare l'azione "Acquisisci screenshot"

Eseguire un'azione di screenshot

 2- Trascinare e rilasciare l'azione "Acquisisci screenshot" sul lato script

Trascinare e rilasciare l'azione Esegui screenshot

3- Modificare l'azione, usare "File" invece degli Appunti e "prima" nel percorso del nome file Compilare le proprietà delle azioni di acquisizione screenshot

4- Quindi copia/incolla e modifica il nome del file di screenshot con dopo al suo interno Duplicare e riempire le proprietà delle azioni di acquisizione screenshot

5- Surround the failing step with the screenshots

Surround the failing steps with screenshots

6- Modificare il comportamento onError del passaggio non riuscito

6a- Modificare il passaggio e fare clic su "onError" nella parte inferiore

Modificare il comportamento di errore on

6b- Impostare l'esecuzione del flusso su "Continua esecuzione flusso" e "Vai all'azione successiva"

Continuare a eseguire il flusso e passare all'azione successiva

7- Salvare, eseguire localmente per testare che gli screenshot vengono prodotti e riavviare un'esecuzione automatica.

8- Controllare i file di screenshot incustoditi

Controllare le differenze di risoluzione e scala dello schermo

Per confrontare le impostazioni di risoluzione tra le esecuzioni a esecuzione assistita e automatica, aggiungere le azioni seguenti nello script prima di eseguirle in entrambe le modalità:

  • Copia/Incolla il frammento di codice seguente in una finestra di progettazione pad: verranno creati i passaggi necessari per acquisire le impostazioni di risoluzione e generare l'output in un file con timestamp.

DateTime.GetCurrentDateTime.Local DateTimeFormat: DateTime.DateTimeFormat.DateAndTime CurrentDateTime=> CurrentDateTime
Text.ConvertDateTimeToText.FromCustomDateTime DateTime: CurrentDateTime CustomFormat: $'''yyyy_MM_dd_hh_mm_ss''' Result=> FormattedDateTime
Workstation.GetScreenResolution MonitorNumber: 1 MonitorWidth=> MonitorWidth MonitorHeight=> MonitorHeight MonitorBitCount=> MonitorBitCount MonitorFrequency=> MonitorFrequency
@@copilotGeneratedAction: 'False'
Scripting.RunPowershellScript.RunPowershellScript Script: $'''Add-Type @\'
using System; 
using System.Runtime.InteropServices;
using System.Drawing;
public class DPI {  
  [DllImport(\"gdi32.dll\")]
  static extern int GetDeviceCaps(IntPtr hdc, int nIndex);
  public enum DeviceCap {
  VERTRES = 10,
  DESKTOPVERTRES = 117
  }
  public static float scaling() {
  Graphics g = Graphics.FromHwnd(IntPtr.Zero);
  IntPtr desktop = g.GetHdc();
  int LogicalScreenHeight = GetDeviceCaps(desktop, (int)DeviceCap.VERTRES);
  int PhysicalScreenHeight = GetDeviceCaps(desktop, (int)DeviceCap.DESKTOPVERTRES);
  return (float)PhysicalScreenHeight / (float)LogicalScreenHeight;
  }
}
\'@ -ReferencedAssemblies \'System.Drawing.dll\' -ErrorAction Stop
Return [DPI]::scaling() * 100''' ScriptOutput=> MonitorScaleOutput
File.WriteText File: $'''c:\\test\\resolution_%FormattedDateTime%.txt''' TextToWrite: $'''height: %MonitorHeight% width: %MonitorWidth% frequency: %MonitorFrequency% bitCount: %MonitorBitCount% scale: %MonitorScaleOutput%''' AppendNewLine: True IfFileExists: File.IfFileExists.Overwrite Encoding: File.FileEncoding.Unicode
  • Esaminare il percorso del file di output dall'ultima azione, verificare che l'esecuzione locale sia riuscita e salvare.

  • Esegui lo script sia in modalità frequentata che in modalità automatica, quindi verifica se l'output di risoluzione e scala ha gli stessi valori in entrambe le modalità.

Nota

Come accennato in precedenza, se l'azione screenshot ha esito negativo, potrebbe essere presente una finestra di dialogo Controllo dell'account utente che blocca l'esecuzione del flusso. Esegui l'accesso alla macchina che riproduce il problema con l'account che usi per eseguire il flusso e verifica se hai una finestra di dialogo di tale blocco. In questo caso, modificare la routine di avvio per evitare che ciò si verifichi.

Se lo script ha altri passaggi, potrebbe non riuscire dopo perché il comportamento è stato modificato in modo da non generare errori in modo da poter creare uno screenshot. Quindi gli errori dopo il secondo screenshot dovrebbero essere ignorati. 

Una volta compreso e risolto il problema, ripristinare il comportamento originale del flusso per generare errori.

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?
Premendo Inviare, il tuo feedback verrà usato per migliorare i prodotti e i servizi Microsoft. L'amministratore IT potrà raccogliere questi dati. Informativa sulla privacy.

Grazie per il feedback!

×