tuxhunt3r
Goto Top

Windows Vista - Mögliche Problemlösung bei Problemen mit den Offlinedateien (CSC)

Hallo ans Forum

Die Offlinedateien unter Windows waren immer eine zwiespältige Sache. Einerseits ist diese Funktion enorm praktisch für Leute, die häufig mit Notebooks ohne Verbindung zum Firmennetz arbeiten. Andererseits war das Ganze bis und mit Windows XP etwas instabil. Es passierte leider zu häufig, dass der gesamte Offlinedateien-Cache korrupt wurde.

Unter Vista hat sich die Situation etwas verbessert. Der Kunde kann nun selber leichte bis mittelschwere Konflikte über das Synchronisierungscenter in der Systemsteuerung beheben. Falls das nicht reicht, muss man den gesamten CSC-Cache (=Offlinedateien-Cache) schrotten und alle Files erneut mit dem Offline-Attribut flagen. Dazu muss man erst die folgenden Reg-Befehle ausführen:

reg add \\MyPC\HKLM\System\CurrentControlSet\Services\CSC\Parameters /f >nul
reg add \\MyPC\HKLM\System\CurrentControlSet\Services\CSC\Parameters /v FormatDatabase /t REG_DWORD /d 1 /f >nul

"MyPC" muss man natürlich durch den Namen oder die IP-Adresse des entsprechenden Remotecomputers ersetzen. Danach muss der PC neu gestartet werden.

! ACHTUNG !
Mit dieser Lösung werden alle Offlinedateien, d.h. die synchronisierten wie auch die nicht synchronisierten gelöscht!
Die Gefahr von Datenverlust ist also sehr gross!
Führt also zuerst nochmals eine Synchronisation durch.
Wenn das nicht klappt, muss man als Administrator den Ownership des Ordners %Systemroot%\CSC übernehmen
und dann die nicht synchronisierten Daten von Hand aus diesem Ordner rauskopieren.


Ich habe daraus den folgenden Batch gebastelt:

:: ************************************************
:: Offlinecache-schrotten.bat
:: ==========================
:: Schrottet unter Vista den Offlinedateiencache.
:: History:
:: TuXHunT3R - 08.10.2008 - New Script
:: ************************************************

@echo off

echo.
echo.
echo ******************************
echo   Offlinecache-schrotten.bat  
echo ******************************
echo.

if /i "%1"=="" goto Manual  
if /i "%1"=="?" goto Manual  
if /i "%1"=="/?" goto Manual  
if /i "%1"=="-?" goto Manual  
if /i "%1"=="help" goto Manual  
if /i "%1"=="/h" goto Manual  
if /i "%1"=="-h" goto Manual  
if /i "%1"=="--h" goto Manual  
if /i "%1"=="/help" goto Manual  
if /i "%1"=="-help" goto Manual  
if /i "%1"=="--help" goto Manual  
if /i "%1"=="man" goto Manual  
if /i "%1"=="hilfe" goto Manual  
if /i "%1"=="fuck" goto Manual  


ping %1 -n 1 | find /i "TTL" >nul  
if /i not %errorlevel%==0 (
echo ZielPC %1 ist nicht pingbar!
goto :end
)

systeminfo /s %1 | find /i "vista" >nul  
if /i not %errorlevel%==0 (
echo Dieser Batch funktioniert nur mit Windows Vista!
goto :end
)

echo           _____ _    _ _______ _    _ _   _  _____ _ 
echo     /\   / ____^| ^|  ^| ^|__   __^| ^|  ^| ^| \ ^| ^|/ ____^| ^|
echo    /  \ ^| ^|    ^| ^|__^| ^|  ^| ^|  ^| ^|  ^| ^|  \^| ^| ^|  __^| ^|
echo   / /\ \^| ^|    ^|  __  ^|  ^| ^|  ^| ^|  ^| ^| . ' ^| ^| ^|_ ^| ^|  
echo  / ____ \ ^|____^| ^|  ^| ^|  ^| ^|  ^| ^|__^| ^| ^|\  ^| ^|__^| ^|_^|
echo /_/    \_\_____^|_^|  ^|_^|  ^|_^|   \____/^|_^| \_^|\_____(_)
echo.
echo Dieser Batch loescht den kompletten Offlinedateiencache eines Vista-PCs!
echo.
echo Zuerst die folgenden Punkte ueberpruefen:
echo - Hat der Kunde nochmals eine Synchronisierung durchgefuehrt?
echo - Falls Probleme bei der Synchronisierung aufgetaucht sind,
echo   sind diese per Systemsteuerung -^> Synchronisierungscenter behoben worden?
echo - Weiss der Kunde noch, welche Dateien er offline verfuegbar gemacht hat?
echo.
echo Werden diese Punkte nicht beachtet, droht Datenverlust,
echo da dieser Batch sowohl die synchronisierten sowie auch die nicht 
echo synchronisierten Offlinedateien loescht!
echo Der Kunde muss ausserdem alle seine als "Offline verfuegbar" gemachten Files neu auswaehlen.  
echo.
echo Sind die drei Bedingungen erfuellt?
echo Wenn ja, bitte Enter druecken.
pause >nul
echo.
echo Modifiziere die Registry...
echo.
reg add \\%1\HKLM\System\CurrentControlSet\Services\CSC\Parameters /f >nul
reg add \\%1\HKLM\System\CurrentControlSet\Services\CSC\Parameters /v FormatDatabase /t REG_DWORD /d 1 /f >nul
echo Registry modifiziert!
echo.
echo Um den Vorgang abzuschliessen, muss der PC neu gestartet werden.
echo Bitte Enter druecken, um den PC jetzt zu booten.
echo.
pause >nul

shutdown /r /m \\%1 /f /t 5

echo PC wird gebootet...
echo Nach dem Reboot muss der Kunde alle seine Offlinedateien neu einrichten.

goto :end

:Manual
echo Dieser Batch loescht den kompletten Offlinedateiencache eines Vista-PCs.
echo.
echo ACHTUNG:
echo Vor dem Ausfuehren dieses Batchs muss der Kunde nochmals eine Synchronisierung
echo durchfuehren, da der Batch alle Offlinedateien (auch die nicht synchronisierten) loescht!
echo Falls bei dieser Synchronisation Probleme auftreten, muessen diese im Synchronisierungs-
echo center in der Systemsteuerung zuerst behoben werden. 
echo Erst dann darf dieser Batch gestartet werden!
echo.
echo Syntax:
echo Offlinecache-schrotten ZielPC

:end
echo.
echo ------------------------------------------------
echo (c) October 2008 by TuXHunT3R
echo.
echo.

Gebt diesen Batch aber nicht jedem Callcenter-Dödel, die Gefahr von Datenverlust ist doch erheblich.

Mit Grüssen aus der Schweiz

TuXHunT3R

Content-Key: 98875

Url: https://administrator.de/contentid/98875

Printed on: April 25, 2024 at 07:04 o'clock

Member: problemsolver
problemsolver Oct 09, 2008 at 16:23:00 (UTC)
Goto Top
Wirklich Nice... TuXHunT3R!
Sowas hab ich schon gesucht face-smile Vielen Dank...
Gut, hoffe nur, dass die ZielPCs nicht help, man, hilfe oder f*** heissen *lol* face-wink
Gruß

Markus
Member: TuXHunt3R
TuXHunt3R Oct 09, 2008 at 19:24:51 (UTC)
Goto Top
Wenn mein Chef eines Tages rausfindet, dass ich die Zeile
if /i "%1"=="fuck" goto Manual  
in fast jeden meiner Batchs einbaue, werde ich was zu hören kriegen.... face-smile