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

Pfad aus Reg lesen und als Zielort der zu kopierende Datei verwenden

Frage Entwicklung Batch & Shell

Mitglied: FanoStorm

FanoStorm (Level 1) - Jetzt verbinden

05.06.2009, aktualisiert 11:44 Uhr, 4000 Aufrufe, 6 Kommentare

Hallo,

und zwar hab ich schon eiwnenig heurm probiert. Doch Nichts hat wirklich funktioniert.

Ich möchte eine Batchdatei machen, die erst aus der Registrierung den Installationspfad ausliest. (HKLM\SOFTWARE\Name\Name2 -> Install Dir")

Den Ort verwenden um eine Datei dahin zu kopieren. Vielleicht mit vorheriges unbenennen der vorhandenen Datei.


Hab schon folgendes versucht:


01.
FOR /F "tokens=2*" %%A IN ('REG QUERY "HKLM\SOFTWARE\Name\Name2" /v Install Dir') DO SET Ort=%%B 
02.
copy /Y "Ordner\Test.exe" "%Ort%\Data\Bin"

Danke für eure hilfe!
Mitglied: LotPings
05.06.2009 um 12:05 Uhr
Hallo FanoStorm,

woher sollen wir wissen
  • was in deiner Registry steht?
  • Was in der Variable Ort ankommt?

Ich versuchs mal, aber da solltest du inzwischen auch selber drauf kommen.
01.
@Echo off 
02.
set "Ort=" 
03.
set "Datei=Test.exe" 
04.
FOR /F "tokens=3*" %%A IN ('REG QUERY "HKLM\SOFTWARE\Name\Name2" /v "Install Dir"') DO SET "Ort=%%B" 
05.
if not defined Ort Echo konnte InstallDir nicht lesen & pause & goto :EOF 
06.
If exist "%Ort%\Data\Bin\%Datei%" Move /Y "%Ort%\Data\Bin\%Datei%" "%Ort%\Data\Bin\%Datei%.bak" 
07.
copy /Y "Ordner\%Datei%" "%Ort%\Data\Bin\"
Gruß
LotPings
Edit Anführungszeichen eingefügt
Edit2: Tokens geändert
Bitte warten ..
Mitglied: FanoStorm
05.06.2009 um 14:10 Uhr
Zu deinen zwei Fragen.

1. Bei "Install Dir" steht der Pfad wo das Programm installiert ist.

2. Soll dann entsprechend der Pfad von "Install Dir" ankommen.


Mit "Do SET Ort=%%B" wird doch der ausgelesene Pfad von "Install Dir". Für die Variable "Ort" bestimmt.
Oder seh ich das falsch?


Hab es ausprobiert. Doch funktioniert nicht "Fehler: Zu viele Befehlsparameter"

Bei "Name2" was ich hier als Beispiel verwendet hab. Kommen bei mir zwei Leertasten rein, sprich "Der Name 2". Kann das mit ein Problem sein?


lieben Dank für deine hilfe
Bitte warten ..
Mitglied: LotPings
05.06.2009 um 14:31 Uhr
Zitat von FanoStorm:
Zu deinen zwei Fragen.
1. Bei "Install Dir" steht der Pfad wo das Programm installiert ist.
Das ist ja nett,hätte ich mir beinahe gedacht
Ein Beispiel wäre trotzdem hilfreich (kommen Sonder-/Leerzeichen vor?)

2. Soll dann entsprechend der Pfad von "Install Dir" ankommen.
Mit "Do SET Ort=%%B" wird doch der ausgelesene Pfad von "Install Dir". Für die Variable "Ort" bestimmt. Oder seh ich das falsch?
Grundsätzlich schon,
Hab es ausprobiert. Doch funktioniert nicht "Fehler: Zu viele Befehlsparameter"
Deshalb will ichdoch wissen welche Daten konkret benutzt werden.

Bei "Name2" was ich hier als Beispiel verwendet hab. Kommen bei mir zwei Leertasten rein, sprich "Der Name 2". Kann das mit ein Problem sein?
Ich setze mal Anführugszeichen in s obige Beispiel, probiere es dann noch mal.

Gruß
LotPings

Edit Registry Schlüssel mit Leerzeichen selber einzuführen ist eine schlechte Idee, Die müssen auch in Anführungszeichen bei der Abfrage
Bitte warten ..
Mitglied: FanoStorm
05.06.2009 um 15:10 Uhr
Hab es ausprobiert. Funktioniert immer noch nicht. Hier mal die konkreten Daten.

Registrierung:

"HKLM\SOFTWARE\Sims\The Sims 3" -> "Install Dir" Beispielpfad="C:\Programme\Electronic Arts\Die Sims 3"

Test.exe = Changer.exe
Bitte warten ..
Mitglied: LotPings
05.06.2009 um 15:43 Uhr
Zitat von FanoStorm:
Hab es ausprobiert. Funktioniert immer noch nicht. Hier mal die konkreten Daten.

War doch nicht so schwer, oder?

Registrierung:
"HKLM\SOFTWARE\Sims\The Sims 3" -> "Install Dir" Beispielpfad="C:\Programme\Electronic Arts\Die Sims 3"

Die Ausgabezeile enthält doch wieder das Leerzeichen du musst dann natürlich die tokens um eins erhöhen.
Habs oben nochmal angepasst und natürlich muss die /v Angabe auch in Anführungszeichen.

Test.exe = Changer.exe
Der Dateiname steht doch in einer Variable, den kannst du selber ändern.

Gruß
LotPings
Bitte warten ..
Mitglied: FanoStorm
05.06.2009 um 15:58 Uhr
Ja das mit der EXE Datei hab ich nur Vollständigkeits halber mit erwähnt.

Funktioniert nun einwandfrei! Entschuldigung für die Umstände, dachte das es so vielleicht "einfacher" ist.

Nun ja.....Ich danke dir für deine tolle hilfe!

Grüße
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
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 ...

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

Frage von liquidbase zum Thema Windows Update ...