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

Diverse Dateien umlenken

Mitglied: 13268

13268 (Level 1)

23.05.2005, aktualisiert 25.05.2005, 7538 Aufrufe, 10 Kommentare

Hallo,

ich bin gerade dabei ein kleines Skript zu schreiben und habe da ein "kleines" Problem.

Also in dem Skript sollen die Dateien explorer.exe und user32.dll von der Festplatte auf ein RAM-Drive kopiert werden.
Soweit kein Problem.

Aber jetzt möchte ich dem BS klarmachen wenn es einen Aufruf für eben diese Dateien bekommt, das er die Datein aus dem RAM-Drive verwendet und nicht die von der Festplatte.

Jetzt werdet Ihr euch sicher fragen wofür der Schmarn, es geht darum das ich ein Windows PE mir gerade bastle das komplett von der CD startet und um den Zugriff etwas zu beschleunigen möchte ich eben diese Dateien aufs RAM-Drive legen.

Ich weiß auch das es da eine Möglichkeit gibt, nur weiß ich nicht mehr wie.

Danke im voraus.
Chris
Mitglied: 10545
24.05.2005 um 08:27 Uhr
Hallo Christian,

ich bin mir jetzt nicht ganz sicher, aber versuche es mal unter "Systemeigenschaften/Erweitert/Umgebungsvariablen..."

Möglicherweise kannst Du es hier setzen.

Gruß, Rene
Bitte warten ..
Mitglied: 13268
24.05.2005 um 09:07 Uhr
Hallo,

danke für den Tip, aber über die Umgebungsvariablen kann ich nur den den Kompletten Ordner umlenken aber keine einzelnen Dateien.
Und ich muss es über eine Batch erledigen, also mit set usw.

Chris
Bitte warten ..
Mitglied: Biber
24.05.2005 um 12:24 Uhr
Hallo Chris,
mein Lösungsvorschlag ist folgender:

- die gewünschten Dateien auf Ramdisk kopieren
- den Suchpfad, d.h. %Path% und Systemumgebung so ändern, dass Ramdisk als erstes gelesen wird.
- und das Ganze in einer wartbaren Autostart-*.bat-Datei mit zwei tools aus dem Microsoft-Resource-Kit
- oder eben ohne die beiden Tools
(dann ist manuelles Ändern der Umgebungsvariablen nötig, wie von Rene angeregt)


aber liebsten wie folgt
du brauchst setx.exe und pathman.exe aus dem RK-Kit!


:: 1. Batchdatei im Autostartorder anlegen oder eine bestehende erweitern

in der "xyz.bat":

:: 2 büschen lesbar und wartbar machen
:: neue Variable %Ramdisk% definieren... Inhalt Laufwerk der Ramdisk
:: neue Variable %OldPath% definieren... Inhalt der bisherige %PATH%
:: neue Variable %FileList% definieren...Inhalt alle Dateien, die auf %Ramdisk% sollen
:: Bedingung: alle dateien in %FileList% werden bisher im %PATH% gefunden.
set Ramdisk=R:\
set oldpath=%PATH%
set FileList=explorer.exe user32.dll beispiel3.exe weissderGilb.com setx.exe pathman.exe usw.com
:: 3. Dateien kopieren
for %%J in (user32.dll setx.exe pathman.exe) do copy %%~sf$Path:J %Ramdisk%
:: nicht verstehen wollen, den FOR-Befehl... einfach machen *gg
::
:: 4 prüfen, ob %Ramdisk schon im %PATH% an erster Stelle steht
If (%path:~0,3%)==(%Ramdisk%) goto :eof
:: sonst machen wir das halt einmalig...
:: 5. Für künftige DOS-Aufrufe den Path dauerhaft machen
setx PATH %Ramdisk%;%OldPath%
:: 6. Für die doofen Windowsprogramme die Umgebungsvariabe "Systempfad" einmal löschen
:: ... und fairerweise wieder neu aufbauen
pathman /rs %OldPath%
pathman /as %Ramdisk%;%OldPath%
:: ich sag es ungern, aber dazu braucht der User die entsprechenden Rechte..
:: wenn der User "nur" den UserPath ändern kann und nicht den SystemPath, dann streich Schritt 5 + 6
:: und mach das in einer Batchdatei unter deinem Namen (RUNAS Admin)
:: ODER wie von Rene vorgeschlagen manuell (Ändern der Umgebungsvariablen einmalig)
:: Schritt 5 und 6 sind ja nur einmal im leben nötig
:: ------------fertich iss


Hope it helps

Frank / der Biber aus Bremen
Bitte warten ..
Mitglied: Biber
24.05.2005 um 13:15 Uhr
die Zeile

for %%J in (user32.dll setx.exe pathman.exe) do copy %%~sf$Path:J %Ramdisk%

sollte natülich

for %%J in ( %FileList%) do copy %%~sf$Path:J %Ramdisk%

heißen.

Ich hoffe, dass nicht zu viele andere Tippfehler drin sind.

Biber
Bitte warten ..
Mitglied: 13268
24.05.2005 um 16:34 Uhr
Hallo Biber,

danke für das Skript, hat aber leider nicht geklappt.
Nach dem Kopieren der Dateien kommt eine Syntaxfehlermedlung und er macht mit der IF Anweisung weiter.
Die Path Variable bleibt unberührt, sprich es wird keine Änderung gemacht.

Gruss
Christian
Bitte warten ..
Mitglied: Biber
24.05.2005 um 19:39 Uhr
Tja, Chris,

So ist das immer mit meiner Software..die reift beim Kunden *feix

Hhhhmmm ...

...das Kopieren der Dateien macht er noch oder macht er nicht??
Hab ich nicht ganz verstanden...

Oder verreckt er erst in der "IF ... goto :eof "- Zeile???

Bitte poste doch noch mal zurück mit Deiner angepassten Autostart-Batdatei, denn:

- entweder ist in der %Filelist% eine Datei dabei, die in Anführungszeichen gehört
- oder im %Path% ist ein Verzeichnisname, der in ...(s.o)
- oder die Ramdisk heißt nicht R:\ bei Dir (*lach, kleiner Scherz)

Dass der %path% unverändert ist (wenn Du nach wie vor im selben DOS-Fenster bist),
... ja, stimmt & sollte so ...
denn diese %Path%-Anpassung hab ich mir bewusst geschenkt..
die wäre meiner Meinung ohnehin wieder vergessen, wenn die Autostart-Batdatei abgearbeitet ist.
Ebenso wie die drei neu definierten variablen %Filelist%, %Oldpath% etc auch nicht dauerhaft gespeichert werden, also beim nächsten Aufmachen eines DOS-Fensters weg sind.

Aber als Trockenübung kannst Du sowohl am Dos-Prompt wie auch in der obigen *-Bat-Datei einfügen/eingeben "set path=%ramdisk%;%path%" bzw. wie oben:

:: zum Testen am Prompt:
set Oldpath=%path%
set ramdisk=R:\
::oder wie die nun heißen mag)

set path=%ramdisk%;%oldpath%

und dann schau mal, was ein echo bringt..

echo %path% sollte nun "R:\;C\windows...."...und weitere 3 Meter Text bringen
echo (%path:~0,3%)................sollte "(R:\)" ...bringen


Würde mich zutiefst deprimieren, wenn wir beide nicht mal son Mini-Batchkrams zum fliegen brächten.

Also, lass uns mal die Kuh vom Eis holen


Frank /der Biber aus Bremen
Bitte warten ..
Mitglied: 13268
25.05.2005 um 08:33 Uhr
Hallo Frank,

also hier erstmal die angepasste Batch

set Ramdisk=B:\
set oldpath=%PATH%
set FileList=explorer.exe user32.dll setx.exe pathman.exe
for %%J in ( %FileList%) do copy %%~sf$Path:J %Ramdisk%
If (%path:~0,3%)==(%Ramdisk%) goto :eof
setx PATH %Ramdisk%;%OldPath%
pathman /rs %OldPath%
pathman /as %Ramdisk%;%OldPath%

Der Fehler tritt direkt nach dem kopieren auf.

x:\i386\system32>copy X:\i386\system32\pathman.exe b:\
1 file(s) copied
The syntax of the command is incorrect.
Danach macht er mit if ----> (b:\)==(B:\ ) goto :eof <--- weiter.
Und beendet die Batch.

Die Trockenübung hat einwandfrei funktioniert.

Gruss
Chris
Bitte warten ..
Mitglied: Biber
25.05.2005 um 10:53 Uhr
*Kopfkratz

Moin Chris,

Nun kommt wieder der Satz, bei dem mich meine Kunden auch immer lächelnd zur Tür bringen: "Bei mir läuft es aber..."

Wer bringt denn diese ausländische Fehlermeldung ("The syntax...") ?
Ist das der CMD-Interpreter oder hast Du eine andere SetX.Exe als ich und die sacht sowas?

*grummel*

Lass uns das mal direkt klären und danach hier posten...

Frank / Biber3_AT_hotmail.de
Bitte warten ..
Mitglied: 13268
25.05.2005 um 11:18 Uhr
Hallo,

also es ist eine Windows PE basierend auf Windows XP (SP2) Prof. in englisch und auch das Resource-Kit ist in englisch.
Die Versionen :

CMD - Microsoft windows XP [Version 5.1.2600]
setx - Version 1.0a (5/31/96)
Über pathman habe ich keine Versions info finden können.

Chris
Bitte warten ..
Mitglied: Biber
25.05.2005 um 11:23 Uhr
okay, Chris...

ich war der Dussel.. *feixxx

also, was schiefgehen kann, passiert bei Setx bzw pathman:

Nimm bitte mal Anfü-Zeichen dort:

setx PATH "%Ramdisk%;%OldPath%"
pathman /rs "%OldPath%"
pathman /as "%Ramdisk%;%OldPath%"


Das sollte das aber reichen. *auf Holz klopft

Frank / der Biber aus Bremen
Bitte warten ..
Ähnliche Inhalte
Webentwicklung
Htaccess URL prüfen und umlenken
Frage von DoritosWebentwicklung10 Kommentare

Hallo, ich versuche gerade für Joomla die URL mit bestimmten Inhalten herauszufiltern und umzuleiten. Dies soll über die .htaccess ...

Batch & Shell

Bildung von Mittelwert diverser Zahlen aus einer txt-Datei

gelöst Frage von Sven289Batch & Shell7 Kommentare

Hallo, ich habe folgendes Problem, bei dem ich nicht so recht weiß, wie man es anpacken soll. Ich weiß ...

VB for Applications

VBS bringt diverse Fehlermeldungen

gelöst Frage von VBSNOOBVB for Applications2 Kommentare

Guten Tag zusammen, ich habe einen kleinen Script programmiert, der eine einheitliche Email Signatur erstellt. Dieser Script wird per ...

Windows Server

Diverse Fehler im ActiveDirectory

gelöst Frage von d3dataWindows Server31 Kommentare

Hallo, ich habe auf dem DC merkwürdige Fehlermeldungen des AD. DC ist ein einzelner Windows 2012 R2. Verwaltet ca. ...

Neue Wissensbeiträge
Internet

Europa baut Zensurinfrastruktur auf: EU-Parlament stimmt für Upload-Filter, Leistungsschutzrecht und gegen KI-Forschung

Information von Frank vor 1 TagInternet8 Kommentare

Eine sehr schlechte Entscheidungen für die Zukunft Europas ist gefallen: Der Rechtsausschuss im EU-Parlament stimmte heute morgen in einer ...

Windows 10

Mikrofon von Headset geht nach Update auf Windows 10 1803 nicht mehr

Tipp von Deepsys vor 3 TagenWindows 102 Kommentare

Ich verwende ein Plantronics Headset das per USB mit dem Windows 10 PC verbunden ist. Damit kann ich auch ...

Video & Streaming

Ruckelfreies Fernsehen auf Smartphone oder Tablet - in SD oder gar HD - Eine Alternative zum Fritz DVB-C Receiver

Anleitung von power-user vor 4 TagenVideo & Streaming9 Kommentare

Wer kennt das nicht: Man möchte gemütlich auf dem Balkon sitzen und vielleicht grillen und dabei das WM-Spiel gucken ...

Erkennung und -Abwehr
Trendmicro WFBS 10 ist in deutsch verfügbar!
Tipp von VGem-e vor 4 TagenErkennung und -Abwehr4 Kommentare

Servus Kollegen, downloadbar unter

Heiß diskutierte Inhalte
Windows 7
Windows 7 Benutzer wechsel nicht möglich
gelöst Frage von OSelbeckWindows 727 Kommentare

Hallo, ich habe hier einen Windows 7 Rechner, der in der Domäne war. Jetzt passiert beim starten, das ich ...

Windows Netzwerk
IP-Adresskonflikt
Frage von Turbo-MasterWindows Netzwerk24 Kommentare

Hallo zusammen, ich habe ein Problem mit unserem Netzwerk unter Windows Server. Ständig erhalten wir die Meldung, dass ein ...

Batch & Shell
Batch Datei für Dateinamen
gelöst Frage von Sabi75Batch & Shell19 Kommentare

Hallo zusammen, ich bräuchte mal eure Hilfe. Ich nutze einen Windows 7 PC und ein Apple Ipad wenn ich ...

Festplatten, SSD, Raid
RAID auflösen Synology DS213j!
gelöst Frage von Hendrik2586Festplatten, SSD, Raid19 Kommentare

Guten Morgen meine Lieben! :) Diese Frage wird sich sicherlich schon der ein oder andere gestellt haben. Es geht ...