hisdudeness
Goto Top

Registry Eintrag per Batch File ändern schlägt fehl

Hallo Zusammen,

ich würde gerne bei jedem Systemstart eine *.exe datei ausführen lassen (Virendefinitionsdatei). Dazu habe ich folgendes Batch File geschrieben, welches dies eigentlich realisieren sollte. Es läuft aber nicht...beim durchwühlen dieses Forums bin ich auf identische Probleme gestoßen... Habe dann die Zeilen benutzt, es geht nichts ! Hier mein Batch File:
:: set KEY properties

SET KEY=HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run

::************************************
:: Registry changing starts here !!!
::************************************

:: preparing the file
  echo REGEDIT5 > temp.reg
  echo. >> temp.reg
	
:: read in KEY path and KEY values  
  echo [%KEY%] >>temp.reg
  echo "Upd"="S:\sdat.exe" >>temp.reg  

:: *.reg file read in and delete
  REGEDIT /s temp.reg
  DEL temp.reg

::***********************************
:: Registry changing ends here !!!
::***********************************

Content-ID: 29123

Url: https://administrator.de/forum/registry-eintrag-per-batch-file-aendern-schlaegt-fehl-29123.html

Ausgedruckt am: 23.12.2024 um 08:12 Uhr

meinereiner
meinereiner 28.03.2006 um 12:11:16 Uhr
Goto Top
unter lokal-Machine hat der User keine Rechte zum Schreiben. Unter Current_User kannst du den Eintrag aber auch machen udn da wird es dann gehen.

Wobei du auch gleich:


Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
"Programm"="S:\\sdat.exe"



mit Regedit /s eintragen lassen kannst
HisDudeness
HisDudeness 28.03.2006 um 13:09:39 Uhr
Goto Top
Vielen Dank für die promte Hilfe!
Es geht allerdings leider immernoch nicht. Er erzeugt keinen REG_SZ Schlüssel !!!!
Ich habe keine Ahnung wieso, er rührt sich genausowenig wie vorher.... ich bin ratlos. Editiere ich die Registry manuell so ist es kein Problem, nur mittels Batch File will er nicht....
meinereiner
meinereiner 28.03.2006 um 13:18:22 Uhr
Goto Top
Du hast das was ich zwischen die Striche schrieb in eine Datei (z.B. run.reg) geschrieben und dann mit "regedit /s run.reg" eintragen lassen und dann ist nichts unter KCU...??
HisDudeness
HisDudeness 28.03.2006 um 13:27:02 Uhr
Goto Top
Wenn ich es in eine Datei schreibe und mit "regedit /s run.reg" eintragen lasse (wie von Dir eben beschrieben) geht es, allerdings geht es nicht im Batch File ! Ich verstehe nicht wieso, sollte doch das gleiche sein!
:: set KEY properties

SET KEY=HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

::************************************
:: Registry changing starts here !!!
::************************************

:: in case there is one
  DEL temp.reg

:: preparing the file
  echo REGEDIT5 > temp.reg
  echo. >> temp.reg
	
:: read in KEY path and KEY values  
  echo [%KEY%] >>temp.reg
  echo "SdatUpd"="S:\sdat.exe" >>temp.reg  

:: *.reg file read in and delete
  REGEDIT /s temp.reg
  DEL temp.reg
Danke ! Im Notfall kann ich es dann über die genannte Methode machen. Mein Ego ist allerdings etwas angekratzt face-big-smile
djbrandt
djbrandt 29.03.2006 um 08:26:31 Uhr
Goto Top
Hi,

warum so kompliziert?

Bei M$ gibt es im Reskit ein Tool Namens reg.exe

Current User:

REG ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v Upd /t REG_EXPAND_SZ /d "S:\sdat.exe""


oder local macchine

REG ADD HKLM\Software\Microsoft\Windows\CurrentVersion\Run /v Upd /t REG_EXPAND_SZ /d "S:\sdat.exe""


das wars.


Grüße

Dieter
HisDudeness
HisDudeness 29.03.2006 um 10:28:19 Uhr
Goto Top
Hi,

ich dachte das läuft nur unter XP!!!! Cool werde ich mal probieren....
Gruß
Timo
Biber
Biber 29.03.2006 um 20:29:09 Uhr
Goto Top
Moin HisDudeness,

Mit folgender per ECHO erzeugter *.reg-Datei funktioniert es:

::--begin of temp.reg
REGEDIT4
(leer)
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
"SdatUpd"="S:\\sdat.exe"  
(leer)
(leer)
::-----eo temp.reg
Frag mich nicht warum.. ich kannte bis zu Deinem Thread auch nur die NT/Win9x-Varianten mit "REGEDIT4" und die "neueren" mit "Windows Registry Editor Version 5.00" am Anfang.
Aber "REGEDIT5" scheint es auch zu geben...die laufen bei mir allerdings ohne Errorlevel ins Nirwana. Falls da jemand Infos hat...ich lese mit.

@Dieter
Der Schlüssel "....\Run" ist nur vom Typ REG_SZ, kein REG_EXPAND_SZ.

Gruß
Biber
djbrandt
djbrandt 29.03.2006 um 20:41:59 Uhr
Goto Top
Hi Biber,

wo du recht hast... face-smile
schon wieder schlampig gearbeitet grrrrr setzen 6, Dieter face-sad

Grüße

Dieter