Aanmelden met Microsoft
Meld u aan of maak een account.
Hallo,
Selecteer een ander account.
U hebt meerdere accounts
Kies het account waarmee u zich wilt aanmelden.

Symptoom

Een script dat kan worden uitgevoerd in de modus Voor bijgewoonde uitvoering, wordt niet uitgevoerd in de modus zonder toezicht.

Dit mislukt meestal met een bericht zoals: 'Er is een probleem opgetreden bij het uitvoeren van de actie 'Klik'. Op de koppeling kan niet worden geklikt op de webpagina.'

Oorzaak

Typische fouten in uitvoeringen zonder toezicht worden veroorzaakt door een van de volgende oorzaken:

  • Script is niet getest in de modus Voordat u overschakelt naar unattended

  • Verschillende configuratie die wordt gebruikt door de sessie zonder toezicht

    • Een ander Windows-account dat wordt gebruikt door uitvoering zonder toezicht dan het account dat is gebruikt om de stroom te maken

    • Schermresolutie (zie de schermresolutie wijzigen)

    • Browserconfiguratie

      • Gebruiker

      • Pop-upblokkering

      • Extensies (ontbrekend/niet geactiveerd)

  • Schermen worden niet volledig geladen (ontbrekende vertragingen)

  • Een UAC-prompt die ui-automatisering blokkeert wanneer de sessie begint

Oplossing

Omdat er verschillende oorzaken kunnen zijn, wordt in de onderstaande oplossing beschreven hoe u schermopnamen toevoegt voor en na een mislukte actie om visuele feedback te krijgen. Als u de schermopnamen zorgvuldig bekijkt na een scriptfout zonder toezicht, kunt u een van de bovenstaande oorzaken vinden. Ook wordt beschreven hoe u beeldschermresolutie en schaalinstellingen kunt vergelijken.

Als u al schermopnamen in uw stroom hebt en deze niet kunnen worden uitgevoerd, hebt u mogelijk een dialoogvenster Gebruikersaccountbeheer (UAC) dat de uitvoering van uw stroom blokkeert. Meld u aan bij de computer die het probleem reproduceert met het account dat u gebruikt om de stroom uit te voeren en kijk of u een dergelijk blokkerend dialoogvenster hebt. Als u dit doet, wijzigt u uw opstartroutine om dit te voorkomen.

Schermopnamen toevoegen om problemen op te lossen

Meld u eerst aan bij de computer die het probleem reproduceert met het account dat u in uw verbinding gebruikt. Controleer of er geen UAC-prompt is die mogelijk de automatisering van de gebruikersinterface blokkeert.

Als er niets is dat de automatisering van de gebruikersinterface blokkeert, kunt u een schermopname maken voor en na een mislukte stap in de modus zonder toezicht om visuele feedback te krijgen.

De mislukte stap moet doorgaan bij de fout, zodat er een schermopname kan worden gemaakt na de fout.

1- Zoek naar de actie 'Schermopname maken'

Schermopnameactie uitvoeren

 2- Sleep de actie 'Schermopname maken' naar de scriptzijde

De actie Schermopname maken slepen en neerzetten

3- Bewerk de actie, gebruik 'Bestand' in plaats van klembord en 'voor' op de bestandsnaamlocatie De eigenschappen van de actie Schermopname maken invullen

4- Kopieer/plak en wijzig de bestandsnaam van de schermopname met erna in De eigenschappen van de actie Schermopname maken dupliceren en invullen

5- Omring de mislukte stap met de schermopnamen

De mislukte stappen omringen met schermopnamen

6- Wijzig het onError-gedrag van de mislukte stap

6a- Bewerk de stap en klik onderaan op 'onError'

Het foutgedrag bij wijzigen

6b- Stel de stroomuitvoering in op 'Stroomuitvoering voortzetten' en 'Naar volgende actie gaan'

Stroomuitvoering voortzetten en naar de volgende actie gaan

7- Sla op, voer lokaal uit om te testen of schermopnamen worden geproduceerd en start een uitvoering zonder toezicht opnieuw.

8- Controleer de schermopnamebestanden zonder toezicht

Schermresolutie en schaalverschillen controleren

Als u de resolutie-instellingen wilt vergelijken tussen uitgevoerde uitvoeringen zonder toezicht, voegt u de onderstaande acties toe aan uw script voordat u in beide modi wordt uitgevoerd:

  • Kopieer/plak het onderstaande codefragment in een PAD Designer: hiermee worden de benodigde stappen gemaakt om de resolutie-instellingen vast te leggen en deze uit te voeren in een tijdstempelbestand.

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
  • Controleer het pad van het uitvoerbestand van de laatste actie, controleer of de lokale uitvoering is geslaagd en sla het bestand op.

  • Voer het script uit in zowel de modus gevolgd als zonder toezicht en controleer vervolgens of de resolutie- en schaaluitvoer in beide modi dezelfde waarden hebben.

Opmerking

Zoals hierboven vermeld, is het mogelijk dat als de actie voor schermopnamen zelf mislukt, een dialoogvenster Gebruikersaccountbeheer (UAC) de uitvoering van uw stroom blokkeert. Meld u aan bij de computer die het probleem reproduceert met het account dat u gebruikt om de stroom uit te voeren en kijk of u een dergelijk blokkerend dialoogvenster hebt. Als u dit doet, wijzigt u uw opstartroutine om dit te voorkomen.

Als het script andere stappen heeft, kan het mislukken nadat het gedrag is gewijzigd om geen fouten te genereren, zodat we een schermopname kunnen maken. De fouten na de tweede schermopname moeten dus worden genegeerd. 

Zodra het probleem is begrepen en opgelost, herstelt u het oorspronkelijke gedrag van uw stroom om fouten te genereren.

Meer hulp nodig?

Meer opties?

Verken abonnementsvoordelen, blader door trainingscursussen, leer hoe u uw apparaat kunt beveiligen en meer.

Community's helpen u vragen te stellen en te beantwoorden, feedback te geven en te leren van experts met uitgebreide kennis.

Was deze informatie nuttig?

Hoe tevreden bent u met de taalkwaliteit?
Wat heeft uw ervaring beïnvloed?
Als u op Verzenden klikt, wordt uw feedback gebruikt om producten en services van Microsoft te verbeteren. Uw IT-beheerder kan deze gegevens verzamelen. Privacyverklaring.

Hartelijk dank voor uw feedback.

×