Forum: PC-Programmierung Mit Batch in INI-File schreiben


von Leon E. (adiagi)


Lesenswert?

Hi Leute,

Hab mal wieder ein Problem.

Hatte bereits geschrieben, wegen dem INI-File lesen.
Das hat jetzt dank eurer Hilfe geklappt.
Nun versuch in einen Wet im INI-File zu ändern, also zu schreiben.

>type C:\INIC_Test_Automation\Flashersions\Flashversions.ini | find /v 
>"FrameRate=" > C:\INIC_Test_Automation\Flashersions\Flashversions.ini
>echo FrameRate=Agit>> C:\INIC_Test_Automation\Flashersions\Flashversions.ini

Hab das mit dem obigen Codestück versucht.
Jedoch wird mein ganzes INI-File mit den Parametern gelöscht und die 
eine Zeile mit FrameRate=Agit eingefügt.

Will aber dass der Rest nicht geläscht wird, sondern nur, dass Nach dem
FrameRate=Agit steht.

Vielen Dank

Gruß Agit

: Verschoben durch Moderator
von Ralf D. (dreilira)


Lesenswert?

Hi,
das Schreiben ist nicht so trivial. Ich meine, das kann schon mit einem 
gewissen Aufwand klappen, aber vertrauen würde ich dem Programm dann 
trotzdem nicht.

Mach Dir nicht so viel Mühe mit Batch, nimm dazu ein fertiges Tool. Z.B. 
Setini von http://www.ericphelps.com/setini/, oder Du programmierst 
gleich in einer Script-Sprache wie z.B. AutoIt.

Das macht das Programm auch lesbarer.

Gruß
Ralf

von Alexander S. (esko) Benutzerseite


Lesenswert?

1
@ECHO OFF
2
REM Sprache:  Windows Batch
3
REM Autor:    mikrocontroller.net/user/show/Esko
4
REM Zweck:    Einen Wert in einer .ini Datei ändern
5
REM Hinweise: %datei% darf kein Leerzeichen enthalten.
6
7
set datei=C:\INIC_Test_Automation\Flashersions\Flashversions.ini
8
type %datei% | find /v "FrameRate=" > %datei%.temp
9
echo FrameRate=Agit >> %datei%.temp
10
del %datei%
11
move %datei%.temp %datei%

von Leon E. (adiagi)


Lesenswert?

Hi ,
@Ralf
Vielen Dank für den Tipp werd ich mir anschauen.
@Alexander
Vielen Dank genau das habe ich gesucht. Funkt. einwandfrei.

Gruß Agit

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.