Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Eintrag in eine CFG-Datei schreiben bzw. löschen

Frage Entwicklung Installation

Mitglied: Pillack

Pillack (Level 1) - Jetzt verbinden

13.05.2010, aktualisiert 18.10.2012, 5520 Aufrufe, 2 Kommentare

Hallo und schönen guten Tag ins Forum. Mein Name ist Christian und ich komme aus Dortmund. Ich habe meine Stadt in den Flugsimulator X von Microsoft eingebunden.

Ich möchte automatisiert mittels einer Installationsroutine eine so genannte Addon Scenery in der Bibliothek des Flugsimulators X von Microsoft anmelden.

Kannst mir jemand eine kleine Hilfestellung geben, wie ich mittels einer Batch-Datei oder ähnlichem, einen Abschnitt in eine CFG-Datei Eintrage bzw. wieder Lösche?

Der Name dieser Szenerie ist Dortmund City und der Eintrag soll so aussehen:

[Area.xxx]
Title=Dortmund City
Local=Addon Scenery\Dortmund City
Active=FALSE
Layer=xxx
Required=FALSE

Wobei xxx für eine fortlaufende Nummer seht.


Auch stundenlanges Suchen im Internet brachte keinen befriedigenden Erfolg, obwohl einige Werkzeuge fürs An/Abmelden von Szenerien in Netz vorliegen, aber leider sind diese nicht für mich geeignet.

Meine Vorstellung für eine Prozedur sieht so aus:

Szenerie-Eintrag (Installation):

1. Richtigen Pfad zur Scenery.cfg finden.
2. Sicherheitskopie der originalen Scenery.cfg mit mit Namen "ORG_Dortmund City.cfg" erstellen.
3. Der Computer soll innerhalb der Datei Scenery.cfg nach dem Text "Dortmund City" suchen. Falls vorhanden, dann
soll er keine Änderungen an der Scenery.cfg vornehmen.
4. Wenn der Text "Dortmund City" nicht vorhanden ist, dann soll er einen Block mit forlaufender Nummer erstellen.

Der Block/Abschnitt soll so aussehen, wobei xxx die fortlaufende bzw. der letzte Eintrag ist.

[Area.xxx]
Title=Dortmund City
Layer=xxx
Active=TRUE
Required=FALSE
Local=Addon Scenery\Dortmund City
Remote=


Szenerie-Austrag (Deinstallation):

1. Richtigen Pfad zur Scenery.cfg finden.
2. Suche in der Datei Scenery.cfg nach dem Text "Dortmund City", unabhängig von der Nummer.
3. Wenn gefunden, den Kompletten Block entfernen.
4. Datei "ORG_Dortmund City.cfg" löschen.

Mein Pfad zur Scenery.cfg ist: %allusersprofile%\Microsoft\FSX\scenery.cfg
Aber wie muss der Pfad bei WinXP aussehen?

Ich wäre sehr Dankbar, wenn mir jemand in dieser Angelegenheit weiterhelfen könnte und hoffe somit auf eine Antwort.

Grüsse:
Christian

PS:
Mein System:
Win7 64bit, Intel Core2 Duo E8400
4GB RAM, Board: Asus P5QSE
Mitglied: bastla
13.05.2010, aktualisiert 18.10.2012
Hallo Christian!

Ein Stück für den "Installations"-Teil hatten wir ja schon mal hier ...

... und vielleicht lässt sich ja auch für XP ein Pfad unterhalb von "%allusersprofile%" unterstellen (kann ich allerdings nur mutmaßen).

Grüße
bastla
Bitte warten ..
Mitglied: bastla
14.05.2010 um 11:10 Uhr
Hallo Christian!

Die Deinstallation könnte etwa so gehen (wobei - vorerst - die Suche wie gestern schon angemerkt nur unter "%allusersprofile%" vorgenommen wird):
01.
@echo off & setlocal 
02.
set "Suche=Title=Dortmund City" 
03.
set "Basis=%allusersprofile%" 
04.
set "Datei=scenery.cfg" 
05.
 
06.
set "cfg=" 
07.
for /f "delims=" %%i in ('dir /s /b /a-d "%Basis%\%Datei%"^|findstr /i "\\FSX\\%Datei%"') do set "cfg=%%i" 
08.
if not defined cfg echo %Datei% nicht gefunden & goto :Ende 
09.
 
10.
set "Zeile=" 
11.
for /f "delims=:" %%i in ('findstr /i /b /n /c:"%Suche%" "%cfg%"') do set "ZNr=%%i" 
12.
if not defined ZNr echo "%Suche%" nicht gefunden! & goto :Ende 
13.
 
14.
set "ANr=" 
15.
for /f "tokens=1* delims=:" %%i in ('findstr /n "^" "%cfg%"') do if %%i gtr %ZNr% if not defined ANr (set "Zeile=%%j" & call :ProcessLine1) 
16.
 
17.
if not defined ANr echo Area-Code nicht gefunden! & goto :Ende 
18.
if "%ANr%"=="NV" echo Area-Code nicht gefunden! & goto :Ende 
19.
 
20.
set "Suche=\[Area\.%ANr%\]" 
21.
set "bak=%temp%\%Datei%" 
22.
move "%cfg%" "%bak%" 
23.
set "Schreiben=True" 
24.
for /f "tokens=1* delims=:" %%i in ('findstr /n "^" "%bak%"') do set "Zeile=%%j" & call :ProcessLine2 
25.
goto :eof 
26.
 
27.
:ProcessLine1 
28.
if "%Zeile:~,1%"=="[" set "ANr=NV" & goto :eof 
29.
if "%Zeile%"=="" set "ANr=NV" & goto :eof 
30.
for /f "tokens=1* delims==" %%i in ("%Zeile%") do if /i "%%i"=="Layer" set "ANr=%%j" 
31.
goto :eof 
32.
 
33.
:ProcessLine2 
34.
echo "%Zeile%"|findstr "%Suche%">nul && (set "Schreiben=" & goto :eof) 
35.
if not defined Schreiben ( 
36.
    if "%Zeile:~,1%"=="[" set "Schreiben=True" 
37.
    if "%Zeile%"=="" set "Schreiben=True" 
38.
39.
if defined Schreiben >>"%cfg%" echo\%Zeile% 
40.
goto :eof 
41.
 
42.
:Ende 
43.
pause
Soferne das funktioniert, lässt sich die Suche nach der "scenery.cfg" auch in den oben verlinkten Installations-Ansatz integrieren.

Grüße
bastla
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

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

Ähnliche Inhalte
Batch & Shell
gelöst Batch-Skript: Messdaten in Textdatei finden und in eine neue Datei schreiben (5)

Frage von habmalnefrage zum Thema Batch & Shell ...

Batch & Shell
gelöst 2 große TXT Dateien vergleichen und Unterschiede in andere Datei schreiben (6)

Frage von sid.pdm zum Thema Batch & Shell ...

Windows Systemdateien
gelöst Registry-Schlüssel per Batch auslesen und in Datei schreiben (9)

Frage von Philzip zum Thema Windows Systemdateien ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...