Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

WSH - Filezugriff macht Ärger

Frage Entwicklung

Mitglied: WaldSchr4T

WaldSchr4T (Level 1) - Jetzt verbinden

01.12.2005, aktualisiert 02.12.2005, 5331 Aufrufe, 3 Kommentare

Überprüfen ob eine File "bereit" ist, ob man lesen / schreiben kann

Wir haben das Problem, dass under WSH-Script manchmal Probleme beim Dateiaufruf erzeugt. Es soll nur "Stopped" oder "Running" in eine *.txt-Datei schreiben, gibt aber manchmal eine Fehlermeldung: "Erlaubnis verweigert" an der Stelle an der man die Datei öffnet. Kann man das Abfangen, oder irgendwie mehrmals probieren bis es geht? Kann es sein, dass dieser Fehler auftritt, wennn man eine Datei aus einer Batchdatei heraus anspricht? Oder kann es daran liegen, dass das WSH-Skript 2 mal recht schnell hintereinander ausgeführt wird?


<font class="code">
Const ForAppending = 2
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objLogFile = objFSO.OpenTextFile("service.txt", _
ForAppending, True)

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colListOfServices = objWMIService.ExecQuery _
("Select * from Win32_Service where Name='Apache2'")

For Each objService in colListOfServices
objLogFile.Write(objService.State)
Next
objLogFile.Close
</font>
Mitglied: gemini
01.12.2005 um 19:13 Uhr
Hallo WaldSchr4t,

zunächst, ForAppending hat den Wert 8, 2 = ForWriting.

Ich nehme an, dass die Rechte auf service.txt passen.

An dem Aufruf aus einem Batch heraus wird es nicht liegen.
Wahrscheinlicher ist, dass die service.txt zum zweiten Mal geöffnet wird, bevor sie geschlossen worden ist.

Gruß
gemini
Bitte warten ..
Mitglied: coli
01.12.2005 um 23:59 Uhr
gelöscht, da blödsinn ..
Bitte warten ..
Mitglied: Biber
02.12.2005 um 18:05 Uhr
@coli
Ich finde Deinen Tipp genial - wenn ich geahnt hätte, dass sich in WSH einfach on the fly Methoden dazuerfinden lassen wie Deine objLogFile.Quit, dann wäre ich schon vor Monaten von Bätch auf WSH umgestiegen.

Kann ich denn auch einfach schreiben:
If objLogFile.AnyProblems Then objLogFile.ForgetIt
??

@WaldSchr4T
Wenn Du die Wahrscheinlichkeit der Zugriffskollisionen minimieren willst, dann stell Deine paar Zeilen sinnvoll um und öffne die Logdatei erst, wenn Du etwas zu schreiben hast.
Im Moment ist die Logdatei exclusiv geöffnet, bevor Du überhaupt ein Objekt objWMIService erstellt hast, geschweige denn dieses geantwortet hat. Wenn dieser Service sich (theoretisch) mal 3 Minuten Zeit lässt zum Antworten, ist die Datei für diese Dauer gesperrt.
Wenn der CodeSchnipsel an dieser Stelle abschmiert (Objekt kann nicht erstellt werden und Programm knallt weg), dann würde ich auch nicht darauf wetten, das M$ das offene FileHandle sofort schließt.
Kleine Randfrage: Wie sinnvoll ist denn so ein LogFile, in dem dann nach ein paar Wochen meterlang Zeilen mit "Running" und "Stopped" untereinanderstehen?

Schönes Wochenende
Biber
[Edit] @coli
Sorry, coli, sooo vernichtend hab ichs auch nicht gemeint... ich wollte nur die "objLogFile.Quit" nicht unkommentiert stehen lassen.
Ich war wohl ein bisschen übermütig, weil endlich Wochenende ist. Tut mir Leid. War aber bezogen auf den Tipp und nicht die Person. [/Edit]
Bitte warten ..
Ähnliche Inhalte
Windows 10
gelöst UAC Benutzersteuerung macht Probleme (5)

Frage von Madzylinder zum Thema Windows 10 ...

Windows Server
Macht ein Server bei uns Sinn? (12)

Frage von Southtown zum Thema Windows Server ...

Batch & Shell
gelöst Dir tc Befehl unter Windows 10 macht Probleme (14)

Frage von sugram zum Thema Batch & Shell ...

Windows Server
IIS 6.2 macht permanet Pause (10)

Frage von OlliPWS zum Thema Windows Server ...

Neue Wissensbeiträge
Rechtliche Fragen

Heiseshow, live ab 12 Uhr: Steht die Vorratsdatenspeicherung vor dem Aus?

Tipp von sabines zum Thema Rechtliche Fragen ...

Outlook & Mail

Outlook Probleme nach Juni Updates - KB3203467 ist Schuld

(1)

Information von Deepsys zum Thema Outlook & Mail ...

Microsoft Office

Windows 7, Office 2016 RTM und Updates ohne WSUS

Tipp von chgorges zum Thema Microsoft Office ...

E-Mail

Thunderbird 52 hat Druckprobleme

(3)

Tipp von magicteddy zum Thema E-Mail ...

Heiß diskutierte Inhalte
Server-Hardware
Einem Stromausfall entgegen wirken (22)

Frage von OIOOIOOIOIIOOOIIOIIOIOOO zum Thema Server-Hardware ...

Festplatten, SSD, Raid
PC stellt nach dem Bios ab (20)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...

Windows 7
Freeware MSI Tool (13)

Frage von uridium69 zum Thema Windows 7 ...

DSL, VDSL
gelöst Ständige Störungen - Internet (12)

Frage von gamerff zum Thema DSL, VDSL ...