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

Mit Batch Datei Pfad suchen, diesen dann weiter verwenden

Frage Entwicklung Batch & Shell

Mitglied: MTB4ever

MTB4ever (Level 1) - Jetzt verbinden

28.08.2007, aktualisiert 30.08.2007, 11627 Aufrufe, 7 Kommentare

Hallo,

also ich habe folgendes vor: 1. muss eine batch datei eine andere datei suchen (die gibt es 100% nur einmal) nenn wir hier z.b. mal test.dll
2. muss die bat datei das Verzeichnis "merken" um es dann an anderer stelle einzufügen um einen anderen befehl ausführen zu können

also beispiel wie ich es mir vorstelle:


@echo off

suche test.dll und speicher pfad unter z.b. Pfad1

cd "%systemroot%\Microsoft.NET\Framework\v2.0*\"
regasm /register "Pfad1\test.dll"



der hintergrund von den ganzen is das ich ein installer baue un da das installationsverzeichnis nicht immer gleich sein muss un wenn ein anderer die setup.exe ausführt (das mit test.dll batch datei wird in setup.exe eingebunden) soll halt net arbeit haben un die datei selber suchen.


hoffe es kann einer was zusamm basteln!

MfG

MTB
Mitglied: TuXHunt3R
28.08.2007 um 16:34 Uhr
Was ist "regasm"? Kenne ich gar nicht.....
Bitte warten ..
Mitglied: MTB4ever
28.08.2007 um 16:36 Uhr
is en teil von microsoft framwork 2.0 um in meinen fall z.b. bestimmte dll´s zu registrieren! (regasm.exe)

aber tut ja bei den thema net viel zur sache falls dich das irritieren sollte
Bitte warten ..
Mitglied: Biber
28.08.2007 um 18:36 Uhr
Moin MTB4ever,

kannst Du z.B. mit dem FOR/R-Befehl machen [Demo am CMD-Prompt]:
01.
for /r "c:\" %i in (test.dll) do @echo Set "pfad1=%~dpi"
[Ungetestet; im Batch zwei %-Zeichen statt einem]
.....wobei das "@echo " hier nur zum Testen ist und das Startverzeichnis "c:\" optional und vollkommen willkürlich.

Falls Du auf mehreren/allen Laufwerken suchen willst, kannst Du noch eine FOR-Anweisung herumbasteln.
01.
for %j in (c d e ) do @for /r "%j:\" %i in (test.dll) do @echo Set "pfad1=%~dpi"
Grüße
Biber
Bitte warten ..
Mitglied: MTB4ever
29.08.2007 um 08:24 Uhr
C:\>test.bat
Der Befehl ""Beispiel.exe"" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
Drücken Sie eine beliebige Taste . . .


kommt da als fehler

in test.bat steht:

@echo off

for %%j in (c d e ) do @for /r "%%j:\" %%i in (beispiel.exe) do Set "pfad1=%%~dpi"

call "beispiel.exe"
pause


(beispiel.exe liegt in diesen beispiel unter C:\Programme\Testordner\Programm\, kann aber auch wo anders liegen)

mfg MTB
Bitte warten ..
Mitglied: MTB4ever
29.08.2007 um 08:51 Uhr
also im endeffekt soll es dann so etwa aussehen:

@echo off



for %%j in (c d e ) do @for /r "%%j:\" %%i in (beispiel.exe) do Set "pfad1=%%~dpi"

cd "%systemroot%\Microsoft.NET\Framework\v2.0*\"

regasm /register "%Pfad1%\ndm.dll"

pause

(ich such nach der exe weil ich net 100% weiß obs die dll wo anders nochma gibt, aber wo die exe gibs nur einmal un da die dll im selben verzeichnis liegt sollte es theoretisch ja so gehn)


wenn ich das so ausführe kommt aber:

C:\>test.bat
Microsoft (R) .NET Framework Assembly Registration Utility 2.0.50727.42
Copyright (C) Microsoft Corporation 1998-2004. Alle Rechte vorbehalten.

RegAsm : error RA0000 : Das angegebene Pfadformat wird nicht unterstützt.
Drücken Sie eine beliebige Taste . . .

hoffe kann einer helfen

mfg MTB
Bitte warten ..
Mitglied: Biber
29.08.2007 um 18:51 Uhr
Moin MTB4ever,

sorry, ich hätte es auch testen sollen.
Also, folgende kleine Nachbesserungen wären sinnvoll:
1) bei der Datei, nach der Du suchst ("Beispiel.exe" oder "Beispiel.dll" noch ein "?" anhängen.
2) Falls das angedeutete Suchen auf mehreren Laufwerken nötig sein sollte, würde ich die Laufwerke nacheinander, aber nicht in einer FOR-Anweisung abklappern.
3) und dann bitte erstmal das Ergebnis anzeigen, bevor Du tatsächlich irgendein Regasm-Aufruf machst.

In Batch also:
01.
@echo off & Setlocal 
02.
for /r "c:\" %%i in (beispiel.exe?) do Set "pfad1=%%~dpi" 
03.
if not defined pfad1 for /r "d:\" %%i in (beispiel.exe?) do Set "pfad1=%%~dpi" 
04.
if not defined pfad1 for /r "e:\" %%i in (beispiel.exe?) do Set "pfad1=%%~dpi" 
05.
 
06.
cd "%systemroot%\Microsoft.NET\Framework\v2.0*\"  
07.
 
08.
ECHO regasm /register "%Pfad1%\ndm.dll"
Bei der Anzeige des regasm-Aufrufs sollte jetzt der "richtige" Pfad angezeigt werde mit der Auffälligkeit, dass nach dem gefundenen pfad1 vor der ndm.dll ZWEI Backschlashes stehen.
Der CMD.exe mach das nichts aus (C:\test\xy.txt ist gleichbedeutend c:\\test\\\xy.txt).

Ob die RegAsm.exe das ab kann, weiß ich nicht - ggf. sonst den Regasm-Aufruf ändern in:
01.
regasm /register "%Pfad1%ndm.dll" 
Grüße
Biber
Bitte warten ..
Mitglied: MTB4ever
30.08.2007 um 14:36 Uhr
danke jetzt geht es!

mfg MTB
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
XML-Datei: Pfade suchen, verlinkte Dateien kopieren und Pfade ändern
gelöst Frage von ELEVATORBatch & Shell4 Kommentare

Hallo, das Programm "Solidworks Composer" speichert Pfadangaben verlinkter Dateien in Projektdateien. Ich möchte nun diese Projektdateien inklusive aller verlinkten ...

Batch & Shell
Neueste Datei mit Batch suchen
gelöst Frage von thilo-55Batch & Shell4 Kommentare

Ein herzliches Hallo an die Teilnehmer des Forums. Leider komme ich mit meinen batch/dos-Kenntnissen nicht mehr weiter. Evtl. kann ...

Batch & Shell
Batch zum suchen und verschieben von Dateien
gelöst Frage von zeroblue2005Batch & Shell5 Kommentare

Guten Tag Zusammen, ich benötige eine Batch, die folgendes kann: 1. Suche in bestimmten Dateipfad nach nach Dateien eines ...

Batch & Shell
Batch, Suche der Nummer in der Datei!
Frage von SportiiiBatch & Shell8 Kommentare

Hallo, mir wurde bereits durch jodel32 sehr geholfen es fehlt nur ein kleines Stück: Folgendes: Wenn ich eine Nummer ...

Neue Wissensbeiträge
Mac OS X

MacOS wo ist die Tilde ?

Tipp von Alchimedes vor 55 MinutenMac OS X

Hallo, ich hab eine MacOS qwertz Keyboard auf US Layout umgestellt da die Sonderzeichen besser ereichbar sind. Leider fehlt ...

Datenschutz

Weitere Inforamtionen zum Sicherheitsproblem BeA

Information von Penny.Cilin vor 7 StundenDatenschutz

Im folgenden ein weiterer Bericht über die Sicherheitsprobleme von Bea. Fataler Konstruktionsfehler im besonderen elektronischen Anwaltspostfach Gruss Penny

Windows 10

Systemdienste behalten nach Win10 inplace-Upgrade nicht die ggf. modifizierte Startart bei

Tipp von DerWoWusste vor 9 StundenWindows 103 Kommentare

Stellt Euch vor, Ihr habt ein Win10 System und modifiziert dort die Startart von Systemdiensten. Zum Beispiel wollt Ihr ...

Microsoft Office

Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei

Anleitung von SarekHL vor 12 StundenMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Microsoft Office
Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei
Anleitung von SarekHLMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von fyrb38Windows 1017 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...