Zeile 2 einer beliebigen Textdatei befüllen

tschmidt
Posts: 40
Joined: 10. Dec 2009, 11:33
Contact:

Zeile 2 einer beliebigen Textdatei befüllen

Post by tschmidt » 18. May 2011, 15:56

Hallo Paketierer,
Ich möchte gerne in einer Config Datei vom TotalCommander in der zweiten Zeile etwas eintragen.
Hat jemand eine Idee wie man das machen kann ?

Folgende Lösung steht mir bis jetzt zur Verfügung doch es wird ja nicht in Zeile 2 eingetragen.

Code: Select all

callhidden cmd.exe /c echo pref("browser.xyz", "abc222"); >> "%ProgramFilesDir%\Mozilla Firefox
Bitte um Hilfe.
Vielen Dank für alle Antworten

User avatar
r.wiegel
Posts: 896
Joined: 05. Feb 2010, 13:45
Location: Regensburg
Contact:

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by r.wiegel » 18. May 2011, 16:06

Hallo,

wäre das für Sie eine Alternative:
...
[SET:Installation]
...
Call xcopy /I /Y /Q "%src%\firefox.js" "%PROGRAMFILES%\Mozilla Firefox\defaults\pref\"
Call xcopy /I /Y /Q "%src%\mozilla.cfg" "%PROGRAMFILES%\Mozilla Firefox\"


firefox.js:
pref("general.config.obscure_value", 0);
pref("general.config.filename", "mozilla.cfg");
pref("network.proxy.autoconfig_url", "http://....");

mozilla.cfg:
lockPref("app.update.enabled", false);
lockPref("extensions.update.enabled", false);
lockPref("browser.search.update", false);
lockPref("browser.startup.homepage", "www.google.de");

weitere Optionen:
firefox: about:config

Gruß
Viele Grüße
Roman Wiegel
IT-Consultant

MR Datentechnik - Vertriebs- und Service GmbH

tschmidt
Posts: 40
Joined: 10. Dec 2009, 11:33
Contact:

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by tschmidt » 18. May 2011, 16:18

Vielen Dank für Ihre Antwort.
Leider hilft mir das wenig weiter, da es nicht, wie fälschlicherweise von mir im "Code" benannt um ein Firefox Paket handelt sondern um ein TotalCommander Paket.
Ich muss in die Zeile 2 der wincmdu.ini einen Eintrag setzen.

In der ersten Zeile steht : "[Configuration]". Der von mir gewünschte Eintrag muss in den Bereich hinein.

Geht das evtl mit der ini:Prduct Sektion ?
Add ?

Mir steht zur Zeit nur die Dokumentation von Emp12.X zur Verfügung, deshalb bin ich leider etwas blind.

User avatar
r.wiegel
Posts: 896
Joined: 05. Feb 2010, 13:45
Location: Regensburg
Contact:

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by r.wiegel » 18. May 2011, 16:59

sicher:
z.B.:
[Ini:Product]
;"C:\notes\notes.ini","Notes",,"PromptForLocation=1"
"%CommonAppData%\Datei.ini","Configuration",,"EXTMGR_ADDINS=CorpDesk.dll"

Gruß
Viele Grüße
Roman Wiegel
IT-Consultant

MR Datentechnik - Vertriebs- und Service GmbH

tschmidt
Posts: 40
Joined: 10. Dec 2009, 11:33
Contact:

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by tschmidt » 18. May 2011, 17:44

r.wiegel wrote:sicher:
z.B.:
[Ini:Product]
;"C:\notes\notes.ini","Notes",,"PromptForLocation=1"
"%CommonAppData%\Datei.ini","Configuration",,"EXTMGR_ADDINS=CorpDesk.dll"
Vielen Dank für Ihre Hilfe. Das war genau das wonach ich gesucht habe.
Jetzt benötige ich aber noch eine Fallunterscheidung da die ini Einträge nur gesetzt werden sollen wenn es ein deutsches OS ist.
If DoesRegKeyExist("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MUI\UILanguages\de-DE") == "0" Then "Deutsch" EndIf

[Deutsch]
"U:\xxx\wincmdu.ini","Configuration",,"LanguageIni=WCMD_DEU.LNG"
"U:\xxx\wincmdu.ini","Configuration",,"Mainmenu=WCMD_DEU.mnu"

User avatar
r.wiegel
Posts: 896
Joined: 05. Feb 2010, 13:45
Location: Regensburg
Contact:

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by r.wiegel » 18. May 2011, 17:49

etwa so?:
...
[Strings:07]
LangId=de
...

[Strings:09]
LangId=en
...

if %LangId%=="de" Then "INI:DeProduct" Else "INI:EnProduct" EndIf

...
[INI:DeProduct]
"U:\xxx\wincmdu.ini","Configuration",,"LanguageIni=WCMD_DEU.LNG"
"U:\xxx\wincmdu.ini","Configuration",,"Mainmenu=WCMD_DEU.mnu"

[INI:EnProduct]
"U:\xxx\wincmdu.ini","Configuration",,"LanguageIni=WCMD_ENG.LNG"
"U:\xxx\wincmdu.ini","Configuration",,"Mainmenu=WCMD_ENG.mnu"

Gruß
...
Viele Grüße
Roman Wiegel
IT-Consultant

MR Datentechnik - Vertriebs- und Service GmbH

User avatar
r.wiegel
Posts: 896
Joined: 05. Feb 2010, 13:45
Location: Regensburg
Contact:

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by r.wiegel » 18. May 2011, 17:50

ok, Englisch spielt keine Rolle, einfach weglassen..
Viele Grüße
Roman Wiegel
IT-Consultant

MR Datentechnik - Vertriebs- und Service GmbH

tschmidt
Posts: 40
Joined: 10. Dec 2009, 11:33
Contact:

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by tschmidt » 18. May 2011, 18:02

r.wiegel wrote:ok, Englisch spielt keine Rolle, einfach weglassen..
Genau richtig!
Vielen vielen Dank

tschmidt
Posts: 40
Joined: 10. Dec 2009, 11:33
Contact:

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by tschmidt » 20. May 2011, 12:07

Ich habe noch ein Problem mit meinem Paket.
Die Installation bricht mit folgendem Fehler ab:

Code: Select all

Kann INI-Datei 'U:\xxx\wincmdu.ini' nicht ändern!
Abbrechen
Ich denke es liegt daran, dass der Empirum Agent nicht die erforderlichen Rechte hat auf das Laufwerk U zu schreiben.
Laufwerk U ist bei Laptops ein ge-substes Laufwerk von C
Auf Domänenrechner ist Laufwerk U auf dem Hauptserver zu finden.

Ist es möglich Kopierbefehle und den ini:Product mit User/Client Rechten auszuführen ?
Gruß tschmidt

User avatar
Hendrik_Ambrosius
Moderator
Moderator
Posts: 7965
Joined: 13. Dec 2004, 23:10
Location: Adendorf/Lüneburg

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by Hendrik_Ambrosius » 22. May 2011, 13:56

Nein, es liegt daran dass der Agent gar kein U-Laufwerk hat.
Der Maschinenteil läuft im local system Kontext und dort sind keine SUBSTs aktiv.
Also muss das ganze in den Userteil verlagert werden:

#INI:ModINI, CLIENT

[INI:ModINI]
if %LangId%=="de" Then "INI:DeProduct" Else "INI:EnProduct" EndIf
...
Hendrik Ambrosius / Senior Presales Consultant
Mobile: +49 172 408 4447 | hendrik.ambrosius@matrix42.com
Matrix42 GmbH | Elbinger Straße 7 | 60487 Frankfurt am Main | Germany | www.matrix42.com

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of Matrix42 or of the support team.

tschmidt
Posts: 40
Joined: 10. Dec 2009, 11:33
Contact:

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by tschmidt » 23. May 2011, 12:59

Hendrik_Ambrosius wrote:#INI:ModINI, CLIENT
[INI:ModINI]
if %LangId%=="de" Then "INI:DeProduct" Else "INI:EnProduct" EndIf
funktioniert leider nicht.

Code: Select all

#Ini:ModIni, CLIENT
[Ini:ModIni]
if %LangId%=="de" Then "INI:DeProduct" EndIf

[Ini:DeProduct]
"U:\xxx\wincmdu.ini","Configuration",,"LanguageIni=WCMD_DEU.LNG"
"U:\xxx\wincmdu.ini","Configuration",,"Mainmenu=WCMD_DEU.mnu"
Haben Sie noch eine andere Idee woran das liegen kann ?
Ist es egal ob ich INI:ModINI oder SET:ModINI schreibe ?

EDIT:
Er springt schon in den SET:ModINI Bereich, aber die Variable LangID ist scheinbar leer. Da geht er nicht weiter.
Oben bei "[Strings:07]" habe ich einen neuen Eintrag "LangId=de" erstellt. Reicht das?

User avatar
Hendrik_Ambrosius
Moderator
Moderator
Posts: 7965
Joined: 13. Dec 2004, 23:10
Location: Adendorf/Lüneburg

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by Hendrik_Ambrosius » 23. May 2011, 14:13

Sorry - mein Fehler.
Die Sektion muss natürlich SET:ModINI heissen.
Bitte noch mal so checken.
Hendrik Ambrosius / Senior Presales Consultant
Mobile: +49 172 408 4447 | hendrik.ambrosius@matrix42.com
Matrix42 GmbH | Elbinger Straße 7 | 60487 Frankfurt am Main | Germany | www.matrix42.com

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of Matrix42 or of the support team.

tschmidt
Posts: 40
Joined: 10. Dec 2009, 11:33
Contact:

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by tschmidt » 23. May 2011, 17:02

Funktioniert leider nicht.

Ich habe herrausgefunden, dass er in den Bereich "[Set:ModIni]" kommt. Allerdings bricht er scheinbar bei der If Bedingung ab oder hat immer noch keine Rechte auf U.

EDIT: also über die if bedingung kommt er nicht drüber.

Code: Select all

[Set:ModIni]
Call "%Src%\test.bat"
if %LangId%=="de" Then "INI:DeProduct" EndIf
[Ini:DeProduct]
"U:\xxx\wincmdu.ini","Configuration",,"LanguageIni=WCMD_DEU.LNG"
"U:\xxx\wincmdu.ini","Configuration",,"Mainmenu=WCMD_DEU.mnu"
Gibt es ein Empirum Log an den man sehen kann wo er genau abbricht ?

User avatar
Hendrik_Ambrosius
Moderator
Moderator
Posts: 7965
Joined: 13. Dec 2004, 23:10
Location: Adendorf/Lüneburg

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by Hendrik_Ambrosius » 23. May 2011, 17:08

Nehmen Sie mal "=" statt "==".
Habe ich noch nie probiert ob das mit zwei Gleichzeichen auch geht.
Gibt es eine Fehlermeldung oder springt er die Sektion einfach nicht an?
Lassen Sich doch mal den Wert mit "SetupErrorLog LangID=%LANGID%" ausgeben im SetupErrorLog.
Rechte: HAT denn der angemeldete User Rechte auf U: zum Schreiben?!
Hendrik Ambrosius / Senior Presales Consultant
Mobile: +49 172 408 4447 | hendrik.ambrosius@matrix42.com
Matrix42 GmbH | Elbinger Straße 7 | 60487 Frankfurt am Main | Germany | www.matrix42.com

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of Matrix42 or of the support team.

tschmidt
Posts: 40
Joined: 10. Dec 2009, 11:33
Contact:

Re: Zeile 2 einer beliebigen Textdatei befüllen

Post by tschmidt » 24. May 2011, 13:15

Hendrik_Ambrosius wrote:Nehmen Sie mal "=" statt "==".
Habe ich noch nie probiert ob das mit zwei Gleichzeichen auch geht.
Gibt es eine Fehlermeldung oder springt er die Sektion einfach nicht an?
Lassen Sich doch mal den Wert mit "SetupErrorLog LangID=%LANGID%" ausgeben im SetupErrorLog.
Rechte: HAT denn der angemeldete User Rechte auf U: zum Schreiben?!
die nutzer haben rechte auf u zu schreiben. das ist das persönliche laufwerk.
= statt == funktioniert bei mir nicht.
In der Variable langid steht auch wirklich "de" drin. Trotzdem wird das if übersprungen.

Post Reply

Return to “Paketierung”

Who is online

Users browsing this forum: Ahrefs [Bot], Google [Bot] and 4 guests