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

Windows 7 Batch (CMD) für alle Benutzer

Frage Entwicklung Batch & Shell

Mitglied: Waldiman

Waldiman (Level 1) - Jetzt verbinden

17.05.2014, aktualisiert 11:08 Uhr, 4966 Aufrufe, 10 Kommentare

Hallo...

habe folgendes Problem.
Ich habe 2 CMD Scripte, die bei Bedarf den "MYSQL-Dienst" starten oder stoppen (script 1 Start MySQS, script 2 Stopp MySQL).
In Windows XP funktionierten beide einwandfrei, bei allen Anwendern.
Windows 7 Ultimate... laufen die aber nur, wenn ich sie als "Administrator" ausführe!
Habe nun schon versucht, die nach C:/Windows bzw. C/Windows/System zu Kopieren, und nur als Verknüpfung auf jeden Desktop. Geht aber auch nicht!

Wie mache ich es, dass auch PC-Benutzer ohne Administrative-Rechte die Verknüpfung nutzen können?
Mitglied: Pjordorf
17.05.2014 um 13:34 Uhr
Hallo,

Zitat von Waldiman:
Ich habe 2 CMD Scripte, die bei Bedarf den "MYSQL-Dienst" starten oder stoppen (script 1 Start MySQS, script 2 Stopp MySQL).
Das nennst du ein Problem?

In Windows XP funktionierten beide einwandfrei, bei allen Anwendern.
Jaja, vor langer Zeit war alles anders und besser

Windows 7 Ultimate... laufen die aber nur, wenn ich sie als "Administrator" ausführe!
Si.

Habe nun schon versucht, die nach C:/Windows bzw. C/Windows/System zu Kopieren, und nur als Verknüpfung auf jeden Desktop.
Warum? Was soll der Blödsinn?

Geht aber auch nicht!
Si.

Wie mache ich es, dass auch PC-Benutzer ohne Administrative-Rechte die Verknüpfung nutzen können?
Da Windows 7 und das Sicheherheitskonzept seit Vista für dich Neuland zu sein scheint, lies dich mal in der Benutzerkontensteuerung (UAC) ein. Die sollte eingeschaltet sein und auf der Standardstufe stehen. Ein Administrator ist nicht mehr ein Vollwertiger Administrator, dazu bedarf es die Erhöhten Rechte (Elevated Rights). die sich anfordern lassen, sei es durch das Zauberwort "Setup.exe" oder Rechte Maustaste und "Als Administrator ausführen" um nur zwei zu nennen.

Und wenn du möchtest das ein "Normaler" eingeschränkter Benutzer auch Dienste Starten oder beenden sollen darf, dann musst du diesen Benutzern auch die Rechte dazu geben damit diese Dienste Starten / Beenden dürfen.

Gruß,
Peter
Bitte warten ..
Mitglied: rubberman
17.05.2014 um 13:52 Uhr
Hallo Waldiman,

über die Aufgabenplanung lässt sich das ggf. schon abwickeln. Sinnvollerweise sollte man den Inhalt deiner Batchdateien aber in die geplanten Tasks mit einarbeiten, damit niemand auf die Idee kommt den Code der Dateien zu ändern und die Sache zu missbrauchen. Wenn du also den (vemutlichen) Einzeiler in den Batchdateien hier mal posten würdest, würde ich dir auch fix ein Script schreiben, dass dir die entsprechenden Tasks anlegt.

Grüße
rubberman
Bitte warten ..
Mitglied: Waldiman
17.05.2014, aktualisiert um 14:12 Uhr
Hallo

Ich will nicht das eingeschränkte Nutzer "allgemein" Dienste starten oder beenden dürfen!
Nur diesen einen Dienst - (script sollten sie dürfen)!

Oder bringt es mich weiter, wenn ich einfach die Benutzerwerwaltung (Benutzerkontensteuerung) lahm lege??
Bitte warten ..
Mitglied: rubberman
17.05.2014 um 14:26 Uhr
Oder bringt es mich weiter, wenn ich einfach die Benutzerwerwaltung (Benutzerkontensteuerung) lahm lege??


Magst du meine Frage von oben beantworten, dann ist dir möglicherweise kurzfristig zu helfen.

Grüße
rubberman
Bitte warten ..
Mitglied: Pjordorf
17.05.2014, aktualisiert um 14:49 Uhr
Hallo,

Zitat von Waldiman:
Ich will nicht das eingeschränkte Nutzer "allgemein" Dienste starten oder beenden dürfen!
OK

Nur diesen einen Dienst - (script sollten sie dürfen)!
Dann baue dir einen Task (geplante Aufgaben) der eben dein MySQL Startet (net start mysql) oder Stoppt (net stop mysql) mit allerhöchsten privilegien und lege einen Link dazu auf den Desktop bes benutzers mit eingeschränkten Rechten. Dies dann klicken lassen (notfalls erlauben das er diese Aufgaben ausführen darf) und gut ist.

Oder bringt es mich weiter, wenn ich einfach die Benutzerwerwaltung (Benutzerkontensteuerung) lahm lege??
Wie du deine benutzerkontensteuerung einstellst bleibt selbstverständlich dir überlassen. Es ist ja wohl dein Rechner, deine Software usw. Ob dir angeraten werden kann die UAC auszuschalten? NEIN.

Zum Anfangen sollte das erst mal reichen. Dein Internet ist voll davon. Frage deine Suchmaschine....
http://windows.microsoft.com/de-de/windows7/products/features/user-acco ...
http://windows.microsoft.com/de-de/windows/turn-user-account-control-on ...
http://de.wikipedia.org/wiki/Benutzerkontensteuerung
http://www.edbott.com/weblog/2007/02/what-triggers-user-account-control ...

Es ist ja nicht so das die UAC erst seit Gestern daherkommt. Wurde mit VISTA erstmals präsentiert und seit dem immer weiter ausgebaut / geändert / verschlimmbessert / verbessert....

Gruß,
Peter
Bitte warten ..
Mitglied: DerWoWusste
17.05.2014 um 16:26 Uhr
Mal nebenher angemerkt: auch unter xp konnten normale Nutzer Dein Skript nicht nutzen - vermutlich hattest Du sie als Hauptbenutzer eingerichtet, die können unter xp Dienste starten, schwache Standardnutzer nicht.

Mittels der eingebauten sc.exe kannst Du die Rechte auf den Dienst setzen (sc sdset...), so das jeder ihn neu starten darf. Ebenfalls geht es über subinacl.exe (separater Download von Microsoft)
Beides vermittelt auf http://stackoverflow.com/questions/4436558/start-stop-a-windows-service ... - hier zitiert für subinacl und den Dienst bst:
1.Login as an administrator.
2.Download subinacl.exe from Microsoft: http://www.microsoft.com/en-us/download/details.aspx?id=23510
3.Grant permissions to the regular user account to manage the BST services. (subinacl.exe is in C:\Program Files (x86)\Windows Resource Kits\Tools\).
4.cd C:\Program Files (x86)\Windows Resource Kits\Tools\
subinacl /SERVICE \\MachineName\bst /GRANT=domainname.com\username=F or
subinacl /SERVICE \\MachineName\bst /GRANT=username=F
5.Logout and log back in as the user. They should now be able to launch the BST service.
Bitte warten ..
Mitglied: Waldiman
18.05.2014, aktualisiert um 13:38 Uhr
Hallo rubberman...
hier die scripte!
@echo off
mode con cols=100 lines=25
color 3f
echo.
echo.
echo
echo
* Starte Dienst MySQL... *
echo

echo.
echo please wait.......
sc start "MySQL"
echo.
echo MySQL Server erfolgreich gestartet.
echo.
echo.
echo.
PAUSE
@echo off
mode con cols=100 lines=25
color 3f
echo.
echo.
echo
echo
* STOP Dienst MySQL... *
echo

echo.
echo please wait......
echo.
sc stop "MySQL"
echo.
echo MySQL Server erfolgreich beendet.
echo.
echo.
echo.
PAUSE
@mitglied: DerWoWusst
Unter XP geht es... nur müssen dort die Scripte im "Path" liegen... das heist C:/Windows oder C:/Windows/System
Bitte warten ..
Mitglied: DerWoWusste
18.05.2014 um 14:07 Uhr
Unter XP geht es
Ja, wie beschrieben: als Hauptbenutzer. Schwache Nutzer können keine Dienste neu starten.
Bitte warten ..
Mitglied: rubberman
18.05.2014, aktualisiert um 20:38 Uhr
Ich denke, @DerWoWusste hat dir exakt beschrieben was du tun solltest. Falls dich der UAC Prompt stört (und damit meine ich keine anderen User) funktioniert das auch mit der Idee die ich im Hinterkopf hatte.

Führe folgenden Batchcode einmalig als Administrator aus:
01.
@echo off &setlocal 
02.
cd /d "%~dp0" 
03.
for /f "tokens=2 delims=:" %%i in ('chcp') do set /a oemcp=%%~ni 
04.
>nul chcp 1252 
05.
set "xmlfile=%temp%\MYSQL.xml" 
06.
set "cmmnd=%SystemRoot%\System32\cmd.exe" 
07.
 
08.
set "descr1=MYSQL Start" 
09.
set "arg1=/c "%SystemRoot%\System32\sc.exe start MySQL"" 
10.
set "taskname1=MYSQL_Start" 
11.
 
12.
set "descr2=MYSQL Stop" 
13.
set "arg2=/c "%SystemRoot%\System32\sc.exe stop MySQL"" 
14.
set "taskname2=MYSQL_Stop" 
15.
 
16.
set "line_01=<?xml version="1.0" encoding="UTF-16"?>" 
17.
set "line_02=<Task version="1.3" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">" 
18.
set "line_03=  <RegistrationInfo>" 
19.
set "line_04=    <Author>rubberman @ administrator.de</Author>" 
20.
set "line_05=    <Description>%descr1%</Description>" 
21.
set "line_06=  </RegistrationInfo>" 
22.
set "line_07=  <Triggers />" 
23.
set "line_08=  <Principals>" 
24.
set "line_09=    <Principal id="Author">" 
25.
set "line_10=      <UserId>%userdomain%\%username%</UserId>" 
26.
set "line_11=      <RunLevel>HighestAvailable</RunLevel>" 
27.
set "line_12=    </Principal>" 
28.
set "line_13=  </Principals>" 
29.
set "line_14=  <Settings>" 
30.
set "line_15=    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>" 
31.
set "line_16=    <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>" 
32.
set "line_17=    <StopIfGoingOnBatteries>false</StopIfGoingOnBatteries>" 
33.
set "line_18=    <AllowHardTerminate>true</AllowHardTerminate>" 
34.
set "line_19=    <StartWhenAvailable>false</StartWhenAvailable>" 
35.
set "line_20=    <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>" 
36.
set "line_21=    <IdleSettings>" 
37.
set "line_22=      <StopOnIdleEnd>false</StopOnIdleEnd>" 
38.
set "line_23=      <RestartOnIdle>false</RestartOnIdle>" 
39.
set "line_24=    </IdleSettings>" 
40.
set "line_25=    <AllowStartOnDemand>true</AllowStartOnDemand>" 
41.
set "line_26=    <Enabled>true</Enabled>" 
42.
set "line_27=    <Hidden>true</Hidden>" 
43.
set "line_28=    <RunOnlyIfIdle>false</RunOnlyIfIdle>" 
44.
set "line_29=    <WakeToRun>false</WakeToRun>" 
45.
set "line_30=    <ExecutionTimeLimit>P3D</ExecutionTimeLimit>" 
46.
set "line_31=    <Priority>5</Priority>" 
47.
set "line_32=  </Settings>" 
48.
set "line_33=  <Actions Context="Author">" 
49.
set "line_34=    <Exec>" 
50.
set "line_35=      <Command>%cmmnd%</Command>" 
51.
set "line_36=      <Arguments>%arg1%</Arguments>" 
52.
set "line_37=      <WorkingDirectory>%SystemRoot%\System23</WorkingDirectory>" 
53.
set "line_38=    </Exec>" 
54.
set "line_39=  </Actions>" 
55.
set "line_40=</Task>" 
56.
<nul >"%xmlfile%" set /p "=ÿþ" 
57.
>>"%xmlfile%" cmd /u /q /c "for /f "tokens=1* delims==" %%i in ('set line_') do echo %%j" 
58.
>nul chcp %oemcp% 
59.
schtasks /create /xml "%xmlfile%" /tn "%taskname1%" /f 
60.
 
61.
>nul chcp 1252 
62.
set "line_05=    <Description>%descr2%</Description>" 
63.
set "line_36=      <Arguments>%arg2%</Arguments>" 
64.
<nul >"%xmlfile%" set /p "=ÿþ" 
65.
>>"%xmlfile%" cmd /u /q /c "for /f "tokens=1* delims==" %%i in ('set line_') do echo %%j" 
66.
>nul chcp %oemcp% 
67.
schtasks /create /xml "%xmlfile%" /tn "%taskname2%" /f 
68.
 
69.
del "%xmlfile%" 
70.
pause
Nun kannst du mit den Kommandozeilen
schtasks /run /tn "MYSQL_Start" /i
bzw.
schtasks /run /tn "MYSQL_Stop" /i
den Dienst starten bzw. stoppen.

Aber, wie gesagt, sollte das so nur für deinen Account funktionieren. Sobald du den SYSTEM Account nutzen willst ...
set "line_10=      <UserId>S-1-5-18</UserId>"
... brauchst du schon wieder Adminrechte für das Starten per SCHTASKS.


Grüße
rubberman
Bitte warten ..
Mitglied: SaschaRD
20.05.2014 um 11:41 Uhr
Hallo,

wenn dich die UAC blockiert, kannst Du folgendes in die Batch einfügen:
01.
set __compat_layer=runasinvoker 
02.
sc start "MySQL" 
03.
set __compat_layer=
Gruß, Sascha
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Sicherheits-Tools
gelöst 2 faktor authentifizierung windows domäne nur bestimmte benutzer (7)

Frage von kal10bach zum Thema Sicherheits-Tools ...

Windows Server
Windows Server 2012 R2 Benutzerkonto für Zugriff auf AD Benutzer (2)

Frage von JulianOhm zum Thema Windows Server ...

Batch & Shell
CMD Verschlüsslung ( Batch ) (11)

Frage von clragon zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (14)

Frage von liquidbase zum Thema Windows Update ...