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 Text (String) aus sich dynamisch verändernden Pfaden ausschneiden

Mitglied: onegasee59

onegasee59 (Level 2) - Jetzt verbinden

07.11.2008, aktualisiert 14:52 Uhr, 5941 Aufrufe, 5 Kommentare

Hallo,

ich erzeuge in einer Batch (über eine for-Schleife eine Variable "%key%" die inhaltlich dynamisch veränderliche Registry-Werte enthält.
Aus diesen Werten wird im nächsten Schritt (jeweils die 2. Zeile unter dem %key%-Wert ) der Installations-Hauptpfad der Anwendungen generiert.

Hier die aufgelösten Registry-Werte [1] der Variablen %key%

Die Variable %key% enthält also ausschließlich die Pfade aus den Zeilen mit "HKEY_LOCAL_MACHINE..."

Ich muss aus %key% exakt immer den Teil nach \App Paths\.... ausschneiden (ohne das letzte Anführungszeichen) und an eine weitere Variable übergeben.

Wie mache ich das am besten?

Die Zeilen mit dem *** am Ende spiegeln noch einen Batch-Fehler [2] für die aus dem %key%-Wert ermittelte 2. Zeile wieder.
Die Frage gilt dennoch auch für diese %key%-Werte, denen deren Ermittlung in der Batch funktioniert und ist korrekt.

Das Ganze muss sowohl unter XP als auch Vista funktionieren!

Wenn sich jemand fragen sollte, warum bekommt der ausschneiden nicht hin - der Hauptteil des Batch-Code-Schnippsel [2] stammt nicht von mir.
Wenn jemand den Bachtcode [2] versteht wäre ich dankbar für eine Problemlösung damit die Pfade (in jeweils Zeile 2) für die in [1] mit *** gekennzeichneten Zeilen korrekt ermittelt werden.

Übrigens sind die Fehler bei XP und Vista unterschiedlich. Z.Bsp. müsste Vista_key-Pfade.txt mit den gleichen Zeilen für Acrobat Reader wie bei XP_key-Pfade.txt beginnen.

[1]
XP_key-Pfade.txt
Vista_key-Pfade.txt

[2]
key-cmd.txt

Jetzt bin ich mal gespannt. - Bestimmt keine einfache Sache

Gruß
onegasee59
Mitglied: bastla
07.11.2008 um 07:54 Uhr
Hallo onegasee59!

So ganz klar ist mir das gewünschte Endergebnis zwar noch nicht, aber zumindest für
Ich muss aus %key% exakt immer den Teil nach \App Paths\.... ausschneiden (ohne das letzte Anführungszeichen) und an eine weitere Variable übergeben.
hätte ich folgenden Vorschlag:
01.
@echo off & setlocal 
02.
set "Pfade=D:\XP_Key-Pfade.txt" 
03.
 
04.
set "abc=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths" 
05.
 
06.
for /f "delims=" %%i in ('findstr /i /c:"%abc%" "%Pfade%"') do set "Pfad=%%i" & call :ProcessFile "%%~nxi 
07.
goto :eof 
08.
 
09.
:ProcessFile 
10.
set "Variable=%~1" 
11.
echo %Pfad% --^> %Variable% 
12.
goto :eof
Grüße
bastla
Bitte warten ..
Mitglied: paulepank
07.11.2008 um 11:14 Uhr
Hallo onegasee59,

Wenn jemand den Bachtcode [2] versteht wäre ich dankbar für eine Problemlösung damit die Pfade (in jeweils Zeile 2) für die in [1] mit * gekennzeichneten Zeilen korrekt ermittelt werden.Übrigens sind die Fehler bei XP und Vista unterschiedlich. Z.Bsp. müsste Vista_key-Pfade.txt mit den gleichen Zeilen für Acrobat Reader wie bei XP_key-Pfade.txt beginnen.

Das Problem liegt in der unterschiedlichen Ausgabe der Ergebnisse von reg.exe bei XP und Vista und damit einen allgemeingültigen Code zu schreiben. Das versuchte der Codeersteller mit
for /f "skip=1 tokens=*" %%a in ('reg query %abc% ^|find "\"') do call :parse "%%a" zu lösen. Da hat er aber leider nicht alles beachtet und getestet.

Tausche diese Zeile gegen nachfolgende aus und damit ist zumindest dieses Kalb vom Tisch.
01.
for /f "tokens=*" %%a in ('reg query %abc% ^|findstr /r "\\.*\."') do call :parse "%%a"
cu paulepank
Bitte warten ..
Mitglied: onegasee59
07.11.2008 um 13:37 Uhr
Hallo bastla, Hallo paulepank

Habe Eure Lösungen getestet. Für sich selbst funktionieren sie einwandfrei.
Sie scheitern aber letztendlich doch, weil wie ich jetzt erst festgestellt habe an einem weiteren Problem.

Es gibt in "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths"

zwei Werte die entscheidend sind für die Ausgabe:

--> Path
und
--> Standard

Bisher dachte ich immer das tatsächlich immer BEIDE Werte pro Anwendung (Software) vorhanden sind.
Was für ein Irrtum. Mal gibt es Beide oder nur Path und nur Standard.

Dadurch werden die Ausgaben natürlich völlig falsch. Jetzt müsste man auch noch innerhalb einer Anwendung immer zwischen seinen Path- und Standard-Werten abgleichen um sicher zu stellen das tatsächlich Beide leer sind um sie tatsächlich verwerfen zu können. Und wenn sie nicht leer sind müsste man sogar noch eine weitere Sequenz einbauen die absichert das entweder der Wert aus "Standard" oder "Path" genommen wird.

Ich mach hier Schluss das wird einfach zu kompliziert. Aufwand und Nutzen stehen in keinem vernünftigen Verhältnis mehr. Ich beerdige das Thema.

Danke Euch für die Hilfen dennoch natürlich ganz herzlich.

Gruß
onegasee59
Bitte warten ..
Mitglied: paulepank
07.11.2008 um 14:19 Uhr
kommt gleich

unabhängig davon, wie groß t bei t=gleich ist

Ergibt doch noch Fehler:

hab ich auch nicht behauptet, daß das Script fehlerfrei wäre.
aus meinem Beitrag von oben ist lediglich rauszulesen, daß die Unterschlagung des ersten Programms - in deinem Fall Acrobat - bei Vista behoben wurde.
Für alles andere habe ich keine Zeit. Deshalb auch nur das Kalb und nicht die Kuh

cu paulepank

EDIT: das scheint eine Marotte von dir zu sein, deine eigenen Beiträge zig-mal komplett zu verändern.
Da ist es wohl besser nächstes Mal ein Vollzitat zu bringen
Bitte warten ..
Mitglied: onegasee59
07.11.2008 um 14:52 Uhr
Hallo,

hab ich auch nicht behauptet, daß das Script fehlerfrei wäre.
Doch es ist ja fehlerfrei - Ich habs doch auch geschrieben "Habe Eure Lösungen getestet. Für sich selbst funktionieren sie einwandfrei"

Das die Ausgabe Fehler bringt liegt nicht an Deinem und Bastlas Code, sondern an den völlig bescheuerten Eingangswerten.
Die Gründe hatte ich ja genannt.

Wie gesagt Aufwand und Nutzen

cu und Danke
onegasee59
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Pfad zu den Userprofilen dynamisch ermitteln

gelöst Frage von ViprexBatch & Shell6 Kommentare

Hallo, ich sitze nun schon länger und grüble darüber nach, wie ich den Pfad zu den Userprofilen unter Windows ...

Microsoft Office

Preislisten erstellen (statische und dynamische Texte)

Frage von BadgerMicrosoft Office1 Kommentar

Hallo Leute, ich hoffe, ich bin in diesem Thread hier richtig. Aber recht was passenderes habe ich nicht gefunden. ...

Microsoft Office

Visio 2010, Shape Text dynamisch

gelöst Frage von 120491Microsoft Office1 Kommentar

Hallo, ich möchte gern in Visio 2010 das der Text eines Kreissegments beim Ändern der Gradzahl die aktuelle Gradzahl ...

VB for Applications

Dateien nach "Text" durchsuchen und Pfad ausgeben

Frage von chgs2011VB for Applications32 Kommentare

Hallo, ich suche dringend ein kleines VBScript. Das Script soll einen bestimmt Text in Dateien suchen, den der Benutzer ...

Neue Wissensbeiträge
Multimedia & Zubehör
AVM Fritz USB WLAN Sticks schneller einschalten
Tipp von NetzwerkDude vor 21 StundenMultimedia & Zubehör

Die AVM Fritz WLAN Sticks haben in der Firmware 2 Modis: Einmal als Massenspeicher und einmal als WLAN Netzwerkkarte ...

Windows Server

Windows Server Backup schlögt Fehl -Lösung 2008-2016

Tipp von BiGnoob vor 23 StundenWindows Server

Hi zusammen , ich möchte gerne einen Lösungstipp abgeben für folgenden fehler: lösung ist folgende:

Humor (lol)
Telekom vs. O2 - 3:2
Erfahrungsbericht von the-buccaneer vor 1 TagHumor (lol)4 Kommentare

Unglaublich aber wahr: Nachdem mein privater Anschluss am 19.04.18 auf VOIP und VDSL umgestellt wurde, hatte ich seitdem 1,5 ...

Batch & Shell

Windows 10 Heimnetzgruppe abgeschaft. Ein Script für einfache Netzwerk - Freigabe im Heimnetzwerk

Anleitung von treehe vor 1 TagBatch & Shell3 Kommentare

Anleitung für eine einfache Netzwerkfreigabe unter Windows 10 Wie weiter hab mal ein kleines CMD - Script gebastelt. Womit ...

Heiß diskutierte Inhalte
Netzwerke
IP-Adresse am zweiten Domänencontroller fest vergeben - Server verschwunden
gelöst Frage von DanielG1974Netzwerke28 Kommentare

Ich hab ein Problem, was ich bisher noch nicht erlebt habe Ich habe erfolgreich einen zweiten Server mit ActiveDirectory ...

Windows Tools
Virtueller Drucker gesucht (Schnittstelle: USB oder Seriell)
gelöst Frage von chrisButterflyWindows Tools21 Kommentare

Hi, ich suche einen virtuellen Drucker, den ich über eine USB oder serieller Schnittstelle ansprechen kann. Dieser Drucker soll ...

Windows Server
Windows Server 2012 - Update - Beim Booten bleibt der Server beim Windows Zeichen stehen
Frage von KeilbachWindows Server17 Kommentare

Hallo Zusammen, ich grüße euch, mein Name ist Michele. Ich bin hier ganz Neu - da ich einfach nicht ...

Windows 10
Weiße Fenster beim Aufruf verschiedener Apps
Frage von 90584Windows 1011 Kommentare

Hallo liebe Leute ! Ich habe ein Problem. Bei verschiedensten Anwendungen, wie z.B. beim Anhang, sind nur unlesbare weiße ...