1. Bitte immer die Rechnerkonfiguration komplett posten!
    Vollständige Angaben zur Konfiguration erleichtern die Hilfestellung und machen eine zügige Problemlösung wahrscheinlicher. Wie es geht steht hier: Klick.
    Dismiss Notice
  2. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Fehler im Script

Discussion in 'Heimnetz und WLAN' started by Peter161, Feb 1, 2008.

Thread Status:
Not open for further replies.
  1. Peter161

    Peter161 Byte

    Hallo, ich habe mir ein Script schreiben lassen, nicht für mich privat, sondern für das schulnetzwerk, welches ich verwalte. Nun sind da Fehler dirn, aber ich weiß nicht wo, könntet ihr mir bitte helfen?

    Logonscript:
    if exist == "h:\" net use h: /del /yes
    @echo off
    if exist == "c:\user.txt" del c:\user.txt
    if exist == "c:\class.txt" del c:\class.txt
    set /p klasse="Bitte gib deine Klasse ein und bestätige mit Enter! (Form:1;2;3;3Ia;3Ib;3IIa;3IIb)"
    set /p schuelername="Bitte gib deinen Namen ein und bestätige mit Enter! (Form:VornameNachname)"
    if not exist == "\\Server\inis\%klasse%" mkdir "\\Server\inis\%klasse%"
    if not exist == "\\Server\inis\ver\%klasse%\" mkdir "\\Server\inis\ver\%klasse%"
    if not exist == "\\Server\inis\%klasse%\%schuelername%" mkdir "\\Server\inis\%klasse%\%schuelername%"
    if not exist == "\\Server\inis\ver\%klasse%\%schuelername%" mkdir "\\Server\inis\ver\%klasse%\%schuelername%"
    net use H: \\Server\inis\%klasse%\%schuelername% /persistent:no
    if not exist == "\\Server\inis\pclog\%comutername%" mkdir "\\Server\inis\pclog\%computername%"
    echo %schuelername% aus der Klasse %klasse% meldete sich an am %date% um %time% am PC %computername%. >> "\\Server\inis\pclog\%computername%\logfile.log"
    if not exist == "\\Server\inis\slog\%schuelername%" mkdir "\\Server\inis\slog\%schuelername%"
    echo %schuelername% aus der Klasse %klasse% meldete sich an am %date% um %time% am PC %computername%. >> "\\Server\inis\slog\%schuelername%\logfile.log"
    echo %schuelername% aus der Klasse %klasse% meldete sich an am %date% um %time% am PC %computername%. >> "\\Server\inis\log\logfile.log"
    xcopy \\Server\netlogon\autoeigdat \\Server\inis\%klasse%\%schuelername% /E /C /Y

    echo SCHUELERNAME:%schuelername% > c:\user.txt
    echo KLASSE:%Klasse% > c:\class.txt
    rem --------------------------------------------------------------------------------------------
    set local
    set zielpfad=\\Peter\Schuelerverzeichnisse
    set "progtitel=%schuelername%"
    set "progdir="%windir%"
    set "progexe=explorer.exe /e,"\\Server\inis\%klasse%\%schuelername%"
    set "beschreibung=Erklärung eigentlich unnötig ..."
    echo Set objShell=WScript.CreateObject("Wscript.Shell")>%temp%\MakeShortCut.vbs
    echo Set objShortcut=objShell.CreateShortcut("%zielpfad%\%progtitel%.lnk")>>%temp%\MakeShortCut.vbs
    echo objShortcut.TargetPath="%progdir%\%progexe%">>%temp%\MakeShortCut.vbs
    echo objShortcut.Description="%beschreibung%">>%temp%\MakeShortCut.vbs
    echo objShortcut.WorkingDirectory="%progdir%">>%temp%\MakeShortCut.vbs
    echo objShortcut.Save>>%temp%\MakeShortCut.vbs
    cscript //nologo %temp%\MakeShortCut.vbs
    del %temp%\MakeShortCut.vbs
    rem ---------------------------------------------------------------------------------------------

    Pause

    Logoffscript:
    @echo off
    set file="c:\user.txt"
    FOR /F "skip=2 tokens=1 delims=[]" %%i in ('find /N "SCHUELERNAME:" %file%') do (

    call:auslesen %%i

    pause
    )

    :auslesen
    set "USER="
    set /a offset=%1-1
    FOR /F "tokens=1* delims=:" %%a in ('more +%offset% %file%') do if not defined SCHUELERNAME set SCHUELERNAME=%%b

    set file="c:\class.txt"
    FOR /F "skip=2 tokens=1 delims=[]" %%i in ('find /N "KLASSE:" %file%') do (

    call:auslesen %%i
    pause
    )
    :auslesen
    set "Class="
    set /a offset=%1-1
    FOR /F "tokens=1* delims=:" %%a in ('more +%offset% %file%') do if not defined KLASSE set KLASSE=%%b


    rem ---------------------------------------------------------------------------------------------
    if exist == "h:\" net use h: /del /yes
    rem ---------------------------------------------------------------------------------------------
    echo %schuelername% aus der Klasse %klasse% meldete sich ab am %date% um %time% am PC %computername%. >> "\\Server\inis\slog\%schuelername%\logfile.log"
    echo %schuelername% aus der Klasse %klasse% meldete sich ab am %date% um %time% am PC %computername%. >> "\\Server\inis\log\logfile.log"
    echo %schuelername% aus der Klasse %klasse% meldete sich an am %date% um %time% am PC %computername%. >> "\\Server\inis\pclog\%computername%\logfile.log"
    del "\\Peter\Schuelerverzeichnisse\%schuelername%.lnk"

    pause

    Lg
     
  2. TheD0CT0R

    TheD0CT0R Dr. h.c. Mod

    Aha, welche denn? Was soll das Skript tun und was macht es stattdessen bzw. was macht es nicht?
     
  3. Peter161

    Peter161 Byte

    entschuldigung, das habe ich ganz vergessen.
    Im Logonscript kommt der Fehler:
    Die Umgebungsvariable "local" ist nicht definiert.
    objShortcut.WorkingDirectory=""C:\WINDOWS">>C:\DOKUME~1\Willi\LOKALE~1\Temp\Make
    ShortCut.vbs
    C:\DOKUME~1\Willi\LOKALE~1\Temp\MakeShortCut.vbs(3, 26) Kompilierungsfehler in M
    icrosoft VBScript: Anweisungsende erwartet

    Drücken Sie eine beliebige Taste . . .

    und im Logoffscript kommt folgender:

    Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird.
    da versucht er auf class.txt und user.txt zuzugreifen, aber irgendwie geht das nicht obwohl Unlocker keine Freigabehandle anzeigt!!!
    \\Peter\Schuelerverzeichnisse\Kulpkarl .lnk konnte nicht gefunden werden
    da macht mir die Lücke sorgen.


    Lg danke
     
Thread Status:
Not open for further replies.

Share This Page