VB.Net - Powershell - CancelAsync BGW

Mitglied: Pat.bat

Pat.bat (Level 1) - Jetzt verbinden

08.10.2019 um 15:40 Uhr, 554 Aufrufe, 1 Kommentar

Hallo zusammen,

ich musste mein Programm leicht umändern, sodass Listen, anstatt in VB.Net nun über Powershell erzeugt werden. Trotzdem wird alles noch per vb.net application gesteuert.

Nun bin ich aber auf folgendes Problem gestoßen. Ich habe die Ausführung des Powershell Skripts in die Methode DoWork eines Backgroundworkers gepackt.

In dem Programm gibt es einen Abbrechen Button. Dieser Triggert dann die Funktion BGW.CancelAsync()

Allerdings läuft das Powershell Skript trotzdem weiter, da dieses soweit nichts mit der vb application zu tun hat oder sehe ich das falsch und es müsste funktionieren?

Und eine weitere Frage, immer wenn das PS Skript eine Liste fertig hat, kann ich dann einen Rückgabewert 1 an die vb.net application übergeben damit die ProgressBar was zum verarbeiten hat?

Vielen Dank im Voraus.
Mitglied: 141320
141320 (Level 1)
08.10.2019, aktualisiert um 17:28 Uhr
Allerdings läuft das Powershell Skript trotzdem weiter, da dieses soweit nichts mit der vb application zu tun hat oder sehe ich das falsch und es müsste funktionieren?
Nein die Funktion der Methode CancelAsync ist eine andere als du vermutest, den Text zur Methode mal genau lesen:
https://docs.microsoft.com/en-us/dotnet/api/system.componentmodel.backgr ...

Die Methode schickt also nur eine "Anfrage", diese zu Handeln und den PS Prozess zu stoppen/killen ist deine Aufgabe. Z.B. über das Erstellen der Process-Objects ohne Blocking WaitForExit und periodisches Abfragen des Cancelation-Parameters, oder das ganze über Event-Sinks machen.
kann ich dann einen Rückgabewert 1 an die vb.net application übergeben damit die ProgressBar was zum verarbeiten hat?
Ja. ExitCode Property des Process Objects abfragen und dann mit BeginInvoke und/oder Delegates dein Control updaten:
https://blogs.msdn.microsoft.com/make_it_better/2017/05/15/updating-wind ...
Bitte warten ..
Heiß diskutierte Inhalte
Wünsch Dir was
Das ist ja nicht auszuhalten, dass ich für jeden googlen soll
NordicMikeVor 1 TagAllgemeinWünsch Dir was24 Kommentare

Ich beantrage, dass bei jeder Beitragserstellung eine Checkbox angeklickt werden muss, mit dem Text: Ja, ich habe bereits danach gegoogelt. Ansonsten soll der "Senden" ...

Festplatten, SSD, Raid
SATA Treiber für HP
gelöst ben1300Vor 1 TagFrageFestplatten, SSD, Raid21 Kommentare

Hallo zusammen, ich habe einen PC von HP (Seriennummer: CZC3475D5D) Wollte hier Windows 7 Prof. installieren - es fehlt der SATA Treiber Leider kann ...

Hardware
Homelab - Gebrauchte Server Hardware?
gelöst kernl33Vor 1 TagFrageHardware17 Kommentare

Hallo zusammen, ich plane mir für mein Homelab einen 19 Zoll Server (2-4HE) anzulegen, es soll ein Hypervisor mit diversen VMs laufen. Hier zu ...

Outlook & Mail
Gibt es ein allgemeines Outlook senden Problem zur Zeit?
gelöst StefanKittelVor 1 TagFrageOutlook & Mail3 Kommentare

Hallo, habe gerade kurz hinterander 2 völlig getrennte Kunden mit dem gleichen Wirren Problem in Outlook. A) Outlook 2019, Exchange bei Busymouse24 (Hoster), Mit ...

Microsoft
Massenumbenennung von Dateien und Ordnern
breakballVor 1 TagFrageMicrosoft9 Kommentare

Hallo zusammen, falls der Beitrag in dieser Kategorie falsch ist, bitte in die richtige verschieben. Stehe vor folgender Aufgabe, in einem Datenverzeichnis befinden sich ...

Netzwerke
Neues Netzwerk, Segmentierung KMU
surreal1Vor 1 TagFrageNetzwerke4 Kommentare

Hallo an alle, seit langem lese ich schon im Forum aus Interesse mit, jedoch hatte ich noch nie die Gelegenheit aktiv an der Community ...

Firewall
VPN RDP Performance
BergggVor 1 TagFrageFirewall8 Kommentare

Hey, wir haben eine Sophos XG (1GBit sync), über welche sich unsere User ins Netzwerk einwählen SSL VPN (zwischen 30 und 120 Benutzer). Nach ...

Windows Server
Windows Server 2016 RD Verbinungsbroker hochverfügbar
ServerBossVor 1 TagFrageWindows Server5 Kommentare

Hallo, ich muß bei einem Kunden die Windows Server 2016 RDS-Farm mit einem zweiten RD-Verbindungsbroker ausstatten. Hierzu möchte ich die RD-Verbindungsbroker für hohe Verfügbarkeit ...