Top-Themen

Aktuelle Themen (A bis Z)

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

gelöst Batchdatei bricht bei XP bei IF ab, bei windows 2000 läuft es

Mitglied: marsmars

marsmars (Level 1) - Jetzt verbinden

12.02.2009, aktualisiert 15:57 Uhr, 5130 Aufrufe, 8 Kommentare

Netlogonscript zum auswälen des Standarddruckers im Raum nach der Anleitung mit dsquery.exe von
http://www.gruppenrichtlinien.de/howto/Anmelde_Scripts.htm (unten)

Das Script (Auszug)

@echo off


for /f "Tokens=2 Delims=," %%i in ('\\bva.local\netlogon\set-default-printer\dsquery computer -name %computername%') do set aktuelleOU=%%i

echo %aktuelleOU%
echo.
IF %aktuelleOU%==OU=C0.08 goto C0.08
if %aktuelleOU%==OU=C0.07 goto C0.07
if %aktuelleOU%==OU=C0.02 goto C0.02
if %aktuelleOU%==OU=C0.03 goto C0.02
if %aktuelleOU%==OU=C1.01 goto C1.01
if %aktuelleOU%==OU=C1.07 goto C1.07

goto end

:C.08
...


Konnte die Abbruchstelle lokalisieren....
Bei Windows XP bricht er bei beim ersten if bzw bei der IF-Verzweigung ab. An der groß / klein Schreigung liegt es nicht.
Bei 2000 läuft das Script

Danke im Vorraus für eure Hilfe
Mitglied: 60730
12.02.2009 um 16:29 Uhr
Servus,

das script scheint mir aber sehr eingestaubt..und könnte auch eine Diät gut vertragen.

01.
for /f "Tokens=2 Delims=," %%i in ('\\bva.local\netlogon\set-default-printer\dsquery computer -name %computername%') do set aktuelleOU=%%i 
02.
 
03.
echo %aktuelleOU% 
04.
if not "%aktuelleOU%"=="" goto "%aktuelleOU%"
Aber an der Diät liegt es sicher nicht.

Wird / kommt bei echo %aktuelleOU% unter Xp etwas raus?

Hab jetzt nicht die Zeit, das script genauer unter die Lupe zu nehmen / eine Umgebung dafür zu bauen.

Kannst du den eingegrentzen Fehler etwas genauer beschreiben?
Liegts evtl. nur an rechten oder an dem Pfad?

Gruß
Bitte warten ..
Mitglied: marsmars
12.02.2009 um 17:40 Uhr
durch
echo %aktuelle%
wird das gewünschte ergebnis geliefert z.B. OU ist C0.08, dann OU=C0.08
erst dadurch konnte icgh das Problem lokalisieren.

Unter Pfad verstehst du bva.local\netlogon\set-default-printer\dsquery ??
Zu Recht: Sowohl als Administrator als auch eingeschränkter User klapp tes nicht diöt usw. werde ich ausprobieren
danke
Bitte warten ..
Mitglied: miniversum
12.02.2009 um 18:24 Uhr
Ändere die Ifs mal so ab (nurmal das erste als Beispiel):
IF "%aktuelleOU%" equ "OU=C0.08" goto C0.08
Bitte warten ..
Mitglied: marsmars
13.02.2009 um 23:53 Uhr
Hi,
Ich kann alle angegeben Änderungsvorschläge leider erst in 2 Wochen ausprobieren (LK Vorabiklausur, Karneval ... )
Mit
01.
IF not ...  
würde ich aber nicht zur Abfrage meherer Möglichkeiten kommen, ich werde es testen.

Mit
Zitat von miniversum:
01.
 IF "%aktuelleOU%" equ "OU=C0.08" goto C0.08 

arbeite ich dann wohl lieber.

PS: Danke für eure Hilfe ihr beiden
Bitte warten ..
Mitglied: marsmars
16.02.2009 um 14:13 Uhr
Hallo noch mal,
so sieht der Quelltext jetzt aus:
01.
rem ** Hiermit erstellen wir uns eine eigene Variable => %aktuelleOU% die dann ** 
02.
rem ** im weiteren Verlauf des Scriptes zur Abfrage benutzt werden kann ** 
03.
rem ** dsquery.exe ist beim 2003 Server dabei 
04.
rem ** gleiche Abfrage liesse sich auch für den Benutzer erstellen. 
05.
  
06.
for /f "Tokens=2 Delims=," %%i in ('\\bva.local\netlogon\set-default-printer\dsquery computer -name %computername%') do set aktuelleOU=%%i 
07.
 
08.
echo %aktuelleOU% 
09.
echo.  
10.
Pause 
11.
if not %aktuelleOU% equ C0.08 goto neu 
12.
if not %aktuelleOU% equ C0.07 goto C0.07 
13.
goto end 
14.
 
15.
:C0.07  
16.
	ping dc2 -n 1 -w 20 %1 | findstr "TTL=" >NUL 
17.
	if %errorlevel%==0 goto ok-C0.07  
18.
	if %errorlevel%==1 goto Fehler 
19.
 
20.
	goto end 
21.
 
22.
		:ok-C0.07 
23.
			echo Server DC2 in C0.07 erreichbar. 
24.
			echo Drucker in C0.07 wird verbunden... 
25.
			echo. 
26.
			\\bva.local\NETLOGON\con2prt.exe /f 
27.
			\\bva.local\NETLOGON\con2prt.exe /cd \\dc2\1000-C0.07 
28.
			echo off Drucker wurde verbunden 
29.
			echo. 
30.
 
31.
		goto end 
32.
 
33.
 
34.
  
35.
 
36.
:neu	 
37.
Pause 
38.
	ping dc2 -n 1 -w 20 %1 | findstr "TTL=" >NUL 
39.
	if %errorlevel%==0 goto ok-C0.08  
40.
	if %errorlevel%==1 goto Fehler 
41.
	goto end 
42.
 
43.
		:ok-C0.08 
44.
			echo Server DC2 in C0.07 erreichbar. 
45.
			echo Drucker in C0.08 wird verbunden... 
46.
			echo. 
47.
			\\bva.local\NETLOGON\con2prt.exe /f 
48.
			\\bva.local\NETLOGON\con2prt.exe /cd \\dc2\1022n-C0.08 
49.
			echo off Drucker wurde verbunden 
50.
			echo. 
51.
 
52.
		goto end 
53.
 
54.
 
55.
 
56.
:Fehler 
57.
	echo Server DC2 in C0.07 nicht erreichbar!!!!!! 
58.
	echo Drucker in C0.07 wird nicht verbunden... 
59.
	echo. 
60.
	goto end 
61.
 
62.
:end 
63.
echo Srcipt erstellt von Mir 
64.
echo. 
65.
Pause
Die Ausgabe
01.
"\\bva\sysvol\BVA.local\scripts\set-default-printer" 
02.
CMD.EXE wurde mit dem oben angebenen Pfad als aktuellem Verzeichnis gestartet. 
03.
UNC-Pfade werden nicht unterstützt. 
04.
Stattdessen wird das Windows-Verzeichnis als aktuelles Verzeichnis gesetzt. 
05.
 
06.
C:\WINDOWS>rem **  ........... gekürzt.......... 
07.
 
08.
C:\WINDOWS>for /F "Tokens=2 Delims=," %i in ('\\bva.local\netlogon\set-default-p 
09.
rinter\dsquery computer -name SN021007006') do set aktuelleOU=%i 
10.
 
11.
C:\WINDOWS>set aktuelleOU=OU=C0.08 
12.
 
13.
C:\WINDOWS>echo OU=C0.08 
14.
OU=C0.08 
15.
 
16.
C:\WINDOWS>echo. 
17.
 
18.
 
19.
C:\WINDOWS>Pause 
20.
Drücken Sie eine beliebige Taste . . .
Danach bricht er ab, wenn ich drücke ...

mit "if not" auch,

genauso mit
if not %aktuelleOU% equ C0.08 goto neu

"if 1==1 goto neu" funktioniert
genauso wie "if exsit ..."

mh vll. sollte ich das "OU=" aus dem string entfernen, das dauert aber... lerne jetzt,
gruß aus dem rheinland das im Karneval fieber ist
MarsMars
Bitte warten ..
Mitglied: 60730
16.02.2009 um 14:34 Uhr
Servus,

um den Fehler:
UNC-Pfade werden nicht unterstützt.

Stattdessen wird das Windows-Verzeichnis als aktuelles Verzeichnis gesetzt.
loszuwerden, bitte den Key ändern / eintragen
01.
[HKEY_CURRENT_USER\Software\Microsoft\Command Processor] 
02.
"DisableUNCCheck"=dword:00000001
wegen dem rest - sorry - kein Karneval - sondern ein paar viele neue Notebook, deren Treiber mir grad Sorgen machen.

Gruß
Bitte warten ..
Mitglied: miniversum
16.02.2009 um 17:00 Uhr
Ändere mal Zeile 11 von
if not %aktuelleOU% equ C0.08 goto neu
in
if not "%aktuelleOU%" equ "C0.08" goto neu
Auserdem wird so die edingung nicht erfüllt sein da Deine "%aktuelleOU%" nicht "C0.08" sondern "OU=C0.08" lautet.
Daher wäre besser so:
if not "%aktuelleOU%" equ "OU=C0.08" goto neu
oder so:
if not "%aktuelleOU:~3%" equ "C0.08" goto neu
Bitte warten ..
Mitglied: marsmars
17.02.2009 um 09:36 Uhr
Ich habe das Problem gelöst!
Das Problem waren "=" und ".". Nach Entfernung durch folgenden Code läuft das Script.
01.
for /f "Tokens=2 Delims=," %%i in ('\\bva.local\netlogon\set-default-printer\dsquery computer -name %computername%') do set aktuelleOU=%%i 
02.
set Raum=%aktuelleOU:~3,2%%aktuelleOU:~6,2% 
03.
if %Raum%==C008 goto C008 
04.
if %Raum%==C007 goto C007 
05.
...
@ miniversum: Das mit den Gänsefüßchen hatte ich schon und "OU=" hatte ich wohl wieder vergessen einzufügen, da ich schon mit String verkürzen gearbeitet hatte
@ TimoBeil: Meinst du die reg datei ist notwendig?

@miniversum und TimoBeil: 1000 Danke für eure Hilfe ^^
Bitte warten ..
Ähnliche Inhalte
Windows Systemdateien

Windows 7 - Zeitsync über Batchdatei

gelöst Frage von mario87Windows Systemdateien14 Kommentare

Hallo zusammen, ich bin auf der Suche nach einer einfachen Zeitsynchronisation via Batchdatei. Im Netzwerk befindet sich ein Windows ...

Netzwerke

Shrew VPN mit Windows 8.1 läuft nicht

gelöst Frage von TomJonesNetzwerke14 Kommentare

Hallo zusammen, ich habe einen Client mit Windows 8.1 x64. Ich bekomme auf diesem die IPSec VPN Verbindung nicht ...

Windows 10

Windows 10 läuft nicht auf HP-Rechnern

gelöst Frage von PhoenixvogelWindows 1010 Kommentare

Hallo zusammen Mein Vater updatete sein HP-Rechner von W7Pro auf W10. Nun kam der PC nicht mehr ganz hoch, ...

Suse

Tar bricht weg. Was kann das sein?

Frage von QQR700Suse29 Kommentare

Hallo, ich versuche, einen 20GB großen Ordner zu tarren (tar cvfz). Dabei bricht das Programm plötzlich mittendrin ohne weitere ...

Neue Wissensbeiträge
Vmware
VMware Update für den ESXi 5.5 verfügbar
Information von sabines vor 4 StundenVmware

Nach dem ganzen Hickhack um Update mit Microcode Anpassungen und Rückzug, gibt es nun für den ESXi 5.5 ein ...

CPU, RAM, Mainboards

Meltdown und Spectre: Intel zieht Microcode-Updates für Prozessoren zurück

Information von keine-ahnung vor 8 StundenCPU, RAM, Mainboards4 Kommentare

Moin, extrem lutztig. Nur gut, dass ich noch nicht beim Probanden-Bingo mitgemacht habe :-) LG, Thomas

Router & Routing
PfSense als Addon auf QNAP
Information von magicteddy vor 22 StundenRouter & Routing4 Kommentare

Moin, für Spielereien eine ganz nette Idee aber ich fürchte das soetwas auch als echte Firewall genutzt wird: In ...

Datenschutz

Teamviewer kommt für IoT-Geräte wie den Raspberry Pi

Information von magicteddy vor 1 TagDatenschutz1 Kommentar

Moin, jetzt werden IoT Geräte endgültig zur Wanze? Anscheinend kann man auf einem Dashboard seine Geräte visualisieren Ich stelle ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Preis für Wartungsvertrag ok?
gelöst Frage von a-za-zNetzwerkmanagement26 Kommentare

Hallo! Mal ne Frage, weil ich mich mit dem akzeptablen Preis für einen Reaktionszeitvertrag nicht auskenne. Meine Firma hat ...

Windows Server
TEMP-Profile
gelöst Frage von Forseti2003Windows Server21 Kommentare

Guten Morgen, wer kennt sie nicht, die lieben Temporären Benutzerprofile, vorallem immer dann, wenn man sie am wenigsten braucht. ...

Multimedia & Zubehör
Welches Tablet für die Verkäufer?
Frage von Hendrik2586Multimedia & Zubehör15 Kommentare

Guten Morgen meine Lieben, vielleicht könnt ihr mir ja helfen. Es geht um unsere Außendienstmitarbeiter /Verkäufer. Sie sollen demnächst ...

Windows Netzwerk
Ist ein Portforwarding auf einen PC ohne lauschendes Programm ein (großes) Sicherheitsproblem?
Frage von PluwimWindows Netzwerk13 Kommentare

Hallo zusammen, zur Fernwartung eines Rechners an einem anderen Ort nutze ich VNC. Da dieser Rechner einfach nur eine ...