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

Starttyp von Diensten per Batch/Script umschalten

Anleitung Entwicklung Batch & Shell

Mitglied: schrecke

schrecke (Level 1) - Jetzt verbinden

19.10.2005, aktualisiert 07.06.2007, 48153 Aufrufe, 38 Kommentare

Hi.

Also folgendes. Ich möchte mir ein Script anfertigen, mit dem ich den Starttyp umschalten kann zwischen deaktiviert, manuell oder automatisch. Damit meine ich nicht den Dienststatus Gestartet, beendet, angehalten, ... Diesen zu verändernt geht ja mit dem befehl net start/stop Dienst.

Kennt jemand ne Möglichkeit, wie ich den Starttyp ändern kann?

Danke euch, Bye schrecke


[edit] Nach "Batch & Shell" verschoben von Atti58 [/edit]
[edit] Auf "Tutorial" geändert von Biber [/edit]
38 Kommentare
Mitglied: 11078
19.10.2005 um 10:52 Uhr
Hallo,

über einen kleinen Umweg ist das möglich. Zunächst: Allein mit Batch geht das nicht!

Aber der Starttyp eines jeden Dienstes ist in der Registry hinterlegtt. Über ein Kommandozeilentool wie reg.exe (in Windows XP vorhanden, bei älteren Windows-Versionen bin ich nicht sicher) kann man auch aus einem entsprechenden Aufruf aus einer Batch-Datei Registry-Werte bearbeiten. Dieser Ansatz sollte helfen.

Die Dienste stehen in folgendem Schlüssel der Registry:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

Jeder Dienst hat einen eigenen Unterschlüssel. Am Beispiel des Dienstes "DHCP-CLient":

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dhcp

In diesem Schlüssel ist ein DWORD-Wert namens "Start". Je nach Starttyp hat dieser einen anderen Zahlenwert zugewiesen:

2 (0x00000002) ist der Starttyp Automatisch
3 (0x00000003) ist der Starttyp Manuell
4 (0x00000004) ist der Starttyp Deaktiviert

Denke daran, dass Du beim Nutzen von reg.exe aber nicht einfach die Zahlen als Werte zuweisen kannst, sondern die Zahl in Hexadezimal als Wert angibst (in Klammern).


Gruß,
Tim
Bitte warten ..
Mitglied: schrecke
19.10.2005 um 10:57 Uhr
aha, danke erstmal für deinen Tip. Ich vermute aber mal das dann der Dienst erst nach neustarten des PC umgestellt ist, oder?
Bitte warten ..
Mitglied: 11078
19.10.2005 um 11:30 Uhr
Hallo,

aha, danke erstmal für deinen Tip. Ich
vermute aber mal das dann der Dienst erst
nach neustarten des PC umgestellt ist, oder?

Der Starttyp greift eigentlich sowieso nur beim Starten des PCs. Wenn der Rechner läuft sind alle Dienste nach Maßgabe ihres Sarttyps gestartet (mal ausgeklammert, dass ein Dienst vielleicht im Fehlerfall nicht so gestartet werden kann, wie er sollte; aber das wäre ja ein Fehler).

Wenn die Dienste gestartet sind, ist nicht mehr der Starttyp maßgebend sondern - wie Du ja schon geschrieben hast - der Status ("gestartet", "angehalten", "beendet" - und das kann man im laufenden System mit "net stop" und "net start" beeinflussen).

Wenn Du Dir immer noch unsicher bist, schreib einfach mal, was Du genau vorhast. Vielleicht fällt es mir dann einfacher zu entscheiden, ob mein Tipp hilfreich ist.


Gruß,
Tim
Bitte warten ..
Mitglied: schrecke
19.10.2005 um 11:40 Uhr
es geht um ne Anmeldung im Firmennetzwerk. 2 W-Lans und 2 Einwahlprogramme dafür. Da die Dienste, der Einwahlprogramme nicht miteinander auskommen is mein Auftrag aus der Chefetage, per script den einen Dienst zustarten und den andern zu beenden und den Starttyp ebenfalls umstellen. Daszu wird dann noch per Script das jeweilige Programm gestartet, was aber eher weniger ne Rolle spielt. Über die Programme kann ich jetzt nicht viel sagen. Sind firmeninterne Eigenentwicklungen.
Bitte warten ..
Mitglied: 11078
19.10.2005 um 11:58 Uhr
Hallo,

es geht um ne Anmeldung im Firmennetzwerk. 2
W-Lans und 2 Einwahlprogramme dafür. Da
die Dienste, der Einwahlprogramme nicht
miteinander auskommen is mein Auftrag aus
der Chefetage, per script den einen Dienst
zustarten und den andern zu beenden und den
Starttyp ebenfalls umstellen.

Starttyp umstellen bringt meiner Meinung nach hierbei nicht wirklich etwas. Denn wenn das Netzwerk geladen ist, sind die Dienste auch schon geladen! Zumindest eben die, die auf "automatisch" stehen. Denn nicht wenige werden ja auch benötigt, um das Netzwerk nutzen zu können; deshalb sollten sie logischerweise zum Zeitpunkt der Anmeldung schon zur Verfügung stehen.

Würde es nicht helfen, den Starttyp für die betreffenden zwei Dienste einfach außen vor zu lassen (oder ihn generell und für immer auf "manuell" zu stellen - das musst Du aber nicht per Script machen sondern einfach über services.msc) und per Script einfach den abzuschalten, der gerade nicht gebraucht wird / bzw. den anschalten, der gebraucht wird?

Gruß,
Tim
Bitte warten ..
Mitglied: schrecke
19.10.2005 um 12:05 Uhr
ja. ich sollte halt nach der Möglichkeit suchen. mein Chef sagte auch, wenn es ni geht dann gehts ni. ich werd ihm das ma erzählen.

vielen dank erstmal für eure hilfe
Bitte warten ..
Mitglied: schrecke
19.10.2005 um 12:16 Uhr
Es geht darum, die Arbeit komfortabler zu machen. sprich, ich nehme das einen Netzwerk, der eine Dinest wird gestartet, der andere beendet/deaktiviert. Wenn dann der rechner neu gestartet wird soll gleich die Einstellunge übernommen werden. Falls man dann mal ein anderes Netzwerk braucht. Muss das Script wieder ausgeführt werden und alles halt anders herum gestellt werden.

Wie wäre das wenn ich per script den wert in der Registry ändern würde. Wie muss ich da vor gehen?
Bitte warten ..
Mitglied: 11078
19.10.2005 um 12:27 Uhr
Hallo,

Falls man dann mal ein anderes Netzwerk
braucht. Muss das Script wieder
ausgeführt werden und alles halt anders
herum gestellt werden.

OK, es muss also nicht bei jedem Startup des Rechners ausgewählt werden, welches Netzwerk zur Verfügung stehen muss. Dann kann man auch einfach den Starttyp ändern und nach Neustart passt es dann. Bis zum Neustart kann man ja immer noch per net stop den jeweils anderen nicht benötigten Dienst abschalten.

Wie wäre das wenn ich per script den
wert in der Registry ändern würde.
Wie muss ich da vor gehen?

Lies mal hier nach:

http://www.microsoft.com/resources/documentation/windows/xp/all/proddoc ...


In Deinem Fall wohl (aus dem Kopf, nicht getestet):

reg add "hklm\SYSTEM\CurrentControlSet\Services\Unterschlüssel des Dienstes" /v Start /t REG_DWORD /d 4

Damit wird der Starttyp des Dienstes auf "deaktiviert" gestellt (hab nachgeschaut, man kann anscheinend doch als Wert einfach "4" schreiben und muss es nicht in der hexadezimalen Form "0x00000004").

Gruß,
Tim
Bitte warten ..
Mitglied: schrecke
19.10.2005 um 14:25 Uhr
ich hab mal nachgeguggt, bei mir gibt es ControlSet001 und 002. Was soll ich n da jezze machen?
Bitte warten ..
Mitglied: schrecke
19.10.2005 um 14:37 Uhr
sorry, Fehler meinerseits. Mich würde aber trotzdem der Unterschied zwischen CurrentsConrtolSet und ControlSet001 und 002 interessieren.
Bitte warten ..
Mitglied: 11078
19.10.2005 um 15:42 Uhr
Hallo,

in den verschiedenen ControlSets werden unterschiedliche Hardwareeinstellungen etc. gespeichert.

<font class="code">
After Windows 2000 has collected information about hardware, the system is interested in which hardware configuration it should use. If the workstation has multiple hardware profiles set up, the user is presented with a list of those profiles. The user can select from one of the hardware profiles or select the Last Known Good Configuration by pressing F8 and picking it from a list (the Last Known Good Configuration is the configuration that was used the last time Windows 2000 booted successfully). The hardware profile and the Last Known Good Configuration are known as ControlSets. A ControlSet contains a complete set of keys and entries needed by Windows 2000 to launch. Windows 2000 stores a number of ControlSets, each identified by a number (e.g. ControlSet001, ControlSet002, etc.). More about ControlSets later.
</font>

[Quelle: http://www.microsoft.com/technet/prodtechnol/windows2000serv/maintain/f ...]

In den einzelnen Controlset... Schlüsseln stehen also spezielle Einstellungen bezgl. des letzten als funktionierend bekannten Zustands des Systems ("last known good" - verwendet nach Abstürzen) und der Optionen, die Du über F8 beim Start booten kannst.

Kann sein, dass hier auch verschiedene Hardwareprofile gespeichert werden (habe damit noch nie arbeiten müssen).

Genaueres weiß ich auch nicht, ist vielleicht Thema für einen eigenen Beitrag!

Gruß,
Tim
Bitte warten ..
Mitglied: ketchup
19.10.2005 um 20:24 Uhr
hi,

warum das rad neu erfinden?
es gibt von MS ein script (ich glaub es ist vbs), das genau das gewünschte macht.
ich setze es ein, um gewisse services am server zu stoppen und auf disabled zu setzen.

den scriptnamen weiß ich jetzt leider nicht auswendig - könnt ich nachliefern wenn gewünscht

j.
Bitte warten ..
Mitglied: schrecke
19.10.2005 um 20:32 Uhr
ja, sehr gewünscht. das wäre ne gute Idee
Bitte warten ..
Mitglied: superboh
20.10.2005 um 02:30 Uhr
Hallo,

es gibt auch unter WinXP oder neuer das Tool sc.exe. Bei Win2000 kann man es aus dem ResourceKit installieren.
Mit dem kann man u.a. so was relativ einfach per Kommandozeile machen.

Gruss,
Thomas
Bitte warten ..
Mitglied: Biber
20.10.2005 um 03:25 Uhr
@superboh
Hatte auch überlegt, ob ketchup die SC.exe meint.
Aber mit der kann man/frau zwar Dienste am Server starten, stoppen, pausieren lassen und auch neu anlegen in oder löschen aus der Registry - aber eben nicht deren Starttyp (Automatisch, Manuell, Deaktiviert) ändern.
Es sei denn über den Weg, den Dienst komplett rauszulöschen und mit neuem Status anzulegen.
Aber so etwas ist ja stillos *lacht*
@schrecke Den vorletzten Satz nur als Plan B vormerken!
@ketchup Bin auch schon total gespannt auf das VBSkript - das kenn ich noch nicht.

Biber
Bitte warten ..
Mitglied: ketchup
20.10.2005 um 08:18 Uhr
nein, ketchup meinte nicht "sc.exe"
sondern "service.vbs"

ist meiner meinung nach von MS - aus dem Windows Resource Kit (ich weiß aber nicht ob W2K oder W2K3 oder gar noch NT4 *gg*).
du kannst zB:
[cscript service.vbs /M disabled /N wuauserv] das WindowsUpdate-Service disablen

weitere optionen:
Controls services on a machine.

SYNTAX:
1. Service.vbs /L
[/S <server>][/U <username>][/W <password>]
[/O <outputfile>]

2. Service.vbs /G | /X | /R | /D | /M <StartMode>
/N <service>
[/S <server>][/U <username>][/W <password>]
[/O <outputfile>]

3. Service.vbs /I /E <execname> /N <service> [/C <DisplayName>]
[/S <server>][/U <username>][/W <password>]
[/O <outputfile>]

PARAMETER SPECIFIERS:
/L List all Services
/D List Service dependencies
/G Start a Service
/X Stop a Service
/R Remove a Service
/M Set the Service Mode
/I Install a service
/E The Full path and filename of the service
StartMode The Service Startup Setting.
Service A Service Name
DisplayName The Service name that appears in the listing/
server A machine name.
username The current user's name.
password Password of the current user.
outputfile The output file name.

EXAMPLE:
1. cscript Service.vbs /L /S MyMachine2
List installed services for the machine MyMachine2.
2. cscript Service.vbs /X /N snmp
Stops the snmp service on the current machine.
Bitte warten ..
Mitglied: Biber
20.10.2005 um 13:31 Uhr
Wieder was gelernt....

Ein sehr schöner Thread - Dickes Danke an alle für die Super-Recherchen und Erklärungen.

Eigentlich kann dieser Beitrag "as is" in den Bereich Tutorials umgehängt werden. Wäre schade, wenn man/frau den nicht wiederfinden würde.

Begeistert
Frank / der Biber aus Bremen

P.S. @ketchup
Habe inzwischen auch eine (oder "die"?) Service.vbs gefunden - scheint dem 1999er-Datum nach aus dem NT-ResKit zu sein.
Bitte warten ..
Mitglied: superboh
20.10.2005 um 13:50 Uhr
@Biber:
Mit was kann man den Starttyp von Diensten nicht ändern? Also sc.exe kann das, denn ein
sc config messenger start= disabled
setzt den Starttyp des Nachrichtendienstes auf deaktiviert.
Kann aber auch sein dass ich Dich missverstanden habe.

Gruss,
Thomas
Bitte warten ..
Mitglied: schrecke
20.10.2005 um 13:58 Uhr
ja, stimmt ich zu. Ich bedank mich mal bei allen die hier fleißig und kompetent rein geschrieben haben.
Bitte warten ..
Mitglied: Biber
20.10.2005 um 14:39 Uhr
@superboh
>Kann aber auch sein dass ich Dich missverstanden habe.

Nein, Thomas, war mein Fehler. Da habe ich SC.exe unterschätzt bzw. die eingebaute Syntax-Hilfe nicht in allen Details gelesen. Danke für den Tipp!

Frank
Bitte warten ..
Mitglied: schrecke
21.10.2005 um 12:25 Uhr
ich mal wieder. also wie sich gerade raus gestellt hat kann ich sv.exe doch nicht verwenden, da teilweiße Windows 2000 eingesetzt wird. Nachinstallieren ist aber auch keine Lösungsvariante.
Nun mache ich es doch mit reg add ... Gibts es eine Möglichkeit, per script Werte in einem schlüssel auszulesen? Praktisch im Pfad HKLM\Sys.\Curen..\Service\dhcp den Wert von Start?
Ich müsste überprüfen, welcher Dienst im Moment aktiviert ist, um nicht einen Dinest zu aktivieren, der schon aktiviert ist.

danke euch
Bitte warten ..
Mitglied: Biber
21.10.2005 um 13:38 Uhr
Moin schrecke,

Du kann das per *.bat und Reg.exe oder RegEdit.exe auslesen. oder per .vbs.
Für Batch sind diverse Beispiele im Forum, für *.vbs glaube ich auch.
Ein *.bat-Beispiel habe ich grad griffbereit:
01.
::~~~ Batchschnipsel: Auslesen eines Reg-Values mit REG.exe 
02.
:: Delims ist ein TAB gefolgt von einem SPACE 
03.
FOR /F "TOKENS=2* DELIMS=	 " %%A IN ('REG QUERY "HKEY_CURRENT_USER\Control Panel\International\iDate"') DO SET iDate=%%B 
04.
ECHO HKEY_CURRENT_USER\Control Panel\International\iDate=%iDate% 
05.
::~~~ Batchschnipsel auslesen eines Reg-Values mit REG.exe
Sollte lesbar sein.
In Deinem Fall wäre aber wohl sinnvoller, den ganzen "ControlSet"-Zweig mit "RegEdit /E" zu exportieren und da mit Find durchzupflügen.

Ich muss mich da leider jetzt bis Montag ausklinken, aber, wie geschrieben, Beispiele gibts hier.
Grüße
Biber
Bitte warten ..
Mitglied: schrecke
21.10.2005 um 13:40 Uhr
vielen Dank, das wird mir weiter helfen
Bitte warten ..
Mitglied: ketchup
21.10.2005 um 13:51 Uhr
hi!

1. heißt das tool "sc.exe" bzw. mein vorschlag "service.vbs"
2. kannst das tool auch unter w2k einsetzen (einfach hinkopieren)
3. kannst du das tool auch von einer zentralen stelle auf den anderen clients/servern durchführen

ich würde mir nicht den aufwand machen, dies per registry und batch-files umzusetzen, sondern ein fertiges tool (á la sc.exe) einsetzen.

jürgen
Bitte warten ..
Mitglied: schrecke
25.10.2005 um 11:17 Uhr
kann mir jemand was zu den Errorlevels sagen? Wie die funzen? Hab dazu nix gefunden. Ich muss per script n Dienst anschalten sollte dieser aber schon an sein, bzw aktiviert und gestartet kommt eine unschönen Fehlermeldung die ich gerne abfangen möchte. Und ich denk ma ich muss das mit diesen Errorlevels machen, oder?

thx euch
Bitte warten ..
Mitglied: 11078
25.10.2005 um 11:40 Uhr
Hallo,

lies mal hier nach: http://www.robvanderwoude.com/errorlevel.html


Du kannst auch erzwingen, dass Fehler nicht ausgegeben werden oder in eine Datei:


Ersteres: Befehl 2&gt;nul
Letzteres: Befehl 2&gt;&gt;fehler.txt


Gruß,
Tim
Bitte warten ..
Mitglied: schrecke
25.10.2005 um 12:36 Uhr
ok, danke erstmal. hab ich n bissl versucht, aber ni das richtige hinbekommen. Kann es sein das man beim Befehl net die Fehlermeldung ni unterdrücken kann? Die Zeilen sehen bei mir so aus:

sc config %Dienst1% start= auto >nul
net start %Dienst1% >nul

wenn ich mal davon ausgehe, das der Dienst bereits auf automatisch gestellt ist und schon gestartet ist würden 2 Fehlermeldungen kommen. Mit >nul lässte sich die Fehlermeldung bei sc unterdrücken, bei net jedoch nicht. Ne Idee?
Bitte warten ..
Mitglied: 11078
25.10.2005 um 13:15 Uhr
Hallo,

sc config %Dienst1% start= auto >nul
net start %Dienst1% >nul

Das hast Du nicht richtig übernommen; die "2" in meinem Beispiel muss da schon rein, denn die Fehlermeldungen kommen in der Shell aus einem anderen "Kanal" als die restlichen Dinge, die man mit print so ausgeben kann. Um alle fehler ins Nirvana zu schicken, lenkt man deshalb den zweiten Kanal auf nul, also:

sc config %Dienst1% start= auto 2>nul
net start %Dienst1% 2>nul

Aber wie gesagt: So werden die Fehler nur nicht ausgegeben, wenn es das gewesen sein sollte, was Dich stört. Die Fehler sind aber dennoch da!

Wenn Du Fehlerbehandlungsroutinen bauen willst, müsstest Du so etwas machen wie:

if %errorlevel% > 0 then...


Gruß,
Tim

P.S.: Warum wird dieser Thread im Firefox nicht mehr richtig angezeigt? Irgendein "böses" Zeichen oder falsches Tag in einem Beitrag?
Bitte warten ..
Mitglied: Biber
25.10.2005 um 13:21 Uhr
Och, schrecke,
das ist wieder was für mich

Habe ich mal ausufernd in einem meiner Batch-Tutorials beschrieben und ein bissi zu Errorlevels auch (http://www.administrator.de/Workshop_Batch_for_Runaways_-_Part_2_Ein_bi ...).
Aber wenn Du heute zeitig essen willst, die Kurzfassung:

Output wird auf 2 "Kanälen" geschrieben.
1= STDOUT = normale Meldungen
2= STDERR = Fehlermeldungen

Wenn du schreibst
anweisung > wasauchimmer
wird es immer interpretiert als
anweisung 1> wasauchimmer
Kanal 2 / STDERR wird nicht umgeleitet.

Beispiele für die net-use-Umleitung beider Kanäle habe ich in meinem Anmeldescript in diesem Bandwurmthread vorgeturnt: Automatische Verbindung bei wechselnder IP
Bsp: Net use * /d >nul 2>&1

HTH
Biber
[Edit] @tim... sorry, hat sich überschnitten - ich tippe so langsam
Zu Deiner Frage:
>P.S.: Warum wird dieser Thread im Firefox nicht mehr richtig angezeigt? Irgendein "böses" Zeichen oder falsches Tag in einem Beitrag?
Maximale Threadlänge überschritten??

@schrecke
Eins der schönen Errorlevel-Beispiele ist in der Windows-Hilfe versteckt unter "XCopy-Hinweise"
01.
xcopy %1 %2 /s /e  
02.
 
03.
if errorlevel 4 goto ZuwenigSpeicher  
04.
if errorlevel 2 goto Abbruch  
05.
if errorlevel 0 goto Ende  
06.
 
07.
:ZuwenigSpeicher  
08.
echo Nicht genügend Arbeitsspeicher zum Kopieren von Dateien oder  
09.
echo ungültige Laufwerksbezeichnung bzw. unzulässige Befehlszeilensyntax.  
10.
goto Ende  
11.
 
12.
:Abbruch  
13.
echo Sie haben zum Beenden des Kopiervorgangs STRG+C gedrückt.  
14.
goto Ende  
15.
:Ende 
[/Edit]
Bitte warten ..
Mitglied: schrecke
25.10.2005 um 14:11 Uhr
alter yo ihr seit genial. vielen Dank an euch alle. nu is my script fertig
Bitte warten ..
Mitglied: Biber
25.10.2005 um 14:29 Uhr
@schrecke
>nu is my script fertig
Ja, wo denn?? *Brilleputz*
Schönen Tag und Danke für diesen unterhaltsamen Thread!
Bitte warten ..
Mitglied: 11078
25.10.2005 um 19:11 Uhr
Hi!


Ja, wo denn?? *Brilleputz*

Auch *brilleputz*

Schönen Tag und Danke für diesen
unterhaltsamen Thread!

Ich schließ mich da an!


@Biber

@tim... sorry, hat sich
überschnitten - ich tippe so langsam

Du hast es sowieso besser erklärt


By-the-way: Ich hab vor einer Ewigkeit folgende Seite gefunden - ist eine ziemlich ausführliche Batch-Übersicht. Unser Biber braucht das zwar nicht mehr, aber bis er "Batch for Runaways - Part 87" als Tutorium geschrieben hat, werden Ungeübte wie ich auch dort mal vorbeischauen müssen...

http://www.robvanderwoude.com/batchfiles.html


In diesem Sinne &
viele Grüße,
Tim
Bitte warten ..
Mitglied: Biber
26.10.2005 um 17:22 Uhr
@schrecke
Wenn Sobald Du Dein Script postest und dort wenigstens drei Kommentarzeilen drin sind, dann stufe ich den gesamten Thread von "Beitrag" hoch in "Tutorial".

Grüße aus dem heute sonnigen Bremen

Biber, Half-Mod Batch & Shell
Bitte warten ..
Mitglied: schrecke
26.10.2005 um 18:01 Uhr
ok, werde ich morgen machen. Wenn i wieder auf Arbeit bin. Einfach das script rein kopieren. K - fein
Bitte warten ..
Mitglied: schrecke
27.10.2005 um 11:27 Uhr
So, also hier mal das fertige Script. Es ging wie gesagt darum für 2 unterschiedliche W-Lan-Progs, von denen sich die Dienste nicht einander ab konten den einen Dienst zu beenden und den Starty deaktiviert zu schalten und bei dem andern Dienst das Gegenteil. Zu Testzwecken ich hab ich es mit den Diensten Design (Themes) und DHCP gemacht.

@echo off

echo Halli Hallo,
echo.

:start
echo.
echo Bitte W-Lan ausweahlen.
echo.
echo G - Designs aus, dhcp an
echo A - dhcp aus, Designs an
echo.

set Dienst1= "Themes"
set Dienst2= "DHCP"

set /p userinp=Auswahl:
set userinp=%userinp:~0,1%
if "%userinp%"=="G" goto D1
if "%userinp%"=="g" goto D1
if "%userinp%"=="A" goto D2
if "%userinp%"=="a" goto D2
echo Ungueltige Eingabe
ping /n 2 localhost >nul
cls
goto start

:D1
echo.
echo Einen Moment bitte ...
echo.
echo.

sc config %Dienst1% start= disabled >nul
net stop %Dienst1% 2>nul 1>nul
if errorlevel 2 goto Fehler
echo %Dienst1% deaktiviert
echo %Dienst1% beendet
echo.

sc config %Dienst2% start= auto >nul
net start %Dienst2% 2>nul 1>nul
if errorlevel 2 goto Fehler
echo %Dienst2% aktiviert
echo %Dienst2% gestartet
echo.

goto end

:D2
echo.
echo Einen Moment bitte ...
echo:
echo.

sc config %Dienst2% start= disabled >nul
net stop %Dienst2% 2>nul 1>nul
if errorlevel 2 goto Fehler
echo %Dienst2% deaktiviert
echo %Dienst2% beendet
echo.

sc config %Dienst1% start= auto >nul
net start %Dienst1% 2>nul 1>nul
if errorlevel 2 goto Fehler
echo %Dienst1% aktiviert
echo %Dienst1% gestartet
echo.
goto end

:Fehler
echo.
echo Die gewaehlten W-Lan-Einstellungen sind bereits vorhanden.

:end
echo.
echo.
echo Job erledigt, viel Spass beim arbeiten.
echo.

:endfrage
echo.
echo ... oder doch eine falsche Eingabe gemacht?
echo.
echo N - Neustart
echo B - Beenden
echo.

set /p userinp=Auswahl:
set userinp=%userinp:~0,1%
if "%userinp%"=="N" goto restart
if "%userinp%"=="n" goto restart
if "%userinp%"=="B" goto close
if "%userinp%"=="b" goto close
echo Ungueltige Eingabe
ping /n 2 localhost >nul
cls
goto endfrage

:restart
cls
ping /n 1 localhost >nul
goto start

:close
echo.
echo Tschaui, viel Spass beim arbeiten.
ping /n 2 localhost >nul

:: sc - zur Verwaltung von Diensten
:: sc config DIENST start= ... - Starttyp der Dienste ändern
:: net start/stop - Dinesten anhalten/ starten/ ..., nicht verwechseln mit dem Starttyp

viel Spaß damit.

Bye und vielen Dank für alles
Bitte warten ..
Mitglied: Biber
27.10.2005 um 12:01 Uhr
Danke, schrecke,
ich häng das Ganze jetzt als "Tutorial" rein.

Anmerkung:
if "%userinp%"=="N" goto restart
if "%userinp%"=="n" goto restart
....
Kannst Du vereinfachen mit Parameter "/i" (Groß/Kleinschreibung egal)
if /i "%userinp%"=="n" goto restart

Schönen Tag
Biber
Bitte warten ..
Mitglied: schrecke
09.06.2006 um 17:01 Uhr
wenn du mich meinst würde ich dir empfehlen erstmal zu lesen was weiter oben steht.

Ja, ich hab ne Lösung, wie gesagt ... steht hier drin, paar Posts weiter oben
Bitte warten ..
Mitglied: Masterraven9
07.06.2007 um 20:16 Uhr
hy ich hätte gerne mit "sc \\servername dienst" einen dienst ber netzwerk gestartet doch leider kommt immer Zugriff verweigert der Server wo der Dienst gestartet werden soll ist ein WinXP Prof PC
Bitte warten ..
Neuester Wissensbeitrag
Festplatten, SSD, Raid

12TB written pro SSD in 2 Jahren mit RAID5 auf Hyper-VServer

Erfahrungsbericht von Lochkartenstanzer zum Thema Festplatten, SSD, Raid ...

Ähnliche Inhalte
Batch & Shell
Batch Script Editor - Programmvorstellung des Entwicklers (16)

Tipp von wowItsDoge zum Thema Batch & Shell ...

Windows Server
Batch Script bei Start ausführen (3)

Frage von KEFHVDI zum Thema Windows Server ...

Batch & Shell
Batch-Script für Lizenzen (3)

Frage von stoepsu77 zum Thema Batch & Shell ...

Batch & Shell
Batch-Script für die Messung der Netzwerkgeschwindigkeit (10)

Anleitung von Kraemer zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (34)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...