Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: adminnaddel am 28.01.05 - 14:32:12
-
Hallo liebe Gemeinde,
einiges habe ich innerhalb des Forums gefunden, aber nicht wirklich hat mich etwas weitergebracht. Der liebe Ulrich hatte mal ne schöne API Lösung, die aber auch nicht unbedingt funzt ::)
Was möchte ich?
In 3000 x notes.ini´s zwei Zeilen ändern! Hinzufügen über LS klappt, aber suche mir einen bestimmten String, nur wenn String gefunden, dann ersetze die gesamte Zeile!
Hatte noch nie jemand dieses Bedürfnis?
lg
Andy
-
Hallo,
ist das jetzt eine Feststellung und du willst uns den Code gleich verraten, oder
fragst, wie das geht?
Falls zweiteres, dann frage ich dich, wo steht der String den du suchst: in einer Variable oder in einem Variableninhalt?
Gruß von Ekki
-
@elajen .. in einer Variable!
Meine Aussage:
- ich weiß wie es funzt über LS Zeilen hinzuzufügen
- ich wüsste aber schon gerne wie verändere ich eine bestimmte Zeile!
lg Andy
-
guckst du http://www.atnotes.de/index.php?topic=4159.msg20917#msg20917
-
@Eknori ... ich musste doch leider schon oben schreiben, das ich dich ja für diesen Code beneide, dieser aber nicht funzt 8)
lg
Andy
PS: Beim copy & paste kriege ich nur .... not a sub or function name
Call InsertIntoArray(IniFileLines,Counter-1,Counter,INI_Section)
-
ahh, sag das doch gleich
Sub InsertIntoArray(InsertArray As Variant,ArrayLen As Long,PositionToInsert As Long,ValueToInsert As String)
' this function will insert a value into an array
' Call InsertIntoArray(IniFileLines,Counter-1,Counter,INI_Section)
ArrayLen = ArrayLen + 1
Redim TempArray(ArrayLen) As String
Redim Preserve InsertArray(ArrayLen)
Dim ArrayIndex As Long
For ArrayIndex = 0 To PositionToInsert - 1 ' insert rows from InsertArray up to the PositionToInsert
TempArray(ArrayIndex) = InsertArray(ArrayIndex)
Next
' now put in ValueToInsert
TempArray(PositionToInsert) = ValueToInsert
For ArrayIndex = PositionToInsert + 1 To ArrayLen
TempArray(ArrayIndex) = InsertArray(ArrayIndex - 1)
Next
' now put values back into InsertArray
For ArrayIndex = 0 To ArrayLen
InsertArray(ArrayIndex) = TempArray(ArrayIndex)
Next
End Sub
-
Warum machst Du das eigentlich, Ulrich:
ValueToInsert As String
Bei so einer allgemeinen Routine hättest Du doch gleich viel mehr Fälle "erschlagen", wenn Du da Variant erlaubst ...
Bernhard
-
der code ist schon uralt; wahrscheinlich wusste ich es damals nicht besser
-
okay .. ich habe mal
INI_PATH = "C:\Windows\"
INI_FileName = "notes.ini"
INI_Section = "[Notes]"
INI_Variable = "Directory"
INI_Value = "c:\notes\data"
aber wo ist denn der neue Value definiert? Finde ich einfach nicht!
lg Andy
-
Aufruf mit
Dim ReturnValue As String
dummy = INI_write ("c:\programme\lotus\Notes\", "Notes.ini","[Notes]","$HDLANG", "GR", ReturnValue )
-
@Eknori .... vielen Dank .... aber ich lasse das jetzt mit dem LS bzgl. der notes.ini
Diese blöden ini´s sind nur plain text Dateien .. die ich mit einem VBS ansprechen und verändern werde! Value-Austausch wenn SearchString gefunden!
Vielen Dank
Andy
-
aber ich lasse das jetzt mit dem LS bzgl. der notes.ini
*vor den Kopf klatsch*
und warum diskutieren wir dann hier ??
-
Und über Policy ändern ist keine Option?
-
Moin @all,
@eknori: sorry, wollte dir das nicht an den Kopf klatschen ;D, aber du bist nach und nach mit code-schnippseln rausgerückt, womit ich zunächst leider nichts anfangen konnte!
Ich möchte das ja üner LS realisieren und werde mir nun mal mühe geben!
@wfh: demnke das erfüllt nicht den Zweck! Bin mir da baer nicht ganz sicher!
lg
Andy
-
Upps .. da gibt es soch noch leider ein kleines Problem:
er nimmt zwar die eine Notes.ini aber nicht die, die im Unterverzeichnis liegen :o
Gibt es denn überhaupt mit LS die Möglichkeit auch Unterordner mit einzubeziehen?
lg
Andy
-
ich weiss nicht.. bin ich jetzt blöd, oder seid Ihr's ... ;)
notes.ini ändern per Script... Warum fliegt Ihr solche schleifen ? Habe ich irgendwas überlesen ?
abfrage = NotesSession.GetEnvironmentString( "DiesenIniWertAbfragen" )
if abfrage <> "" then
call NotesSession.SetEnvironmentString( "irgendeineZeile" , "irgendeinwert" )
else
call NotesSession.SetEnvironmentString( "irgendeineZeile" , "" )
end if
SetEnvironmentstring mit leerem Wert löscht die Zeile...
Gruß
Tode
-
Torsten, wenn Du blöd bist, dann sind wir im gleichen Club .... ich frag mich das schon die ganze Zeit, hatte nur keine Lust zu schreiben .....