Log på med Microsoft
Log på, eller opret en konto.
Hej
Markér en anden konto.
Du har flere konti
Vælg den konto, du vil logge på med.

Symptom

Et script, der kan udføres korrekt i deltagertilstand, kører ikke uden opsyn.

Det mislykkes normalt med en meddelelse som f.eks.: "Der opstod et problem med at køre handlingen 'Klik'. Der kunne ikke klikkes på linket på websiden."

Årsag

Typiske fejl i automatiserede kørsler skyldes et af følgende:

  • Scriptet er ikke testet i deltagertilstand, før der skiftes til automatiseret

  • Anden konfiguration, der bruges af den automatiserede session

    • En anden Windows-konto, der bruges af automatiseret kørsel end den, der bruges til at oprette flowet

    • Skærmopløsning (se , hvordan du ændrer skærmopløsningen)

    • Browserkonfiguration

      • Bruger

      • Blokering af pop op-vindue

      • Udvidelser (mangler/er ikke aktiveret)

  • Skærme indlæses ikke helt (manglende forsinkelser)

  • En UAC-prompt, der blokerer ui automation, når sessionen starter

Løsning

Da der kan være forskellige årsager, beskriver løsningen nedenfor, hvordan du tilføjer skærmbilleder før og efter en mislykket handling for at få visuel feedback. Hvis du ser omhyggeligt på skærmbillederne efter en automatiseret scriptfejl, kan det hjælpe med at finde en af årsagerne, der er angivet ovenfor. Den beskriver også, hvordan du sammenligner skærmopløsning og skaleringsindstillinger.

Hvis du allerede har skærmbilleder i dit flow, og de ikke kan udføres, har du muligvis en dialogboks med kontrol af brugerkonti, der blokerer udførelsen af dit flow. Log på den computer, der genskaber problemet med den konto, du bruger til at udføre flowet, og se, om du har en sådan blokeringsdialogboks. Hvis du gør det, skal du ændre din startrutine for at forhindre, at dette sker.

Tilføjelse af skærmbilleder for at foretage fejlfinding

Start med at logge på den computer, der genskaber problemet med den konto, du bruger i din forbindelse. Kontrollér, at der ikke er nogen UAC-prompt, der kan blokere ui-automatisering.

Hvis der ikke er noget, der blokerer ui automation, kan du tage et skærmbillede før og efter et mislykket trin i automatiseret tilstand for at få visuel feedback.

Det mislykkede trin bør fortsætte ved en fejl, så der kan tages et skærmbillede efter fejlen.

1– Se efter handlingen "Tag skærmbillede"

Udføre en skærmbilledehandling

 2– Træk og slip handlingen "Tag skærmbillede" i scriptsiden

Træk og slip handlingen Tag skærmbillede

3– Rediger handlingen, brug "Fil" i stedet for Udklipsholder og "før" i placeringen af filnavnet Udfyld handlingsegenskaberne for tag skærmbilledet

4– Kopiér/indsæt derefter, og rediger filnavnet på skærmbilledet med efter i Dupliker og udfyld handlingsegenskaberne for tag skærmbillede

5- Omgiv det mislykkede trin med skærmbillederne

Omgiv de mislykkede trin med skærmbilleder

6– Skift funktionsmåden ved fejl for det mislykkede trin

6a– Rediger trinnet, og klik på "vedfejl" nederst

Ændre adfærden ved fejl ved tændt

6b– Indstil flowet til "Fortsæt flowkørsel" og "Gå til næste handling"

Fortsæt flowkørsel, og gå til næste handling

7– Gem, kør lokalt for at teste, at skærmbilleder er produceret, og genstart en automatiseret kørsel.

8– Kontrollér de automatiske skærmbilledefiler. 

Kontrollér skærmopløsning og skaleringsforskelle

Hvis du vil sammenligne opløsningsindstillingerne mellem deltog i og automatiserede kørselshandlinger, skal du tilføje handlingerne nedenfor i dit script, før du kører i begge tilstande:

  • Kopiér/indsæt nedenstående kodestykke i en PAD-designer: Dette opretter de nødvendige trin til at registrere opløsningsindstillingerne og få dem vist i en tidsstemplet fil.

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
  • Gennemse stien til outputfilen fra den seneste handling, kontrollér, at den lokale kørsel er fuldført, og gem.

  • Kør scriptet i både overvågede og automatiserede tilstande, og kontrollér derefter, om opløsningen og skaleringsoutputtet har de samme værdier i begge tilstande.

Bemærk!

Som nævnt ovenfor har du muligvis en dialogboks til kontrol af brugerkonti, der blokerer udførelsen af dit flow, hvis selve skærmbilledehandlingen mislykkes. Log på den computer, der genskaber problemet med den konto, du bruger til at udføre flowet, og se, om du har en sådan blokeringsdialogboks. Hvis du gør det, skal du ændre din startrutine for at forhindre, at dette sker.

Hvis scriptet har andre trin, kan det mislykkes efter, da funktionsmåden blev ændret for ikke at udløse fejl, så vi kan tage et skærmbillede. Så fejlene efter det andet skærmbillede skal ignoreres. 

Når problemet er forstået og løst, kan du gendanne den oprindelige funktionsmåde for dit flow for at udløse fejl.

Har du brug for mere hjælp?

Vil du have flere indstillinger?

Udforsk abonnementsfordele, gennemse kurser, få mere at vide om, hvordan du sikrer din enhed og meget mere.

Communities hjælper dig med at stille og besvare spørgsmål, give feedback og høre fra eksperter med omfattende viden.

Var disse oplysninger nyttige?

Hvor tilfreds er du med kvaliteten af sproget?
Hvad påvirkede din oplevelse?
Når du trykker på Send, bliver din feedback brugt til at forbedre Microsoft-produkter og -tjenester. Din it-administrator kan indsamle disse data. Erklæring om beskyttelse af personlige oplysninger.

Tak for din feedback!

×