pat.bat
Goto Top

Datei von Website herunterladen mit Loginabfrage

Hallo,

ich versuche gerade eine Batchdatei zu schreiben mit der ich eine Datei von einer Website runterladen kann. Es erfolgt vorher eine Benutzer und Passwort Abfrage.

Folgendes Skript gibt aber folgende Fehler aus:

@echo off
set LOGFILE=batch_download_TopQW.log
call :LOG > %LOGFILE%
exit /B

:LOG
bitsadmin /Create DownloadDumpData6
bitsadmin /SetCredentials DownloadDumpData6 https://1.1.1.1/prosozXML/60_Parchim/ BASIC BENUTZERNAME PASSWORT
bitsadmin /addfile DownloadDumpData6 https://1.1.1.1/prosozXML/60_Parchim/Export.xml Export.xml
bitsadmin /SetPriority DownloadDumpData6 "FOREGROUND"  
bitsadmin /Resume DownloadDumpData6
:WAIT_DUMP_DATA_DOWNLOAD_LOOP_START
    call bitsadmin /info DownloadDumpData6 /verbose | find "STATE: TRANSFERRED"  
    if %ERRORLEVEL% equ 0 goto WAIT_DUMP_DATA_DOWNLOAD_LOOP_END
    call bitsadmin /RawReturn /GetBytesTransferred DownloadDumpData6
    timeout 2
    goto WAIT_DUMP_DATA_DOWNLOAD_LOOP_START
:WAIT_DUMP_DATA_DOWNLOAD_LOOP_END
call bitsadmin /Complete DownloadDumpData6



Die Logdatei wird dabei folgendes aus:

BITSADMIN version 3.0
BITS administration utility.
(C) Copyright 2000-2006 Microsoft Corp.

BITSAdmin is deprecated and is not guaranteed to be available in future versions of Windows.
Administrative tools for the BITS service are now provided by BITS PowerShell cmdlets.

**Created job {36E28061-1EC7-4070-AB50-0F4D99A1DE19}.**

BITSADMIN version 3.0
BITS administration utility.
(C) Copyright 2000-2006 Microsoft Corp.

BITSAdmin is deprecated and is not guaranteed to be available in future versions of Windows.
Administrative tools for the BITS service are now provided by BITS PowerShell cmdlets.

**'https://1.1.1.1/prosozXML/60_Parchim/' is not a valid credential target.  It must be 'proxy' or 'server'.**  

BITSADMIN version 3.0
BITS administration utility.
(C) Copyright 2000-2006 Microsoft Corp.

BITSAdmin is deprecated and is not guaranteed to be available in future versions of Windows.
Administrative tools for the BITS service are now provided by BITS PowerShell cmdlets.

**Unable to add file to job - 0x80070057
Falscher Parameter.**



BITSADMIN version 3.0
BITS administration utility.
(C) Copyright 2000-2006 Microsoft Corp.

BITSAdmin is deprecated and is not guaranteed to be available in future versions of Windows.
Administrative tools for the BITS service are now provided by BITS PowerShell cmdlets.

**Priority set to FOREGROUND.**

BITSADMIN version 3.0
BITS administration utility.
(C) Copyright 2000-2006 Microsoft Corp.

BITSAdmin is deprecated and is not guaranteed to be available in future versions of Windows.
Administrative tools for the BITS service are now provided by BITS PowerShell cmdlets.

**Unable to resume job - 0x80200003**
**Dieser Auftrag hat keine Dateien. Fgen Sie dem Auftrag Dateien an, und wiederholen Sie den Vorgang.**


0
Gewartet wird 2 Sekunden. Weiter mit beliebiger Taste...10
0
Gewartet wird 2 Sekunden. Weiter mit beliebiger Taste...

Ich konnte jetzt leider keine Antwort auf mein Problem finden und hoffe das mir hier jemand einen Tip geben kann woran es liegt. Die URL müsste doch stimmen oder was versteht man hier unter Server oder Proxy :S

Der Befehlt SetCredentials scheint halt Probleme zu haben, aber ich kommt nicht auf die Lösung.


Vielen Dank im Voraus

MfG
Patrick

Content-Key: 400396

Url: https://administrator.de/contentid/400396

Printed on: April 23, 2024 at 16:04 o'clock

Member: sabines
sabines Feb 04, 2019 at 09:54:57 (UTC)
Goto Top
Moin,


Zitat von @Pat.bat:
(C) Copyright 2000-2006 Microsoft Corp.

BITSAdmin is deprecated and is not guaranteed to be available in future versions of Windows.
Administrative tools for the BITS service are now provided by BITS PowerShell cmdlets.


das Tool ist rund 10 Jahre alt und die Lösung ist auf BITS PowerShell cmdlets umzusteigen, bevor Du hier Stunden in ein uralt Tool investiert.

Gruss
Member: NetzwerkDude
Solution NetzwerkDude Feb 04, 2019 updated at 10:16:17 (UTC)
Goto Top
Man könnte es in PowerShell so machen:

$Link = "http://deine.domain/pfad/zur/datei.xml"  
$Username = "hier_login_eintragen"  
$Passwort = "hier_dein_passwort_eintragen" | ConvertTo-SecureString -asPlainText -Force  
$Zugangsdaten =  New-Object System.Management.Automation.PSCredential($Username, $Passwort)
$XML = (Invoke-Webrequest -Uri $Link -Credential $Zugangsdaten).content
$XML | New-Item -Type File -Name Download.xml

Ansonsten niemals Plaintext Passwörter in Skripten speichern!
Hier eine methode wie du die Windows eigene API nutzen kannst um PWs sicher in skripten zu hinterlegen:
https://www.pdq.com/blog/secure-password-with-powershell-encrypting-cred ...
Member: Pat.bat
Pat.bat Feb 04, 2019 at 10:20:38 (UTC)
Goto Top
Ich denke das das Skript funktionieren wird, allerdings bekomme ich folgende Meldung:

Invoke-Webrequest : Schweriner IT- und Servicegesellschaft mbH http://www.sis-schwerin.de

Access Denied
While trying to retrieve the URL:Authentication Failed Access is denied due to the following condition:Die Seite (URL) die Sie abrufen wollen, ist aus Sicherheitsgründen gesperrt.
Wenn Sie den Zugriff auf diese Seite benötigen, füllen Sie bitte das Formular Formblatt Internetzugang aus
und leiten es an den Benutzerservice der SIS GmbH weiter. 
Kategorie:Ihr Proxy Administrator ist:sis-benutzerservice@sis-schwerin.de 
Powered by UTM Web Protection
In C:\Users\pvoelz\Desktop\TopQW_Download_2.ps1:5 Zeichen:9
+ $XML = (Invoke-Webrequest -Uri $Link -Credential $Zugangsdaten).conte ...
+         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebException
    + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

Ich gehe mal davon aus, das unser IT Dienstleister das aufrufen von websiten mittels batch/powershell blockiert, da ich per Firefox ohne Probleme auf die im Code hinterlegte URL zugreifen kann :S
Member: NetzwerkDude
NetzwerkDude Feb 04, 2019 updated at 10:33:23 (UTC)
Goto Top
mh, dann müsste man schauen wie der dienstleister es prüft - grundsätzlich bietet Invoke-Webrequest die beiden Paramter

-Proxy 'http://127.0.0.1:8080'   
und
-ProxyCredential 
falls zugangsdaten abgefragt werden

oder falls der proxy den user agent prüft, könnte man den "spoofen" mit
-UserAgent
Member: Pat.bat
Pat.bat Feb 04, 2019 at 10:47:31 (UTC)
Goto Top
Also wenn ich die Website aufrufe, dann kommt ein Popup und fragt nach Bernutzername und Passwort, bevor es dann weiter auf die eigentliche Seite geht.

Gibt es eine Möglichkeit den Proxy der Website herauszufinden?

Und wie würde dann der Quellcode aussehen, wenn ich die beiden Parameter -Proxy und -ProxyCredential nutzen möchte?

Vielen Dank schonmal.
Member: NetzwerkDude
Solution NetzwerkDude Feb 04, 2019 at 11:03:33 (UTC)
Goto Top
Der Proxy ist entweder Systemweit eingetragen ("Internetoptionen" in Windows) oder direkt in Firefox (Einstellungen / Verbindungseinstellungen)

Sobald du die IP + Port vom Proxy hast:

$Link = "http://deine.domain/pfad/zur/datei.xml"  
$Username = "hier_login_eintragen"  
$Passwort = "hier_dein_passwort_eintragen" | ConvertTo-SecureString -asPlainText -Force  
$Zugangsdaten =  New-Object System.Management.Automation.PSCredential($Username, $Passwort)

$ProxyUsername = "hier_den_proxy_usernamen"  
$ProxyPW = "hier_das_proxy_pw" | ConvertTo-SecureString -asPlainText -Force  
$ProxyZugangsDaten = New-Object System.Management.Automation.PSCredential($ProxyUsername, $ProxyPW)
#Hier die  IP + Port vom Proxy eintragen in der form IP:Port
$ProxyIP = "127.0.0.1:8080"  

$XML = (Invoke-Webrequest -Uri $Link -Credential $Zugangsdaten -Proxy $ProxyIP -ProxyCredential $ProxyZugangsDaten).content
$XML | New-Item -Type File -Name Download.xml
Mitglied: 138721
138721 Feb 04, 2019 updated at 11:50:25 (UTC)
Goto Top
Also wenn ich die Website aufrufe, dann kommt ein Popup und fragt nach Bernutzername und Passwort, bevor es dann weiter auf die eigentliche Seite geht.
Nur wenn das das Basic-Auth Popup des Browsers ist dann geht das oben genannte. Wenn es ein vorgeschaltetes Formular auf der Webseite oder "Digest Auth" ist, dann musst du die Daten an das Formular übergeben und dann abschicken. Geht auch mit PS aber dazu wäre dann mindestens der HTML-Quellcode der Einstiegsseite nötig um dir hier helfen zu können. Denn eine Webseite kann auf vielfältige Weise den User authentifizieren.

Gruß l
Member: Pat.bat
Pat.bat Feb 04, 2019 updated at 12:14:19 (UTC)
Goto Top
ok also der Proxy wird in Firefox per Automatische Proxy-Konfigurations-Adresse vergeben.
Der Proxy wird mittels einer proxyconfig.pac ermittelt.

In dieser kann ich lediglich die IP+Proxy finden, aber kein Username oder Passwort. Ich bin mir jetzt nicht sicher wo ich dieses finden kann oder ob ich mir dieses direkt vom Dienstleister einholen muss.

@138721, ja es handelt sich um das Basic-Auth Popup des Browsers.
Mitglied: 138721
Solution 138721 Feb 04, 2019 updated at 12:20:57 (UTC)
Goto Top
Zitat von @Pat.bat:

ok also der Proxy wird in Firefox per Automatische Proxy-Konfigurations-Adresse vergeben.
Der Proxy wird mittels einer proxyconfig.pac ermittelt.

In dieser kann ich lediglich die IP+Proxy finden, aber kein Username oder Passwort. Ich bin mir jetzt nicht sicher wo ich dieses finden kann oder ob ich mir dieses direkt vom Dienstleister einholen muss.

@138721, ja es handelt sich um das Basic-Auth Popup des Browsers.
Gut dann verwendet das System vermutlich deine Windows-Credentials

Packe mal folgendes in den Kopf des Skripts:
(Proxy und Port natürlich anpassen-
$global:PSDefaultParameterValues = @{
        'Invoke-RestMethod:Proxy'='http://myCorpProxy:8080'  
        'Invoke-WebRequest:Proxy'='http://myCorpProxy:8080'  
        '*:ProxyUseDefaultCredentials'=$true  
    }
Und entferne im Skript die Proxy-Parameter von Invoke-WebRequest die sind dann nicht mehr nötig weil das obige für die beiden CMDLets den Proxy passend setzt und die Default-Credentials des Windows Users verwendet.

Alternativ nutze den Parameter -ProxyUseDefaultCredentials anstelle des extra erstellten Credentials Objekt.
Member: Pat.bat
Pat.bat Feb 04, 2019 at 13:33:34 (UTC)
Goto Top
OK habe das jetzt so umgesetzt:

$global:PSDefaultParameterValues = @{
        'Invoke-RestMethod:Proxy'='1.1.1.1:8080'  
        'Invoke-WebRequest:Proxy'='1.1.1.1:8080'  
        '*:ProxyUseDefaultCredentials'=$true  
    }

$Link = "https://1.1.1.1/prosozXML/60_Parchim/Export.xml"  
$Username = "****"  
$Passwort = "****" | ConvertTo-SecureString -asPlainText -Force  
$Zugangsdaten =  New-Object System.Management.Automation.PSCredential($Username, $Passwort)

#$ProxyUsername = ""  
#$ProxyPW = "" | ConvertTo-SecureString -asPlainText -Force  
#$ProxyZugangsDaten = New-Object System.Management.Automation.PSCredential($ProxyUsername, $ProxyPW)
#Hier die  IP + Port vom Proxy eintragen in der form IP:Port
#$ProxyIP = "1.1.1.1:8080"  

$XML = (Invoke-Webrequest -Uri $Link -Credential $Zugangsdaten).content
$XML | New-Item -Type File -Name Download.xml

dabei habe ich den Proxy code erstmal auskommentiert.

Nun scheint ihm aber was anderes nicht gefallen:

PS C:\Users\pvoelz> C:\Users\pvoelz\Desktop\TopQW_Download_2.ps1
Invoke-Webrequest : Dieser Vorgang wird für einen relativen URI nicht unterstützt.
In C:\Users\pvoelz\Desktop\TopQW_Download_2.ps1:18 Zeichen:9
+ $XML = (Invoke-Webrequest -Uri $Link -Credential $Zugangsdaten).conte ...
+         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Invoke-WebRequest], InvalidOperationException
    + FullyQualifiedErrorId : System.InvalidOperationException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand
 


    Verzeichnis: C:\Users\pvoelz


Mode                LastWriteTime         Length Name                                                                                                                                         
----                -------------         ------ ----                                                                                                                                         
-a----       04.02.2019     13:27              0 Download.xml

Woran könnte das liegen?

Vielen Dank schonmal für die bisherige Hilfe. face-smile
Mitglied: 138721
Solution 138721 Feb 04, 2019 updated at 13:45:45 (UTC)
Goto Top
'1.1.1.1:8080'
Kein Wunder, du hast das Protokoll vor den IPs vergessen, richtig kopieren sollte man schon können.
$global:PSDefaultParameterValues = @{
        'Invoke-RestMethod:Proxy'='http://1.1.1.1:8080'  
        'Invoke-WebRequest:Proxy'='http://1.1.1.1:8080'  
        '*:ProxyUseDefaultCredentials'=$true  
    }
Deswegen ja auch die passende Fehlermeldung die genau das sagt :
Dieser Vorgang wird für einen relativen URI nicht unterstützt.
Member: Pat.bat
Pat.bat Feb 04, 2019 at 13:59:39 (UTC)
Goto Top
autsch, hab ich total übersehen :S sorry.

So nun gibts eine Andere Meldung :D

PS C:\Users\pvoelz> C:\Users\pvoelz\Desktop\TopQW_Download_2.ps1
Invoke-Webrequest : Die zugrunde liegende Verbindung wurde geschlossen: Für den geschützten SSL/TLS-Kanal konnte keine Vertrauensstellung hergestellt werden..
In C:\Users\pvoelz\Desktop\TopQW_Download_2.ps1:18 Zeichen:9
+ $XML = (Invoke-Webrequest -Uri $Link -Credential $Zugangsdaten).conte ...
+         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebException
    + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

Das hört sich nicht so gut an. Puh da hab ich aber was angefangen...

:S
Mitglied: 138721
Solution 138721 Feb 04, 2019 updated at 14:24:53 (UTC)
Goto Top
Kein Problem, in dem Fall folgendes noch im Kopf des Skripts einfügen:
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]'Tls11,Tls12'   
Denn der Server nutzt ein aktuelleres TLS Protokoll, deswegen kommt die Meldung, mit der Anpassung der verwendeten Protokolle wird das korrigiert.
Und den korrekten Domainnamen in der URL nutzen! Denn sonst passt das Zertifikat ja nicht.

So nun gibts eine Andere Meldung :D
Ich hab das Skript ja nicht verbrochen das war @NetzwerkDude face-wink. Hättest du direkt per PN angefragt hättest du von mir direkt und unkompliziert ein sofort funktionierendes Skript erhalten das wir zusammen direkt am Objekt entwickelt hätten. So bekommst du es halt Schritt für Schritt auf die harte Tour ;-P.
Member: Pat.bat
Pat.bat Feb 04, 2019 updated at 14:25:44 (UTC)
Goto Top
Kein Ding, so lernt man am besten :P

so mein Code sieht jetzt so aus:

$global:PSDefaultParameterValues = @{
        'Invoke-RestMethod:Proxy'='http://1.1.1.1:8080'  
        'Invoke-WebRequest:Proxy'='http://1.1.1.1:8080'  
        '*:ProxyUseDefaultCredentials'=$true  
    }
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]'Tls11,Tls12'   

$Link = "https://1.1.1.1/prosozXML/60_Parchim/Export.xml"  
$Username = "****"  
$Passwort = "****" | ConvertTo-SecureString -asPlainText -Force  
$Zugangsdaten =  New-Object System.Management.Automation.PSCredential($Username, $Passwort)

$XML = (Invoke-Webrequest -Uri $Link -Credential $Zugangsdaten).content
$XML | New-Item -Type File -Name Download.xml


Jetzt meckert er aber wieder mit folgendem:
Invoke-Webrequest : Die Anfrage wurde abgebrochen: Es konnte kein geschützter SSL/TLS-Kanal erstellt werden..
In C:\Users\pvoelz\Desktop\TopQW_Download_2.ps1:19 Zeichen:9
+ $XML = (Invoke-Webrequest -Uri $Link -Credential $Zugangsdaten).conte ...
+         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebException
    + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

leider sagt er nicht warum der Kanal nicht erstellt werden kann...
Mitglied: 138721
Solution 138721 Feb 04, 2019 updated at 14:30:08 (UTC)
Goto Top
Du nutzt die falsche URL face-wink auf 1.1.1.1 passt der Common Name das Zertifikats nicht, nutze den korrekten Domainnamen.

Alternative "ignorieren von Zertifikatsfehlern":
Add-Type @"  
    using System.Net;
    using System.Security.Cryptography.X509Certificates;
    public class TrustAllCertsPolicy : ICertificatePolicy {
        public bool CheckValidationResult(
            ServicePoint srvPoint, X509Certificate certificate,
            WebRequest request, int certificateProblem) {
            return true;
        }
    }
"@  
[System.Net.ServicePointManager]::CertificatePolicy = New-Object TrustAllCertsPolicy
Member: Pat.bat
Pat.bat Feb 04, 2019 at 14:30:42 (UTC)
Goto Top
Also bei $Link = "https://Zauberinsel.de/prosozXML/60_Parchim/Export.xml" (Zauberinsel nur als Beispiel). Aber kam immernoch die Fehlermeldung. Ich probiere es mal mit dem ignorieren
Member: Pat.bat
Pat.bat Feb 04, 2019 at 14:37:23 (UTC)
Goto Top
ok also ich habs jetzt wie folgt:

$global:PSDefaultParameterValues = @{
        'Invoke-RestMethod:Proxy'='http://1.1.1.1:8080'  
        'Invoke-WebRequest:Proxy'='http://1.1.1.1:8080'  
        '*:ProxyUseDefaultCredentials'=$true  
    }
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]'Tls11,Tls12'  

Add-Type @"  
    using System.Net;
    using System.Security.Cryptography.X509Certificates;
    public class TrustAllCertsPolicy : ICertificatePolicy {
        public bool CheckValidationResult(
            ServicePoint srvPoint, X509Certificate certificate,
            WebRequest request, int certificateProblem) {
            return true;
        }
    }
"@  
[System.Net.ServicePointManager]::CertificatePolicy = New-Object TrustAllCertsPolicy 

$Link = "https://zauberinsel.de/prosozXML/60_Parchim/Export.xml"  
$Username = "****"  
$Passwort = "****" | ConvertTo-SecureString -asPlainText -Force  
$Zugangsdaten =  New-Object System.Management.Automation.PSCredential($Username, $Passwort)

$XML = (Invoke-Webrequest -Uri $Link -Credential $Zugangsdaten).content
$XML | New-Item -Type File -Name Download.xml

Aber er kommt immer noch mit der Meldung das kein geschützter SSl/TLS-Kanal erstellt werden kann
Invoke-Webrequest : Die Anfrage wurde abgebrochen: Es konnte kein geschützter SSL/TLS-Kanal erstellt werden..
In C:\Users\pvoelz\Desktop\TopQW_Download_2.ps1:26 Zeichen:9
+ $XML = (Invoke-Webrequest -Uri $Link -Credential $Zugangsdaten).conte ...
+         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebException
    + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand
Mitglied: 138721
Solution 138721 Feb 04, 2019 updated at 14:45:29 (UTC)
Goto Top
Prüfe auf der Seite in den Seiteninformationen welches SSL Protokoll sie nutzt. Nutzt das Teil vielleicht noch das vollkommen veraltete SSL3 (in dem Fall dringend Update des Servers durchführen!)?? Wenn ja dann füge das bei den Protokollen in der Liste oben hinzu.
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]'SSL3,Tls,Tls11,Tls12'  

screenshot
Member: Pat.bat
Pat.bat Feb 04, 2019 at 15:31:57 (UTC)
Goto Top
Das ist die Verschlüsselung
verschlüsselung
Member: Pat.bat
Pat.bat Feb 04, 2019 updated at 15:38:20 (UTC)
Goto Top
Alles klar es funktioniert nun mit dem Zusatz Tls.

Vielen Dank :D

Jetzt muss ich nur noch hinkriegen das er das Teil woanders ablegt als in meinem Benutzerprofil und dann kann ich weitermachen mit dem verarbeiten.

Offtopic: kann ich eigentlich meine batch .bat durch powershell ersetzen oder hat .bat noch seine Darseinsberechtigung?

Grüße,
Patrick

Anbei der Fertige Code:

$global:PSDefaultParameterValues = @{
        'Invoke-RestMethod:Proxy'='http://1.1.1.1:8080'  
        'Invoke-WebRequest:Proxy'='http://1.1.1.1:8080'  
        '*:ProxyUseDefaultCredentials'=$true  
    }
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]'Tls,Tls11,Tls12'  

Add-Type @"  
    using System.Net;
    using System.Security.Cryptography.X509Certificates;
    public class TrustAllCertsPolicy : ICertificatePolicy {
        public bool CheckValidationResult(
            ServicePoint srvPoint, X509Certificate certificate,
            WebRequest request, int certificateProblem) {
            return true;
        }
    }
"@  
[System.Net.ServicePointManager]::CertificatePolicy = New-Object TrustAllCertsPolicy 

$Link = "https://zauberinsel.de/prosozXML/60_Parchim/Export.xml"  
$Username = "****"  
$Passwort = "****" | ConvertTo-SecureString -asPlainText -Force  
$Zugangsdaten =  New-Object System.Management.Automation.PSCredential($Username, $Passwort)

$XML = (Invoke-Webrequest -Uri $Link -Credential $Zugangsdaten).content
$XML | New-Item -Type File -Name Download.xml
Mitglied: 138721
138721 Feb 04, 2019 updated at 16:18:09 (UTC)
Goto Top
Zitat von @Pat.bat:
Jetzt muss ich nur noch hinkriegen das er das Teil woanders ablegt als in meinem Benutzerprofil und dann kann ich weitermachen mit dem verarbeiten.
Den Pfad in der letzten Zeile anpassen, sollte doch auch von einem Powershell-Anfänger in 10 Sekunden machbar sein.
Offtopic: kann ich eigentlich meine batch .bat durch powershell ersetzen oder hat .bat noch seine Darseinsberechtigung?
Joa, kannst du selbst verständlich.
Batch hat dort seine Daseinsberechtigung wo die PS nicht genutzten werden kann/darf or whatever. Heutzutage gibt es aber keinen großartigen Grund mehr Batch zu nutzen, die PS kann all das was Batch kann und noch wesentlich mehr, da objektorientiert etc. pp.