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 Wert in Registry per Batch ändern den User über Abfrage eingibt

Mitglied: cbli

cbli (Level 1) - Jetzt verbinden

21.09.2007, aktualisiert 24.09.2007, 10438 Aufrufe, 10 Kommentare

Hallo Alle

Ich brauche noch einen letzten Schubs damit meine Batch funktioniert.
Ich möchte einen Registry Wert (Win XP) per Batch ändern.
Dieser Wert soll vorher über die Batch (Usereingabe) abgefragt werden und danach an die reg datei als dword wert übergeben werden.
Die Usereingabe per Batch funktioniert schon,wie ich per Batch die Registry ändern kann weiss ich auch, ich hab nur keinen Plan wie ich den Wert den der User eingibt an die reg datei übergeben kann

Beispiel:

Inhalt der Reg Datei:


REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
"DisablePagingExecutive"=dword:00000001



Ich möchte nun erreichen,daß der dword Wert durch den Wert den der User bei der Abfrage eingibt ersetzt wird und danach die Reg Datei in die Registry geschrieben wird.
Wie erreiche ich eine solche Übergabe ?


Vielen Dank für die Hilfe

Gruß
Claus
Mitglied: schregi82
21.09.2007 um 14:18 Uhr
du legst dir halt die möglichen werte unter wert1 - 3.reg ab und machst das über eine abfrage, früher choice:

01.
echo off 
02.
:start 
03.
set /P X= (1) Wert eins, (2) Wert zwei, (3) Wert 3 
04.
if /I "%X%"=="1" goto :1 
05.
if /I "%X%"=="2" goto :2 
06.
if /I "%X%"=="3" goto :3 
07.
  
08.
:1 
09.
regedit /s LW:\Pfad\Wert1.reg 
10.
goto weiter  
11.
 
12.
:2 
13.
regedit /s LW:\Pfad\Wert2.reg 
14.
goto weiter  
15.
  
16.
:3 
17.
regedit /s LW:\Pfad\Wert3.reg 
18.
goto weiter  
19.
  
20.
:weiter 

habs zwar nicht getestet, müsste aber funktionieren
eine direkte eingabe des wertes wird meiner meinung nicht funktionieren.
Bitte warten ..
Mitglied: Logan000
21.09.2007 um 14:21 Uhr
Ich würdes das als VBS realisieren.
01.
Set WshShell=WScript.CreateObject("WScript.Shell") 
02.
 
03.
Const RegKey = "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\DisablePagingExecutive" 
04.
 
05.
value = inputbox("Bitte Wert eingaben","DisablePagingExecutive") ' Wert abfragen 
06.
 
07.
' In RegSchreiben 
08.
WshShell.RegWrite RegKey , value , "REG_DWORD"
Bitte warten ..
Mitglied: cbli
21.09.2007 um 14:44 Uhr

du legst dir halt die möglichen werte
unter wert1 - 3.reg ab und machst das
über eine abfrage, früher choice:

echo off
:start
set /P X= (1) Wert eins, (2) Wert zwei, (3)
Wert 3
if /I "%X%"=="1" goto
:1
if /I "%X%"=="2" goto
:2
if /I "%X%"=="3" goto
:3

:1
regedit /s LW:\Pfad\Wert1.reg
goto weiter

:2
regedit /s LW:\Pfad\Wert2.reg
goto weiter

:3
regedit /s LW:\Pfad\Wert3.reg
goto weiter

:weiter

habs zwar nicht getestet, müsste aber
funktionieren
eine direkte eingabe des wertes wird meiner
meinung nicht funktionieren.


Danke
Das wäre natürlich eine Möglichkeit.
Bitte warten ..
Mitglied: cbli
21.09.2007 um 14:47 Uhr
Ich würdes das als VBS realisieren.
01.
> Set 
02.
> WshShell=WScript.CreateObject("WScript.Shell") 
03.
>  
04.
> Const RegKey = 
05.
> "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session 
06.
> Manager\Memory 
07.
> Management\DisablePagingExecutive" 
08.
>  
09.
> value = inputbox("Bitte Wert 
10.
> eingaben","DisablePagingExecutive") 
11.
> ' Wert abfragen 
12.
>  
13.
> ' In RegSchreiben 
14.
> WshShell.RegWrite RegKey , value , 
15.
> "REG_DWORD" 
16.
> 

Danke erstmal.
Deine Lösung würde mir sehr gefallen, leider hats nach 20 min probieren
nicht geklappt.
Er ändert den Wert nicht ab über das Script.
Wäre super wenn du es nochmal überprüfen könntest oder ich bin einfach auch nur zu doof,kann auch sein.

Gruß´
Claus
Bitte warten ..
Mitglied: schregi82
21.09.2007 um 15:37 Uhr
Ich will logan ja nicht die show stellen - aber bei mir funkts.

hast du auch das script in eine separate datei eingefügt ? zb. registry.vbs ?


INHALT REGISTRY.VBS

01.
> Set 
02.
> WshShell=WScript.CreateObject("WScript.Shell") 
03.
>  
04.
> Const RegKey = 
05.
> "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session 
06.
> Manager\Memory 
07.
> Management\DisablePagingExecutive" 
08.
>  
09.
> value = inputbox("Bitte Wert 
10.
> eingaben","DisablePagingExecutive") 
11.
> ' Wert abfragen 
12.
>  
13.
> ' In RegSchreiben 
14.
> WshShell.RegWrite RegKey , value , 
15.
> "REG_DWORD"

INHALT DEIN BATCHFILE .BAT

01.
  
02.
..... 
03.
 
04.
echo off 
05.
registry.vbs  
06.
  
07.
....


wobei die beiden dateien nun im selben ordner sein müssen.
batch und vbs verträgt sich nicht wirklich in einer datei
Bitte warten ..
Mitglied: cbli
21.09.2007 um 17:03 Uhr

Ich will logan ja nicht die show stellen
- aber bei mir funkts.


Bei mir jetzt auch,hatte in meiner Dämlichkeit einen Rechtschreibfehler übersehen.
Interessant wäre noch ob man den Bereich der zulässigen Werte irgendwie einschränken könnte.
Also z.B

nur Zahlen zulässig
oder nur Zahlen im Bereich von x bis y
oder nur Text
oder auch nur YES or NO

Ansonsten nochmals vielen Dank für eure Hilfe

Gruß
Claus
Bitte warten ..
Mitglied: miniversum
23.09.2007 um 14:12 Uhr
Interessant wäre noch ob man den Bereich der zulässigen Werte irgendwie einschränken könnte.
Also z.B

nur Zahlen zulässig
oder nur Zahlen im Bereich von x bis y
oder nur Text
oder auch nur YES or NO

Klar geht das. Ersetze/Ergänze das:
value = inputbox("Bitte Wert eingaben","DisablePagingExecutive") ' Wert abfragen
durch:
'nur Zahlen zulässig
value = inputbox("Bitte Wert eingaben","DisablePagingExecutive") ' Wert abfragen
if isnumeric(value) = false then
value = 0
end if

'nur Zahlen im Bereich von x bis y
value = inputbox("Bitte Wert eingaben","DisablePagingExecutive") ' Wert abfragen
if isnumeric(value) = true then
if value <= x and value >= y then
value = 0
end if
end if

'nur Text
value = inputbox("Bitte Wert eingaben","DisablePagingExecutive") ' Wert abfragen
if isnumeric(value) = true then
value = "War ne Zahl"
end if

'nur YES or NO
value = msgbox("Bitte Wert eingaben",vbyesno) ' Wert abfragen
if value = vbyes then
value = 1
else
value = 0
end if

miniversum
Bitte warten ..
Mitglied: cbli
24.09.2007 um 15:44 Uhr
> 'nur Zahlen zulässig
> value = inputbox("Bitte Wert
eingaben","DisablePagingExecutive")
' Wert abfragen
> if isnumeric(value) = false then
> value = 0
> end if


Habe jetzt folgendes Script gebastelt, welches auch funktioniert bis auf 1 Kleinigkeit


Set WshShell=WScript.CreateObject("WScript.Shell")

Const RegKey = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AlwaysUnloadDll"

value = inputbox("Bitte 1 für Aktivieren oder 0 für Deaktivieren eingeben","Dll´s immer aus dem Speicher entladen") ' Wert abfragen
if isnumeric(value) = false then
value = 3
end if
if value = 1 then
WshShell.RegWrite RegKey , value , "REG_DWORD"
Positiv = msgbox("Die Funktion wurde aktiviert")
else
if value = 0 then
WshShell.RegWrite RegKey , value , "REG_DWORD"
Negativ = msgbox("Die Funktion wurde deaktiviert")
else
Fehler = msgbox ("Bitte gültigen Wert eingeben")
end if
end if


Wenn ich bei der Inputbox auf abbrechen klicke deaktiviert er die Funktion und ich bekomme auch das entsprechende
Infofenster eingeblendet.
Wie kann ich das unterbinden ?
Klicke ich auf ok, bekomme ich die Fehler msgbox.
Hat das was mit errorlevel zu tun ?

Vielen Dank

Gruß
Claus

PS: Ich habe seither mit Batches gearbeitet und versuche mich gerade mit VBS,bin also noch absoluter Neuling.
Bitte warten ..
Mitglied: Logan000
24.09.2007 um 16:00 Uhr
Wenn ich bei der Inputbox auf abbrechen klicke deaktiviert er die Funktion und ich
bekomme auch das entsprechende Infofenster eingeblendet.
Wie kann ich das unterbinden ?

Gibst du nichts ein (Abbrechen) dann ist value keine zahl.
durch isnumeric(value) wird value in 0 umgewandelt.

Prüf vorher auf <>""

01.
value = inputbox("Bitte 1 für Aktivieren oder 0 für Deaktivieren eingeben","Dll´s immer aus dem Speicher entladen") ' Wert abfragen 
02.
If value<>"" Then 
03.
    ......  
04.
end if 
Bitte warten ..
Mitglied: cbli
24.09.2007 um 16:57 Uhr
Prüf vorher auf <>""

<code>
value = inputbox("Bitte 1 für
Aktivieren oder 0 für Deaktivieren
eingeben","Dll´s immer aus
dem Speicher entladen") ' Wert
abfragen
If value<>"" Then
......
end if

So hats schließlich funktioniert

If value="" then
abbrechen = msgbox ("Das Script wird jetzt beendet")
WScript.Quit
else
end if

If value<>"" Then

War das korrekt so und hab ich um 4 Ecken gedacht ?
Hat so nicht funktioniert oder gibts da noch ne Lösung ?

Vielen Dank für deine Hilfe.

Gruß
Claus
Bitte warten ..
Ähnliche Inhalte
Windows Server
SCCM2012 Abfrage eines Registry Wertes
gelöst Frage von busteronWindows Server5 Kommentare

Hallo an die Gemeinschaft, ich hänge momentan an ein Problem wo ich gerade nicht weiter weiß. Weiß jemand ob ...

Windows Server

Terminalserver user können Registry ändern. Wie kritisch ist das?

gelöst Frage von LaefissWindows Server8 Kommentare

Guten Tag zusammen, nach einer ausführlichen Suche in den handelsüblichen Suchmaschinen fehlt mir leider immer noch eine Antwort. (u.a. ...

Batch & Shell

Wert in .xml per Batch ändern

Frage von KingPickBatch & Shell3 Kommentare

Hallo an alle, ich stehe leider seit kurzem vor einem "kleinen" Problem. Zuerst: Ja ich weiß so ein ähnliches ...

Batch & Shell

Registry per Batch abfragen und INI Einträge hinzufügen bzw. ändern

gelöst Frage von kampenBatch & Shell18 Kommentare

Hallo, ich benötige Eure Hilfe da mir die Kenntnisse für das Schreiben einer so anspruchsvollen Aufgabe fehlen! Die Batch ...

Neue Wissensbeiträge
Apple

Apple aktualisiert MacBook Pro, mit bis zu sechs Kernen

Information von Vision2015 vor 2 TagenApple

Jawohlchen das Warten hat sich gelohnt :-) Apple aktualisiert MacBook Pro Frank

Verschlüsselung & Zertifikate

In-place Upgrade verschlüsselter Windows-Systeme mittels reflectdrivers

Tipp von DerWoWusste vor 3 TagenVerschlüsselung & Zertifikate1 Kommentar

Hinter diesem sperrigen Titel verbirgt sich die Info, dass offenbar seit Win10 v1607 im Windows-Setup (setup.exe der CD/des USB-Sticks) ...

Instant Messaging
Ejabberd auf ubuntu
Anleitung von horstvogel vor 4 TagenInstant Messaging

Anliegend erstelle ich eine Anleitung für die Installation eines ejabberd auf einem Ubuntu Server. Die Anleitung ist derzeit noch ...

Windows Server

Fehler in MMC "Zertifizierungsstelle" - Hieroglyphen

Tipp von emeriks vor 4 TagenWindows Server2 Kommentare

Hi, nichts weltbewegendes, nur als Info für Euch. Bin eben drüber gestolpert: Setup 1x Windows Server 2016 Datacenter Core ...

Heiß diskutierte Inhalte
Microsoft
Dringend: Nach neustart kein zugriff mehr per RDP möglich - vermutlich wegen gelöschter SID in AD
Frage von sven784230Microsoft20 Kommentare

Hallo zusammen, gerade hat ein Server 2012 (terminalserver + Active directory) einen geplanten Neustart durchgeführt, wenn ich mich jetzt ...

Hardware
Alte Hardware verkaufen
Frage von Lebowski23Hardware19 Kommentare

Hallo, durch größere Umbauten haben einiges an Hardware "rumliegen", die wir vielleicht noch verkaufen wollen. Es sind so ca. ...

Exchange Server
Exchange 2013 - Update schlägt fehlt
Frage von chb1982Exchange Server18 Kommentare

Hallo zusammen, kann sich jemand einen Reim auf die unten stehenden Fehlermeldung machen? Sie tritt auf beim Update von ...

Windows Server
Active Directory Probleme DC sieht sich nicht selbst als DC DNS Fehler?
Frage von Cisco7971Windows Server12 Kommentare

Moin zusammen, Angefangen hat die Suche damit, dass der Anmeldedienst immer angehalten wird, bei einem Neustart des DC. nach ...