swfadmin
Goto Top

Script-Fehler für autom. Defrag?

Möchte Defrag des OS Win_XP Pro mit Systemmitteln automatisieren.

Sytem:
WIN XP Pro, AMD Prozessor 3.200+, 2 GB Arbeitsspeicher, MB MSI K8N Neo V2.0, 5 HD, Grafikkarte Nvidia FX5900XT-VTD

Problembeschreibung:

Set objShell = CreateObject( "Wscript.Shell" )
Set objWshScriptExec = objShell.Exec("defrag.exe c: -a")
strOutput=objWshScriptExec.StdOut.ReadAll
strSearch = "Das Volume muss nicht defragmentiert werden"
If InStr(1, StrOutput, strSearch) = 0 Then objShell.Run ("defrag.exe c: /v")
End if

Wegen der Zeile 6 im o. g. Script funktioniert bei mir die Sache nicht. Wie wäre die Schreibweise richtig?

Es ist ein Script aus "Heft Chip 05/2007 auf Seite 197 oben", mit dem man s/eine Festplatte automatisch defragmentieren können soll. Eine schöne Sache, wenn es denn auch funktionieren würde.

Der Herr Chefredakteur Thomas Pyczak hat trotz Erinnerung vor mehreren Wochen bisher leider nicht auf meine Fehleranfrage geantwortet. Aber vielleicht kann mir jemand aus diesem Kreis helfen?
Besten Dank im Voraus.

Content-Key: 59870

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

Printed on: April 18, 2024 at 09:04 o'clock

Mitglied: 36539
36539 May 26, 2007 at 08:23:01 (UTC)
Goto Top
Hallo,
ich verwende von http://www.helmrohr.de/
---> Downloads --> Windows --> "Datenträger-WartungXP" und "DfrgStartXP"
Die funktionieren auch.

gruß
onegasee59
Member: bastla
bastla May 26, 2007 at 08:48:32 (UTC)
Goto Top
Hallo swfadmin und willkommen im Forum!

Der Fehler im Script resultiert aus der Tatsache, dass "If"-"Then" ein- oder mehrzeilig geschrieben werden kann. Funktionieren sollten also
If InStr(1, StrOutput, strSearch) = 0 Then
    objShell.Run ("defrag.exe c: /v")  
End If
oder
If InStr(1, StrOutput, strSearch) = 0 Then objShell.Run ("defrag.exe c: /v")  
ohne zusätzliches "End If".

Grüße
bastla
Member: swfadmin
swfadmin May 26, 2007 at 09:42:36 (UTC)
Goto Top
Tausend Dank an alle unmittelbaren Helfer! Alle Antworten haben auf Anhieb geholfen.
Member: swfadmin
swfadmin Jun 29, 2008 at 13:45:54 (UTC)
Goto Top
Danke für die Hilfe! Das END if hat geholfen.