Ini-Datei in allen Profile Verzeichnissen patchen

WolleKette
Beiträge: 61
Registriert: 12 Nov 2013, 15:19

Ini-Datei in allen Profile Verzeichnissen patchen

Beitrag von WolleKette »

Hallo,

ich möchte eine Ini-Datei in allen Benutzerprofilen patchen.
Leider gelingt es mir nicht, den Verzeichnissnamen korrekt anzugeben. Im Moment mache ich das so:

Code: Alles auswählen

...
Patches_Ini "%UserProfileDir%\Test\Test.ini" /AllNtUserProfiles 
...

[Patches_Ini]
add [Settings] Language File="irgendwas"
Als Resultat erhalte ich folgende Fehlermeldungen im Logfile: (Hinweis: Es gibt 3 Benutzerprofile auf dem Testrechner)
Execution of Patches_Ini

Patching: %UserProfileDir%\Test\Test.ini
Info: This file does not exist and will be created
Error: File Test.ini could not be created in Directory %UserProfileDir%\Test\. ("Invalid filename")

Patching: %UserProfileDir%\Test\Test.ini
Info: This file does not exist and will be created
Error: File Test.ini could not be created in Directory %UserProfileDir%\Test\. ("Invalid filename")

Patching: %UserProfileDir%\Test\Test.ini
Info: This file does not exist and will be created
Error: File Test.ini could not be created in Directory %UserProfileDir%\Test\. ("Invalid filename")
Mit irgendeiner anderen globalen Konstanten (z. B. %SystemRoot%) und dann natürlich ohne die /AllNtUserProfiles Option funktioniert es problemlos.

Wäre für jede Hilfe Dankbar.
holgerv
Beiträge: 288
Registriert: 20 Aug 2012, 09:35

Re: Ini-Datei in allen Profile Verzeichnissen patchen

Beitrag von holgerv »

Die für "/AllNtUserProfiles" erforderliche (kostenpflichtige) Erweiterung "User Profile Management" hast Du?

http://download.uib.de/opsi4.0/doc/html ... al-modules

Gruß


Holger
Benutzeravatar
embl-structures
Beiträge: 327
Registriert: 13 Jan 2010, 18:41
Wohnort: Heidelberg
Kontaktdaten:

Re: Ini-Datei in allen Profile Verzeichnissen patchen

Beitrag von embl-structures »

holgerv hat geschrieben:Die für "/AllNtUserProfiles" erforderliche (kostenpflichtige) Erweiterung "User Profile Management" hast Du?

http://download.uib.de/opsi4.0/doc/html ... al-modules
Hmm. ich denke, das die "/AllNtUserProfiles" fuer Patch-Sektionen eine Standard-Funktionalitaet ist, die nichts mit dem "User Profile Management"-Modul zu tun hat.
frank
Benutzeravatar
embl-structures
Beiträge: 327
Registriert: 13 Jan 2010, 18:41
Wohnort: Heidelberg
Kontaktdaten:

Re: Ini-Datei in allen Profile Verzeichnissen patchen

Beitrag von embl-structures »

WolleKette hat geschrieben:Hallo,

ich möchte eine Ini-Datei in allen Benutzerprofilen patchen.
Leider gelingt es mir nicht, den Verzeichnissnamen korrekt anzugeben. Im Moment mache ich das so:

Code: Alles auswählen

...
Patches_Ini "%UserProfileDir%\Test\Test.ini" /AllNtUserProfiles 
...

[Patches_Ini]
add [Settings] Language File="irgendwas"
Als Resultat erhalte ich folgende Fehlermeldungen im Logfile: (Hinweis: Es gibt 3 Benutzerprofile auf dem Testrechner)
Execution of Patches_Ini

Patching: %UserProfileDir%\Test\Test.ini
Info: This file does not exist and will be created
Error: File Test.ini could not be created in Directory %UserProfileDir%\Test\. ("Invalid filename")

[...]
Mit irgendeiner anderen globalen Konstanten (z. B. %SystemRoot%) und dann natürlich ohne die /AllNtUserProfiles Option funktioniert es problemlos.

Wäre für jede Hilfe Dankbar.
Das Problem koennte im unterschiedlichen Handling von Strings in primaeren und sekundaeren Sektionen liegen. Der Aufruf von Patches_Ini erfolgt in ener primaeren Sektion und entsprechend muessen Strings dort mit "+" zusammengehaengt werden. Siehe auch das Beispiel fuer Patches-Sektionen im WInst-Handbuch Kapitel 8.2.1. Versuche den Aufruf mal mit

Patches_Ini %UserProfileDir% + "\Test\Test.ini" /AllNtUserProfiles

Vielleicht hilft das
frank
WolleKette
Beiträge: 61
Registriert: 12 Nov 2013, 15:19

Re: Ini-Datei in allen Profile Verzeichnissen patchen

Beitrag von WolleKette »

Hallo,

das mit dem 'Addieren' der Strings funktioniert leider auch nicht.
Das Beispiel aus dem Handbuch funktioniert weil dabei nicht %UserProfileDir% sondern eine andere Variable verwendet wurde. Zudem noch nicht mal eine globale sondern eine lokale.
Wie ich schon geschrieben hatte, funktioniert es mit %SystemRoot% ja auch. Oder z. B. %ProgramFilesDir%. Aber dann hat man ja auch keinen /AllNtUserProfiles Parameter.
Benutzeravatar
SisterOfMercy
Beiträge: 1556
Registriert: 22 Jun 2012, 19:18

Re: Ini-Datei in allen Profile Verzeichnissen patchen

Beitrag von SisterOfMercy »

It is probably not an option to copy test.ini from %scriptpath%, is it?
Bitte schreiben Sie Deutsch, when I'm responding in the German-speaking part of the forum!
WolleKette
Beiträge: 61
Registriert: 12 Nov 2013, 15:19

Re: Ini-Datei in allen Profile Verzeichnissen patchen

Beitrag von WolleKette »

No unfortunately not. The file already exists and needs to be changed.
Benutzeravatar
embl-structures
Beiträge: 327
Registriert: 13 Jan 2010, 18:41
Wohnort: Heidelberg
Kontaktdaten:

Re: Ini-Datei in allen Profile Verzeichnissen patchen

Beitrag von embl-structures »

WolleKette hat geschrieben:das mit dem 'Addieren' der Strings funktioniert leider auch nicht.[...]
Ich konnte das Verhalten teilweise reproduzieren. Bei mir wird allerdings jeweils C:\WINDOWS\system32\%UserProfileDir%\Test\Test.ini gepatcht (so viele Male wie es Benutzerprofile gibt) und ich bekomme keine Fehlermeldung, dass das File nicht erstellt werden konnte. Das ist aber vielleicht ein lokales Konfigurationsproblem (Homeverzeichnis des pcpatch-users?). Jedenfalls:

Das ist ein Bug (siehe viewtopic.php?f=6&t=5670): Die Variable wird nur dann expandiert, wenn sie komplett mit Kleinbuchstaben geschrieben wird! Also %userprofiledir% und nicht %UserProfileDir%.

frank
Benutzeravatar
tobias
Beiträge: 1294
Registriert: 20 Aug 2008, 12:36
Wohnort: Braunschweig
Kontaktdaten:

Re: Ini-Datei in allen Profile Verzeichnissen patchen

Beitrag von tobias »

grade mal getestet, so funktioniert das bei mir.

Code: Alles auswählen

[actions]
Patches_TEST.INI %userprofiledir%\test.ini /AllNtUserProfiles

[Patches_TEST.ini]
add [secdummy] dummy1=add1
edit:
Benutzeravatar
embl-structures
Beiträge: 327
Registriert: 13 Jan 2010, 18:41
Wohnort: Heidelberg
Kontaktdaten:

Re: Ini-Datei in allen Profile Verzeichnissen patchen

Beitrag von embl-structures »

tobias hat geschrieben:grade mal getestet, so funktioniert das bei mir.

Code: Alles auswählen

[actions]
Patches_TEST.INI %CurrentProfileDir%\test.ini /AllNtUserProfiles

[Patches_TEST.ini]
add [secdummy] dummy1=add1
Aha, ein undokumentiertes Feature :-)
Antworten