Bei Microsoft anmelden
Melden Sie sich an, oder erstellen Sie ein Konto.
Hallo,
Wählen Sie ein anderes Konto aus.
Sie haben mehrere Konten.
Wählen Sie das Konto aus, mit dem Sie sich anmelden möchten.

Symptom

Ein Skript, das im beaufsichtigten Modus erfolgreich ausgeführt werden kann, wird im unbeaufsichtigten Modus nicht erfolgreich ausgeführt.

In der Regel tritt ein Fehler mit einer Meldung wie: "Es gab ein Problem beim Ausführen der Aktion 'Klicken'. Auf den Link konnte auf der Webseite nicht geklickt werden."

Ursache

Typische Fehler bei unbeaufsichtigten Ausführungen werden durch eine der folgenden Ursachen verursacht:

  • Skript nicht im beaufsichtigten Modus getestet, bevor es zu unbeaufsichtigt wechselt

  • Andere Konfiguration, die von der unbeaufsichtigten Sitzung verwendet wird

    • Ein anderes Windows-Konto, das von der unbeaufsichtigten Ausführung verwendet wird, als das zum Erstellen des Flows verwendet wurde.

    • Bildschirmauflösung (siehe Ändern der Bildschirmauflösung)

    • Browserkonfiguration

      • Benutzer

      • Popupblocker

      • Erweiterungen (fehlend/nicht aktiviert)

  • Bildschirme werden nicht vollständig geladen (fehlende Verzögerungen)

  • Eine UAC-Eingabeaufforderung, die die Benutzeroberflächenautomatisierung blockiert, wenn die Sitzung beginnt

Lösung

Da es unterschiedliche Ursachen geben kann, beschreibt die folgende Lösung, wie Screenshots vor und nach einer fehlgeschlagenen Aktion hinzugefügt werden, um visuelles Feedback zu erhalten. Wenn Sie sich die Screenshots nach einem unbeaufsichtigten Skriptfehler sorgfältig ansehen, können Sie eine der oben aufgeführten Ursachen finden. Außerdem wird beschrieben, wie Sie die Anzeigeauflösung und die Skalierungseinstellungen vergleichen.

Wenn Sie bereits Screenshots in Ihrem Flow haben und diese nicht ausgeführt werden können, haben Sie möglicherweise ein Dialogfeld für die Benutzerkontensteuerung (User Account Control, UAC), das die Ausführung Ihres Flows blockiert. Melden Sie sich bei dem Computer an, der das Problem mit dem Konto, das Sie zum Ausführen des Flows verwenden, reproduziert, und überprüfen Sie, ob ein solches Blockierungsdialogfeld vorhanden ist. Ändern Sie in diesem Fall Ihre Startroutine, um dies zu verhindern.

Hinzufügen von Screenshots zur Problembehandlung

Melden Sie sich zunächst bei dem Computer an, der das Problem mit dem Konto reproduziert, das Sie in Ihrer Verbindung verwenden. Stellen Sie sicher, dass keine UAC-Eingabeaufforderung vorhanden ist, die die Benutzeroberflächenautomatisierung möglicherweise blockiert.

Wenn es nichts gibt, das die Benutzeroberflächenautomatisierung blockieren würde, erstellen Sie vor und nach einem fehlerhaften Schritt im unbeaufsichtigten Modus einen Screenshot, um visuelles Feedback zu erhalten.

Der fehlerhafte Schritt sollte bei einem Fehler fortgesetzt werden, damit nach dem Fehler ein Screenshot erstellt werden kann.

1. Suchen Sie nach der Aktion "Screenshot erstellen"

Ausführen einer Screenshotaktion

 2- Ziehen und Ablegen der Aktion "Screenshot erstellen" auf die Skriptseite

Ziehen und Ablegen der Aktion "Screenshot ausführen"

3- Bearbeiten Sie die Aktion, verwenden Sie "Datei" anstelle der Zwischenablage und "vor" im Dateinamenspeicherort Ausfüllen der Eigenschaften der Aktion "Screenshot erstellen"

4- Kopieren/Einfügen und ändern Sie den Namen der Screenshotdatei mit nach darin Duplizieren und Füllen der Eigenschaften der Aktion "Screenshot erstellen"

5. Schließen Sie den fehlerhaften Schritt mit den Screenshots ein.

Schließen Sie die fehlerhaften Schritte mit Screenshots ein.

6. Ändern des onError-Verhaltens des fehlerhaften Schritts

6a- Bearbeiten Sie den Schritt, und klicken Sie unten auf "onError".

Ändern des On-Fehlerverhaltens

6b: Legen Sie die Flowausführung auf "Flowausführung fortsetzen" und "Zur nächsten Aktion wechseln" fest.

Fortsetzen der Flowausführung und Wechseln zur nächsten Aktion

7- Speichern,lokal ausführen , um zu testen, dass Screenshots erstellt werden, und starten Sie eine unbeaufsichtigte Ausführung neu.

8- Überprüfen Sie die unbeaufsichtigten Screenshotdateien. 

Überprüfen von Bildschirmauflösung und Skalierungsunterschieden

Um die Auflösungseinstellungen zwischen der ausführung der beaufsichtigten und der unbeaufsichtigten Ausführung zu vergleichen, fügen Sie dem Skript die folgenden Aktionen hinzu, bevor Sie in beiden Modi ausgeführt werden:

  • Kopieren/Einfügen des folgenden Codeausschnitts in einem PAD-Designer: Dadurch werden die erforderlichen Schritte erstellt, um die Auflösungseinstellungen zu erfassen und in einer Datei mit Zeitstempel auszugeben.

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
  • Überprüfen Sie den Ausgabedateipfad der letzten Aktion, überprüfen Sie, ob die lokale Ausführung erfolgreich war, und speichern Sie sie.

  • Führen Sie das Skript sowohl im beaufsichtigten als auch im unbeaufsichtigten Modus aus, und überprüfen Sie dann, ob die Auflösung und die Skalierungsausgabe in beiden Modi dieselben Werte aufweisen.

Hinweis

Wie bereits erwähnt, haben Sie möglicherweise ein Dialogfeld für die Benutzerkontensteuerung (UAC), das die Ausführung Ihres Flows blockiert, wenn die Screenshotaktion selbst fehlschlägt. Melden Sie sich bei dem Computer an, der das Problem mit dem Konto, das Sie zum Ausführen des Flows verwenden, reproduziert, und überprüfen Sie, ob ein solches Blockierungsdialogfeld vorhanden ist. Ändern Sie in diesem Fall Ihre Startroutine, um dies zu verhindern.

Wenn das Skript über andere Schritte verfügt, schlägt es möglicherweise fehl, nachdem das Verhalten geändert wurde, um keine Fehler auszulösen, sodass wir einen Screenshot erstellen können. Daher sollten die Fehler nach dem zweiten Screenshot ignoriert werden. 

Sobald das Problem verstanden und behoben wurde, stellt die das ursprüngliche Verhalten Ihres Flows wieder her, um Fehler auszulösen.

Benötigen Sie weitere Hilfe?

Möchten Sie weitere Optionen?

Erkunden Sie die Abonnementvorteile, durchsuchen Sie Trainingskurse, erfahren Sie, wie Sie Ihr Gerät schützen und vieles mehr.

In den Communities können Sie Fragen stellen und beantworten, Feedback geben und von Experten mit umfassendem Wissen hören.

War diese Information hilfreich?

Wie zufrieden sind Sie mit der Sprachqualität?
Was hat Ihre Erfahrung beeinflusst?
Wenn Sie auf "Absenden" klicken, wird Ihr Feedback zur Verbesserung von Produkten und Diensten von Microsoft verwendet. Ihr IT-Administrator kann diese Daten sammeln. Datenschutzbestimmungen.

Vielen Dank für Ihr Feedback!

×