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
GELÖST

Abfrage auf comspec

Frage Entwicklung Batch & Shell

Mitglied: Spyeer

Spyeer (Level 1) - Jetzt verbinden

06.07.2009, aktualisiert 16:10 Uhr, 4261 Aufrufe, 10 Kommentare

Vieleicht wißt Ihr ja weiter!

Hallo,

habe eine Batchfile geschrieben die einen bestimmten Dienst automatisch/manuell aktivieret bzw. deaktiviert.

Mein File:

@echo off

:logon
echo.
echo LOGON
echo.
echo.
echo.
echo Dieses File wurde geschrieben um den VNC-Server zu starten und
echo um dessen Dienst zu AKTIVIEREN. Nur der berechtigte User kann und
echo darf diese Datei oeffnen !!!!
echo.
echo Start/Stop VNC Server
echo.
echo.

echo Aktion start/stop:

set /p Aktion=start:
IF /i %Aktion% == start net start vnc
echo.
echo.
echo Dienst gestartet
echo.

start /min "" %comspec% /C "ping -n 7 localhost & net stop vnc & exit"

set /p Aktion=stop:
IF /i %Aktion% == stop net stop vnc

cls

echo.
echo !!! Zeitueberschreitung - Dienst wurde automatisch beendet !!!
echo.
echo.

echo !!!!!!!!!!!!!!!!!!!!!! Dienst gestoppt !!!!!!!!!!!!!!!!!!!!!!!
echo.
echo.
sleep 5

exit


Mein Problem:

start /min "" %comspec% /C "ping -n 7 localhost & net stop vnc & exit"

möchte dass sobald der Ping abgelaufen ist (Fenster geschlossen) wieder in das Hauptfenster springen soll also von comspec in die eigentliche Routine. D.h.
wenn der Ping abgelaufen ist soll er im Hauptfenster:
echo.
echo !!! Zeitueberschreitung - Dienst wurde automatisch beendet !!!
echo.
echo.

echo !!!!!!!!!!!!!!!!!!!!!! Dienst gestoppt !!!!!!!!!!!!!!!!!!!!!!!
echo.
echo.
wiedergeben


Habe bisher einges bsp. goto sprung, schleife aussprobiert nichts gehte richtig.

Danke schon mal im voraus

Siegmar
Mitglied: 60730
06.07.2009 um 17:24 Uhr
Servus,

vorab - schau dir mal die Formatierungshilfe an - genauer Code.

An deiner Stelle würde ich das etwas anders schreiben.
Wobei mir nicht ganz klar ist, für was du das Ping haben willst * und das mit Net Start "nur" der Dienst gestartet wird und nicht die Startart auf aktiviert/deaktiviert gestellt wird.

Mit diesem zweizeiler startet / stoppt der VNC Dienst - je nachdem, ob er vorher gestartet / oder gestoppt war. (ohne Benutzer Interaktion)

01.
net start |find "vnc" && Net stop vnc || net start vnc 
02.
ping -n 7 localhost >nul
Gruß

  • in meinem Beispiel dient es dazu, die Ausgabe noch sehen zu können.
Bitte warten ..
Mitglied: 80220
06.07.2009 um 17:45 Uhr
Du könntest die Zeilen von TimoBeil etwas abgewandelt verwenden (ungetestet) und den Dreizeiler-Batch per call aufrufen:

01.
net start |find "vnc" && Net stop vnc & set /a E=2 || net start vnc & set /a E=3 
02.
ping -n 7 localhost >nul 
03.
exit /b %E%
Damit wird als Exitcode entweder 1 oder 2 übergeben, was über %errorlevel% vom aufrufenden Batch verarbeitet werden kann.
Davon abhängig kannst du dann den Bildschirm mit entsprechende Meldungen füllen, bis er vollgeschrieben ist.
Bitte warten ..
Mitglied: Spyeer
07.07.2009 um 09:14 Uhr
Das Programm an sich läuft einwandfrei. Nur möchte ich dass NACH dem Ping (2.Fenster) also nach

>start /min "" %comspec% /C "ping -n 7 localhost & net stop vnc & exit"

ins 1.Fenster zurückspringt und das hier anzeigen soll

>echo.
>echo !!! Zeitueberschreitung - Dienst wurde automatisch beendet !!!
>echo.
>echo.

Das Programm soll:
- manuelles (durch User Eingabe) Starten eines Dienstes
- manuelles (durch User Eingabe) Stoppen eines Dienstes
- wird KEIN Manuelles Stoppen bestätigt, soll das Programm innerhalb einer bestimmten Zeit den Dienst automatisch stoppen


Kurze history zum Programm:
In meiner Firma ist ein VNC Server auf einem Client installiert, der soll/darf nur wenn ein Mitarbeiter eine Eingabe macht den VNC starten/stoppen. Falls der Mitarbeiter vergißt ein stop zu setzen muß das Programm automatisch den VNC anhalten (nur Dienst anhalten nicht das Programm beenden).
Der Ping dient bei mir als Zähler der den Dienst nach einer Zeit automatisch beendet.

P.S. sorry für meine Formatierung ich versuche es in Zukunft etwas anders zu gestalten ;-}
Bitte warten ..
Mitglied: 60730
07.07.2009 um 09:52 Uhr
Servus,

du ganz im Ernst - das ist Augenwischerei.

Mit Boardmitteln und damit meine ich wirklich Werkzeuge die bei Winblows dabei sind....

Ist es vollkommen einfach von einem Rechner aus, die Dienste eines anderen zu steuern.

Also auch VNC an oder auszuknipsen - ohne dass das jemand "merkt" - (und wie das geht verrate ich nur per PN)

Von daher solltet Ihr euch ein Tool besorgen, das nur dann eine Steuerung zuläßt, wenn der User zustimmt.
Nur hab ich da keine Ahnung von - da ich einen kostenpflichtigen Viewer benutze

Gruß
Bitte warten ..
Mitglied: Spyeer
07.07.2009 um 11:11 Uhr
ich weis dass es einfacher geht. Ich habe es vorgeschrieben bekommen dass es so wie ich es beschrieben habe sein soll.
Vielleicht hast du mich nicht ganz verstanden, das Prog soll auf einer Anlage laufen die nur wenn ein Mitarbeiter VOR Ort ist connecten soll. Der Client ist am A*** der Welt.
Hast du keine Idee ?? Ich benötige keine andere Software dazu.
Brauche nur den "Sprung" von einem Fenster ins andere.
Bitte warten ..
Mitglied: 60730
07.07.2009 um 11:49 Uhr
Zitat von Spyeer:
ich weis dass es einfacher geht. Ich habe es vorgeschrieben bekommen
dass es so wie ich es beschrieben habe sein soll.

Und ich mache nie das, was man mir vorschreibt, sondern hab (meistens) eigene Ideen und das ich die habe, dafür werde ich bezahlt

Vielleicht hast du mich nicht ganz verstanden,
*lol* ich glaub das können wir beide über den anderen schreiben
echo !!! Zeitueberschreitung - Dienst wurde automatisch beendet !!!

So ganz klar, was du mit dieser "Vorgekaukelten Meldung erreichen willst - wird mir das immer noch nicht..

das Prog soll auf einer Anlage laufen die nur wenn ein Mitarbeiter VOR Ort ist > connecten soll. Der Client ist am A* der Welt.

Dafür kann doch der A
* nichts

Hast du keine Idee ??
Der Tag, an dem mir die Ideen ausgehen, ist der Tag, wo ich mein Eigenheim 2 Meter unterirdisch beziehe

Also wenn einer Vor Ort ist - ins Loginscript schreiben, und das stoppen per At um 2.00 nachts?

Ich benötige keine andere Software dazu.
? ja "brauchen" nicht, aber "sinnvoller" - obwohl wie gesagt - ich geb mir Mühe den Sinn zu verstehen, aber offensichtlich ist meine innere Uhr noch auf Montag gestellt...

Brauche nur den "Sprung" von einem Fenster ins andere.

  • Dann mach zur Not zwei Bätche, oder starte nicht comspec, sondern ping, nicht per start, sondern per call.

  • call ping.exe -n 7 localhost
  • net stop vnc

Btw: ich hab dein Script nicht ausprobiert - weil ich den Sinn immer noch nicht verstanden habe - und mir das "ausprobieren" - daher nix bringt.

Gruß
Bitte warten ..
Mitglied: 80220
07.07.2009 um 11:56 Uhr
@Spyeer

Sag mal, liest du eigentlich überhaupt, was man dir schreibt?
Bitte warten ..
Mitglied: Spyeer
07.07.2009 um 12:11 Uhr
@80220

hab ich gelesen bin noch dabei deine Lösung umzusetzen

@TimoBeil

deine Idee hatte ich schon sieht aber schrecklich aus.;-}

es gibt 2 Möglichkeiten den Dienst anzuhalten:
1. der MA gibt manuell stop ein
oder parallel dazu
2. durch den ping (14400 entspricht 4 Std) soll das Prog automatisch den Dienst anhalten. Kann ja sein der MA "vergisst" einmal den Dienst manuell zu stoppen.
Bitte warten ..
Mitglied: Spyeer
07.07.2009 um 13:19 Uhr
also geht nicht der Befehl:
net start |find "vnc" && Net stop vnc & set /a E=2 || net start vnc & set /a E=3
ping -n 7 localhost >nul


E=2
und
E=3

habe ich über eine if schleife gesetzt. also

IF E=2 goto auto
IF E=3 goto manu

Ich glaube das der Befehl was bringt nur ich kann ihn nicht richtig umsetzen.
Bitte warten ..
Mitglied: 80220
07.07.2009 um 13:27 Uhr
Ich glaube, dass du nicht lesen kannst.

Und tschüss....
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(3)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
C und C++
gelöst IF Abfrage funktioniert nicht mehr (2)

Frage von pablovic zum Thema C und C ...

Datenbanken
gelöst SQL-Abfrage - DISTINCT - letztes Datum (3)

Frage von emeriks zum Thema Datenbanken ...

Datenbanken
gelöst Row Number bei einer Abfrage sinnvoll einsetzen (1)

Frage von Aximand zum Thema Datenbanken ...

Batch & Shell
gelöst Batch Abfrage Vergleiche mit Variable goto (4)

Frage von Zunaras zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
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 ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...