Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

Eigene Dateien nach Programmende per Batch neu stetzen

Frage Entwicklung

Mitglied: MaDtze

MaDtze (Level 1) - Jetzt verbinden

17.06.2008, aktualisiert 19.06.2008, 5964 Aufrufe, 1 Kommentar

Hallo!

Ich habe ein kleines Problem. Mich nervt es ziemlich dass einige Programme (bevorzugt Spiele) ungefragt ihre User-Daten unter "Eingene Dateien" speichern. Um dies zu umgehen habe ich mir eine kleine Batch-Datei (Start.bat) erstellt, die ich vor Spielstart ausführe:
01.
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Personal" /t "REG_EXPAND_SZ" /d "C:\Spiele\Eigene Dateien" /f 
02.
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Personal" /t "Reg_SZ" /d "C:\Spiele\Eigene Dateien" /f  
03.
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DocFolderPaths" /v "Personal" /t "Reg_SZ" /d "C:\Spiele\Eigene Dateien" /f  
04.
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DocFolderPaths" /v "Matthias" /t "Reg_SZ" /d "C:\Spiele\Eigene Dateien" /f 
Nach dem Spiel mache ich alles wieder "rückgängig" mit dieser Batch (Ende.bat):
01.
rreg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Personal" /t "REG_EXPAND_SZ" /d "D:\Eigene Dateien" /f 
02.
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Personal" /t "Reg_SZ" /d "D:\Eigene Dateien" /f  
03.
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DocFolderPaths" /v "Personal" /t "Reg_SZ" /d "D:\Eigene Dateien" /f  
04.
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DocFolderPaths" /v "Matthias" /t "Reg_SZ" /d "D:\Eigene Dateien" /f
Optimaler wäre es natürlich, wenn einfach automatisch vor Start des Spiels die erste, nach Beenden des Spiels, die zweite Batch ausgeführt wird. Ich habe hier im Forum ein wenig gestöbert und mir folgendes zusammengefrickelt (Spiel.bat):
01.
:: p1=Pfad zum Spiel p2=exe-Datei des Spiels  
02.
@echo off  
03.
SET usedvars=p1 p2 pfad 
04.
:: Abfragen der Spiel-Parameter und Zuweisung zur Variable p1 und p2  
05.
IF (%1)==() (GOTO :eof) ELSE (SET p1=%1)  
06.
IF (%2)==() (GOTO :eof) ELSE (SET p2=%2)  
07.
set "pfad=%p1%%p2%" 
08.
:: Setzen des neuen "Eigene Dateien"-Pfads  
09.
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Personal" /t "REG_EXPAND_SZ" /d "C:\Spiele\Eigene Dateien" /f 
10.
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Personal" /t "Reg_SZ" /d "C:\Spiele\Eigene Dateien" /f  
11.
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DocFolderPaths" /v "Personal" /t "Reg_SZ" /d "C:\Spiele\Eigene Dateien" /f  
12.
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DocFolderPaths" /v "Matthias" /t "Reg_SZ" /d "C:\Spiele\Eigene Dateien" /f:: Starten des Programms 
13.
start %pfad% 
14.
:: Pause damit das Spiel "in Ruhe" starten kann 
15.
ping -n 10 localhost > nul 
16.
:: Prüfung ob das Spiel noch läuft 
17.
:suche 
18.
tasklist |find /i "%p2%" >nul 
19.
if %errorlevel% == 0 ( 
20.
ping -n 5 localhost > nul 
21.
goto suche 
22.
) else (goto zurueck) 
23.
 
24.
:zurueck 
25.
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Personal" /t "REG_EXPAND_SZ" /d "D:\Eigene Dateien" /f 
26.
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Personal" /t "Reg_SZ" /d "D:\Eigene Dateien" /f  
27.
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DocFolderPaths" /v "Personal" /t "Reg_SZ" /d "D:\Eigene Dateien" /f  
28.
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DocFolderPaths" /v "Matthias" /t "Reg_SZ" /d "D:\Eigene Dateien" /f
Es funktioniert zwar rudimentär, aber die Hoffnung, dass ich z.B. einfach in einer Verknüfung "c:\spiel.bat c:\spielpfad spiel.exe" angeben kann und die Parameter korrekt übergeben werden, hat sich nicht erfüllt. Das ganze funktioniert nur bei Aufruf aus der Kommandozeile.

Vielleicht gibt es ja für das Problem eine viel elegantere Lösung und ihr schlagt Euch die Hände über dem Kopf zusammen bei meinem Noob-Copy/Paste-Batch. Der ständige Ping im Hintergrund verbraucht ja auch ein paar Ressourcen. Ich würde mich daher über eine Lösung sehr freuen.

Vielen Dank im Voraus,

MaDtze

P.S.: Betriebssystem ist übrigens Win XP Prof.
Mitglied: Arano
19.06.2008 um 15:51 Uhr
Hallo MaDtze,

probier es doch mal mit
01.
"C:\spiele.bat" parm1 parm2
Das hat bei mir gerade super funktioniert.
start.bat
01.
@echo off 
02.
 
03.
echo Param 1: %1 
04.
echo Param 2: %2 
05.
 
06.
pause
Alternative dazu könntest du dir ja auch eine "größer" Batch erstellen, eine die dir ein kleines Auswahlmenue der zu startenden Spiele gibt.

1 - Spiel A
2 - Spiel B
3 - Spiel C

Eingabe:_

Dan hast du auch nur die Verknüpfung zur Batch auf dem Desktop und nicht eine für jedes Spiel (nen Icon kann man der ja auch zuweisen)


Gruß Arano
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Neuere Datei per Batch ausfinding machen (2)

Frage von chattie zum Thema Batch & Shell ...

Windows Server
gelöst Freigegebener Ordner "Eigene Dateien" (8)

Frage von JensDND zum Thema Windows Server ...

Batch & Shell
gelöst Batch : alle Dateien eines Ordners bearbeiten (1)

Frage von deguonkel zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(1)

Information von DerWoWusste zum Thema Microsoft ...

Humor (lol)

Wohnt jemand in Belgien und kann nicht mehr ruhig ausschlafen?

(6)

Information von LordGurke zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Hosting & Housing
Mailserver Software Empfehlungen (21)

Frage von sunics zum Thema Hosting & Housing ...

Voice over IP
DeutschlandLAN IP Voice Data M Premium, Erfahrung mit Faxgeräte? (16)

Frage von liquidbase zum Thema Voice over IP ...

TK-Netze & Geräte
TK-Anlage VoIP - DECT Erweiterung (15)

Frage von Lynkon zum Thema TK-Netze & Geräte ...