Kann ich Registry Einträge verändern?
Michael S.
- sonstiges
0 uepselon0 Zapp0 H-P Ortner
Hi,
Ich habe da eine Frage. Und zwar muss ich lokal auf einem Rechner registry Einträge verändern.
Das ganze soll so funktionieren das ich ein Auswahlmenü habe dort etwas auswähle und dann auf senden klicke.
Tja und dann muss halt ein Eintrag in der Registry mithilfe von regedit.exe und ein paar parametern geändert werden.
Ist dies irgendwie möglich? wenn ja wie bzw mit was?
Gruss Michael
Hallo,
Ich habe da eine Frage. Und zwar muss ich lokal auf einem Rechner registry Einträge verändern.
Das ganze soll so funktionieren das ich ein Auswahlmenü habe dort etwas auswähle und dann auf senden klicke.
Tja und dann muss halt ein Eintrag in der Registry mithilfe von regedit.exe und ein paar parametern geändert werden.
Ist dies irgendwie möglich? wenn ja wie bzw mit was?
Oh ja, aber nur mit einer Serverseitigen Sprache.
Du kannst einem dieser deine Werte mitteilen und über Objekte
etwas in die Registry schreiben. Mit regedit.exe und Paramtern gehts nicht.
Falls du versuchen willst die Registry eines Rechners ohne Serverseitiges System zu ändern, kannst du das getrost vergessen.
Gruß
ueps
Hallo Michael,
Tja und dann muss halt ein Eintrag in der Registry mithilfe von regedit.exe und ein paar parametern geändert werden.
Ist dies irgendwie möglich? wenn ja wie bzw mit was?
Das würde ich mit VBScript machen:
<script language="VBScript">
function RunRegedit(Importdatei)
CreateObject("WScript.Shell").run """regedit.exe """ & Importdatei
end function
</script>
Die Funktion RunRegedit() könntest du dann über Javascript aufrufen. Als Parameter müßtest du ihr den Pfad der Importdatei mitgeben, also z.B. RunRegedit("c:\test\beispiel.reg");
Grüße, Stefan
Hallo Michael!
Ich habe da eine Frage. Und zwar muss ich lokal auf einem Rechner registry Einträge verändern.
Das ganze soll so funktionieren das ich ein Auswahlmenü habe dort etwas auswähle und dann auf senden klicke.
Tja und dann muss halt ein Eintrag in der Registry mithilfe von regedit.exe und ein paar parametern geändert werden.
Da gibt es aus meiner Sicht mehrere Möglichkeiten
1. Direkt auf die *.reg Datei linken
Die Nachteile sind, dass keine Parameter für Regedit möglich sind und dass nicht alle Anwender wissen wie sie mit der Sicherheitsabfrage (Könnte Viren enthalten - öffnen oder speichern) umgehen sollen.
Der Vorteil ist, dass das man einfachsten zu erstellen ist.
2. Auf eine *.bat Datei linken, die Regedit mit den entsprechenden Parametern aufruft.
Die Nachteile sind die Sicherheitsabfrage wie bei 1 und dass die Batchdatei auf die *.reg Datei zugreifen können muss.
(Regedit akzepiert kein http-Protokoll)
3. Mit Hilfe des Windwows Scripting Hosts
Die Nachteile sind eine Sicherheitsabfrage ob ActiveX Steuerelemente der Seite ausgeführt werden sollen und, dass das ganze nur mit dem IE mit Windows Scripting Host funktioniert.
Hier ein Besipiel:
<HTML>
<SCRIPT LANGUAGE="VBSCRIPT">
wshell.run(befehl)
set wshell= CreateObject("WScript.Shell")
key="HKLM\SOFTWARE\Microsoft\Internet Explorer\Main\Window Title"
wshell.RegWrite key, "IE und SelfHTML"
document.writeln "Hat alles geklappt!"
</SCRIPT>
</HTML>
4. Serverseitig
Wirklich Sinn macht es nur wenn auf dem Server ein Programm ausgeführt werden kann, das die Rechte besitzt auf dem Client in der Registry etwas zu ändern. Klingt nicht nach einer Lösung die ich empfehlen kann.
Wenn nur etwas in die Registry eingetragen werden soll, empfehle ich Lösung 1
Das funktioniert auch wenn die *.reg Datei direkt vom Webserver kommt.
Wenn die Parameter von Regedit erforderlich sind, aber der Scripting Host oder IE nicht überall vorhanden sind empfehle ich Lösung 2
Wenn in einem Intranet IE und Scripting Host Standard sind und die ActiveX Sicherheitsabfrage für interne Seiten eventuell auch schon deaktiviert ist, macht auch die dritte Version Sinn.
Viele Grüße
H-P Ortner