+ Auf Thema antworten
Zeige Ergebnis 1 bis 5 von 5

Thema: Wie bewerkstelligen?

  1. #1

    Wie bewerkstelligen?


    Habe die Aufgabe bekommen ein script zu schreiben das mir bestimmte Ordner in ein vorgegebenen Ordner kopieren soll. Da ich ein Neuling bin und mein Chef es erwartet und ich mich schon daran probiert habe frage ich mal hier nach.
    Situation
    erstens einen Variablen Pfad angeben per InputBox also CD,USB, Ordner also selbst aussuchen (Quellordner)
    zweitens Den Ordner den ich kopieren will zu einen Festen Ordner der evt. schon angelegt ist wenn nicht anlegen lassen und die dateien überschreiben ohne nachfrage im Zielordner.
    Mit Unterordner das ganze.
    Gelöst habe ich schon das ein bestimmtes Programm das dabei stören würde wenn es läuft automatisch geschlossen wird....
    Denke es wird mit fso.CopyFolder gelöst?
    Für etwas unterstützung wäre ich dankbar da ich es auch lernen möchte und mein Berufsleben erleichtern würde.

    Soweit bin ich jetzt:

    Const Computer = "."
    Const ProcessName = "notepad.exe"
    Const BIF_NONEWFOLDERBUTTON = 512

    Dim objWMIService, colProcessList, objProcess
    Dim Error, abfrage, Shell, ShellFolder, FolderList, Item

    Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & Computer & "\root\cimv2")
    Set colProcessList = objWMIService.ExecQuery ("Select * from Win32_Process where Name = """ & ProcessName & """")
    For Each objProcess In colProcessList
    WScript.Echo "Die Anwendung " & ProcessName & " wird beendet."
    Error = objProcess.Terminate()
    If Error = 0 Then
    WScript.echo "Die Anwendung wurde erfolgreich beendet."
    Else
    WScript.Echo "Beim Beenden der Anwendung ist der Fehler " & Error & " aufgetreten."
    End If

    abfrage = MsgBox ("Daten kopieren", vbYesNo, "ComComS 2009")
    If abfrage = vbYes Then
    Set Shell = CreateObject("Shell.Application")
    Set FolderList = CreateObject("System.Collections.ArrayList")
    Do
    Set ShellFolder = Shell.BrowseForFolder(0, "Verzeichnis wählen", BIF_NONEWFOLDERBUTTON)
    If (Not ShellFolder Is Nothing) Then
    FolderList.Add(ShellFolder.Self.Path)
    End If
    Loop Until (ShellFolder Is Nothing)

    For Each Item In FolderList
    CreateObject("WScript.Shell").Run "robocopy.exe """ & Item & """ d:\test\"
    Next
    ElseIf abfrage = vbNo Then
    MsgBox "Die Aktion wurde vom Benutzer abgebrochen", vbExclamation, "Hinweis"
    End If
    Next

    möchte nur einen Ordner aussuchen und bei OK die Dateien kopieren.
    Bei der Lösung muss ich auf abbrechen gehen bevor kopiert wird.
    Geändert von Raiden (31.01.2010 um 15:06 / @629 Uhr) Grund: Quelltext

  2. #2

    AW: Wie bewerkstelligen?

    An welcher Stelle musst du auf [Abbrechen drücken?]
    Bis dann - dieseyer

    Und zwischendurch: http://dieseyer.de
    Leichter zu merken: http://wsh-vbs.de

  3. #3

    AW: Wie bewerkstelligen?

    Wenn ich einen Ordner ausgesucht habe auf OK gehe und dann muss ich auf abbrechen gehen damit es weiter geht wenn ich auf OK drücke kann ich mir wieder einen Ordner aussuchen.Name:  Unbenannt.png
Hits: 76
Größe:  34,0 KB

  4. #4

    AW: Wie bewerkstelligen?

    Da du mehrere Verz. in einer Schleife auswählen willst, kommst du aus der Schleife nur raus, wenn kein Verz. ausgewählt ist (Abbrechen): "Loop Until (ShellFolder Is Nothing)"

    Du kannst vor der nächsten Verz.-Auswahl 'fragen', ob ein weiteres Verzeichnis ausgewählt werden soll und dort ggf. die Schleife verlassen - das nervt aber noch mehr . . .

    Wenn du die Auswahl nicht mit "Verzeichnis wählen" sondern mit "Weiteres Verzeichnis wählen oder [Abbrechen]" betitelst, wird es dem Anwender klarer - hoffe ich ;-)
    Bis dann - dieseyer

    Und zwischendurch: http://dieseyer.de
    Leichter zu merken: http://wsh-vbs.de

  5. #5

    AW: Wie bewerkstelligen?

    Wollte mich noch bedanken für die Hilfe *Danke*

+ Auf Thema antworten

Tags for this Thread

Forumregeln

  • Es ist dir nicht erlaubt, neue Themen zu verfassen.
  • Es ist dir nicht erlaubt, auf Beiträge zu antworten.
  • Es ist dir nicht erlaubt, Anhänge hochzuladen.
  • Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.