joker-joke
Goto Top

Per VB-SCRIPT Inhalt an bestimmter stelle in eine INI Schreiben

Bin Totaler Anfänger und muß jetzt in eine INI Datei eine Zeile hinzufügen.

Es soll folgendes gemacht werden: Ich habe auf allen Rechner im Netzt eine INI Datei in der die Konfi für ein Programm abgelegt ist jetzzt muß ich aber eine Zeile an einer bestimmten stelle einfügen damit eine Option freigeschaltet wird kann aber nicht jedem eine neue INI drauf kopieren sonst gehen die jeweiligen einstellungen verloren. Kann mir bitte jemand helfen ??? Habe an VB-SCRIPT gedacht habe aber keinen schimmer wie ich es anstellen soll.

Content-Key: 19915

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

Printed on: April 23, 2024 at 09:04 o'clock

Member: gemini
gemini Nov 17, 2005 at 15:51:43 (UTC)
Goto Top
Hallo joker_joke,

du brauchst ein Kriterium anhand dessen das Script die 'bestimmte Stelle' erkennen kann.
Eine 'bestimmte Stelle' ist bspw. auch die Anzahl der Zeichen bis zum Ende der viertletzten Zeile abzügl. des Zahlenwertes des heutigen Wochentages und des Alters meines Großmutter face-wink

Besser wäre allerdings eine bestimmte, immer gleiche, Zeilennummer oder auch eine bestimmte unabänderliche Zeichenfolge am Zeilenanfang bzw. in der Zeile.

Der User, der das Script ausführt braucht natürlich auch Schreibrechte auf die Datei.

Gruß
gemini
Member: joker-joke
joker-joke Nov 17, 2005 at 16:07:19 (UTC)
Goto Top
Hi,

Das ist der Textblock der immer drin ist

[Word]
WordEinmalStart=1
SteuerVerz=C:\WB4000\Word\
VorlageVerz=W:\Word\
AusgabeVerz=C:\WB4000\Word\
; musterverzeichnis hier und physikalisch erforderlich
MusterVerz=C:\WB4000\Word\Muster\
ESSNorm=W:\Word\


Unter den letzten Eintrag müßte dann noch die eine Zeile rein. Die Zeilen nummer ist immer anders da die vorhergehenden einträge immer unterschiedlich sind. Und ehrlich gesagt habe ich keine ahnung wie das script aussehen muß face-sad

Gruß

Joker_joke
Member: gemini
gemini Nov 17, 2005 at 16:43:27 (UTC)
Goto Top
Schau mir das dann später mal an.

Momentan muss ich noch eigene Probleme lösen face-wink
Member: joker-joke
joker-joke Nov 17, 2005 at 16:46:27 (UTC)
Goto Top
Das wär Super face-smile

Viel Glück bei den Prob.

Gruß

Joker_joke
Member: gemini
gemini Nov 17, 2005 at 17:59:43 (UTC)
Goto Top
Versuch mal das hier:
Die Variablen strWorkDir, strInsert musst noch anpassen, evtl. auch strPathFind
Fehlerhandling etc. ist jetzt natürlich nicht eingebaut. Diese Aufgabe lege ich voller Vertrauen in deine Hände face-wink

' #### JokersZeilenzauber.vbs ####
Option Explicit
Dim objFSO, objWshNetwork, objFile
Dim strWorkDir, strText, strLine, strPathFind, strInsert
Const ForReading = 1, ForWriting = 2, ForAppending = 8
strWorkDir = "C:\_joker\whatever.ini"
strText = ""
strInsert = "Text to insert"
strPathFind = LCase("ESSNorm")
Set objFSO = Wscript.CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists(strWorkDir) Then
Set objFile = objFSO.OpenTextFile(strWorkDir, ForReading)
Do Until objFile.AtEndOfStream
strLine = objFile.ReadLine
If Left(LCase(strLine), Len(strPathFind)) = strPathFind Then
strLine = strLine & vbCrLf & strInsert
End If
strText = strText & strLine & vbCrLf
Loop
objFile.Close
Else
MsgBox "Die Datei " & strWorkDir & " wurde nicht gefunden."
End If
Set objFile = objFSO.OpenTextFile(strWorkDir, ForWriting)
objFile.Write strText
objFile.Close
strWorkDir = ""
strText = ""
strLine = ""
strPathFind = ""
strInsert = ""
' ### eof ###
Member: joker-joke
joker-joke Nov 21, 2005 at 07:33:40 (UTC)
Goto Top
Danke

Hat super geklappt face-smile