VBS Script lieferfert seit ein paar Tagen Fehler Code 800A0046 Erlaubnis Verweigert
Hallo,
ich lasse mit folgendem Script (VBS) alle CSV Dateien in einem Verzeichnis jeweils das Komma durch Semikolon ersetzen.
letztmalig wurde dieses am 03.12 ausgeführt.
Heute liefert das Script an der Zeile 7 den Fehler Code 800A0046 Erlaubnis Verweigert.
Öffne ich die Dateien mit einem Texteditor / Sucher/ Ersetze kann ich ohne einen Fehler die Datei speichern.
Was kann / ist hier der Fehler , warum verweigert mir Windows mit dem Scrit den Zugriff.
Auch Test mit anderen Ordnern brachte keine Lösung.
Grüße aus München
ich lasse mit folgendem Script (VBS) alle CSV Dateien in einem Verzeichnis jeweils das Komma durch Semikolon ersetzen.
Ordner = "C:\Temp\"
Typ = "csv" 'in Kleinbuchstaben
Set fso = CreateObject("Scripting.FileSystemObject")
For Each Datei In fso.GetFolder(Ordner).Files
If LCase(fso.GetExtensionName(Datei.Name)) = Typ Then
T = Datei.OpenAsTextStream.ReadAll
fso.CreateTextFile(Datei.Path).Write Mid(Replace(T, ",", ";"), InStr(T, vbNewline) + 2)
End If
Next
letztmalig wurde dieses am 03.12 ausgeführt.
Heute liefert das Script an der Zeile 7 den Fehler Code 800A0046 Erlaubnis Verweigert.
Öffne ich die Dateien mit einem Texteditor / Sucher/ Ersetze kann ich ohne einen Fehler die Datei speichern.
Was kann / ist hier der Fehler , warum verweigert mir Windows mit dem Scrit den Zugriff.
Auch Test mit anderen Ordnern brachte keine Lösung.
Grüße aus München
Please also mark the comments that contributed to the solution of the article
Content-Key: 291412
Url: https://administrator.de/contentid/291412
Printed on: April 24, 2024 at 08:04 o'clock
5 Comments
Latest comment
Hallo thomas1972,
eventuell solltest du mal versuchen explizit zum Lesen und Schreiben zu öffnen und ordnungsgemäß zu schließen. Ungetestet:
Grüße
rubberman
eventuell solltest du mal versuchen explizit zum Lesen und Schreiben zu öffnen und ordnungsgemäß zu schließen. Ungetestet:
Ordner = "C:\Temp\"
Typ = "csv" 'in Kleinbuchstaben
Set fso = CreateObject("Scripting.FileSystemObject")
For Each Datei In fso.GetFolder(Ordner).Files
If LCase(fso.GetExtensionName(Datei.Name)) = Typ Then
With Datei.OpenAsTextStream(1)
T = .ReadAll
.Close
End With
With Datei.OpenAsTextStream(2)
.Write Mid(Replace(T, ",", ";"), InStr(T, vbNewline) + 2)
.Close
End With
End If
Next
Grüße
rubberman
Oder auch die Powershell in der CMD benutzen:
Gruß jodel32
powershell -ExecutionPolicy ByPass -Command "gci 'c:\temp\*.csv' | %%{(gc $_.FullName) -replace ',',';' | set-content $_.FullName}"