none
SCCM: TS > erstzten von Variabeln in Unattend.xml RRS feed

Alle Antworten

  • Klar geht das, aber ohne weitere Details wird's schwer, das Problem herauszufinden.
    Mittwoch, 29. September 2010 11:25
    Beantworter
  • Hallo Torsten,

    ich hab in meiner TS die benötigten Variabeln erstellt und mi inhalt gefüllt. In meiner unattend.xml die ich bei dem Tast "Brtiebssystem anwenden" verwende habe ich an den Betrffenden Stellen %Variabel% eingetragen. Leider werden die Werde nich angewendet. Wenn ich die Werde direkt in die unattend.xml schreibe bekommen ich bei der Win7 installation das was ich haben will.

    Kann ich die unattend.xml nach der Installation noch auf dem System finden?

    Gruß

    Wolfgang

    Mittwoch, 29. September 2010 11:53
  • In %windir%\Panther liegen die Windows-Logs. Ansonsten noch das smsts.log und die Webreports.
    Wo hast Du wie welche Werte eingetragen und wie sieht der betreffende Teil in der unattend.xml aus?
    Mittwoch, 29. September 2010 13:26
    Beantworter
  • ich habe in den unattend.xml, die bei mir unattend-variabel.xml heist, folgende eingetragen...

    ---
       <settings pass="oobeSystem">
            <component name="Microsoft-Windows-International-Core" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <InputLocale>%OSDInputLocale%</InputLocale>
                <UILanguage>%OSDUILanguage%</UILanguage>
                <UILanguageFallback></UILanguageFallback>
                <UserLocale>%OSDUserLocale%</UserLocale>
                <SystemLocale>%OSDSystemLocale%</SystemLocale>
            </component>
        </settings>
    ---

    Die Variabel habe ich vorerst in der TS mit folgenden Werten eingerichtet...

    OSDInputLocale=de-DE; en-US
    OSDUILanguage=de-DE
    OSDUserLocale=de-DE
    OSDSystemLocale=en-US

    Im smsts.log sind die Variabel alle ohne Fehler deklariert worden. Auch beim übertragen der Unattend_Variabel.xml ist kein Fehler aufgetreten.

    An welcher Stelle im log kann man die Variabel zuweisung sehen?   

    Donnerstag, 30. September 2010 07:11
  • Ich hab's mal mit genau der xml ausprobiert => funktioniert bestens. Einzige Ausnahme: ich hab die Variable Sprache genannt, auf de-DE gesetzt und für alle Optionen verwendet (und statt x86 amd64, da ich ein Win7 x64 im Testlab habe).

      <settings pass="oobeSystem">
     <component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <InputLocale>%Sprache%</InputLocale>
      <SystemLocale>%Sprache%</SystemLocale>
      <UILanguage>%Sprache%</UILanguage>
      <UILanguageFallback>%Sprache%</UILanguageFallback>
      <UserLocale>%Sprache%</UserLocale>
      </component>
      </settings>

     

    Donnerstag, 30. September 2010 17:17
    Beantworter
  • Genau das selbe mache ich auch im Live system bei mir und es funktioniert gut. ICh habe noch ein script was dir alle gesetzetn variablen anzeigt. Wenn du willst kann ich dir das am Montag posten

    Gruß

    Newibo

    Freitag, 1. Oktober 2010 16:40
  • Im smsts.log sind die Variabel alle ohne Fehler deklariert worden.

    Ich denke nicht, dass so ein Skript hier etwas anderes anzeigt, als das Logfile ... wer trotzdem neugierig ist, der kann folgendes Skript verwenden:

    Set objTSvars = CreateObject("Microsoft.SMS.TSEnvironment")
    For Each objVar In objTSvars.GetVariables
    WScript.Echo objVar & ": " & objTSvars(objVar)
    Next

     

    Montag, 4. Oktober 2010 06:47
    Beantworter
  • genau das hätte ich auch vorgschlagen.
    Montag, 4. Oktober 2010 12:30
  • hier mein XML file

    <?xml version="1.0" encoding="utf-8"?>
    <unattend xmlns="urn:schemas-microsoft-com:unattend">
      <settings pass="oobeSystem">
        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
          <OOBE>
            <NetworkLocation>Work</NetworkLocation>
          </OOBE>
        </component>
        <component name="Microsoft-Windows-International-Core" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
          <InputLocale>%location%</InputLocale>
          <SystemLocale>%location%</SystemLocale>
          <UILanguage>%location%</UILanguage>
          <UILanguageFallback>%location%</UILanguageFallback>
          <UserLocale>%location%</UserLocale>
        </component>
      </settings>
      <cpi:offlineImage cpi:source="wim:c:/documents%20and%20settings/user/desktop/captureimage/capture.wim#1" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
    </unattend>
    Montag, 4. Oktober 2010 12:42
  • Was steht denn in %windir%\panter\unattenedGC\setupact.log (in den [MUIUNATTEND.EXE]-Bereichen)? Werden da die Variablen aufgelöst / ersetzt?

    Dienstag, 5. Oktober 2010 08:24
    Beantworter
  • Hallo Torsten,

    also das mir den Variabe erstzen scheint nicht richtg zu funtionieren. Und zwar habe ich mal den Beispiel mit %Sprache% aufgegriffen und getestet. Dabei ist auch nicht die Variabel in der Unattendet.xml umgestzt worden, dem im %windir%\panter\unattenedGC\setuperr.log sind vier fehler zu sehen

    --- setuperr.log

    [MUIUNATTEND.EXE] UILanguage is not installed in the system: %Sprache%. error: 87
    [MUIUNATTEND.EXE] Failed to set system locale to "%Sprache%".
    [MUIUNATTEND.EXE] Failed in setting current user locale to %Sprache%. Error code is 0x7b
    [MUIUNATTEND.EXE] Failed to set user locale to "%Sprache%", or fail to apply the same settings to default user accont/system accounts/new user account. Error code is 0x7b.

    ---

    Im smsTS.log sind folgende Punkte bezüglich Variabel und unattend.xml zu finden

    --- smsTS.log

    Instruction name: Sprache. Instruction pointer: 6
    Set a global environment variable _SMSTSCurrentActionName=Sprache
    Set a global environment variable _SMSTSNextInstructionPointer=6
    Set a global environment variable _SMSTSLogPath=X:\windows\TEMP\SMSTSLog
    Expand a string: tsenv.exe "Sprache=de-DE"
    Expand a string:
    Command line for extension .exe is "%1" %*
    Set command line: tsenv.exe "Sprache=de-DE"
    Start executing the command line: tsenv.exe "Sprache=de-DE"
    !--------------------------------------------------------------------------------------------!
    Expand a string: WinPEandFullOS
    Executing command line: tsenv.exe "Sprache=de-DE"
    Finished with error code 0
    Process completed with exit code 0
    !--------------------------------------------------------------------------------------------!
    Successfully complete the action (Sprache) with the exit win32 code 0

    ...

    Successfully copied configuration file E:\_SMSTaskSequence\Packages\001000D8\sprache.xml to E:\_SMSTaskSequence\unattend.xml

    ...

    In den anderen Bereiche wie Rechner Namen, Netzwerkeinstellungen und Treiber finde ich im Log immer den entsprechenden Eintrag da zu.

    Gibt es beim ersetzen der Variabeln in der unattend.xml auch einen enteprechenden Eintrag? Wenn Ja, wann sollte er erscheinen?

     

    Gruß

    Wolfgang

    Mittwoch, 6. Oktober 2010 07:54
  • --- setuperr.log

    [MUIUNATTEND.EXE] UILanguage is not installed in the system: %Sprache%. error: 87
    [MUIUNATTEND.EXE] Failed to set system locale to "%Sprache%".
    [MUIUNATTEND.EXE] Failed in setting current user locale to %Sprache%. Error code is 0x7b
    [MUIUNATTEND.EXE] Failed to set user locale to "%Sprache%", or fail to apply the same settings to default user accont/system accounts/new user account. Error code is 0x7b.


    Hier siehst Du, dass die Variable eben NICHT ersetzt wird (es steht ja noch %Sprache% im Logfile, anstatt zB de-DE).
    Wo und wie setzt Du denn diese Variable genau? In der TS mit einem "Set Task Sequence Variable"-Schritt? Wenn ja: wie ist der denn genau konfiguriert?
    Mittwoch, 6. Oktober 2010 08:04
    Beantworter
  • Die Variabe setze ich in der TS mit "Tasksequenzvariable festlegen" , Tasksequenzvariable: Sprache und Wert: de-DE.

     

    --- smsTS.log

    Instruction name: Sprache. Instruction pointer: 6
    Set a global environment variable _SMSTSCurrentActionName=Sprache
    Set a global environment variable _SMSTSNextInstructionPointer=6
    Set a global environment variable _SMSTSLogPath=X:\windows\TEMP\SMSTSLog
    Expand a string: tsenv.exe "Sprache=de-DE"
    Expand a string:
    Command line for extension .exe is "%1" %*
    Set command line: tsenv.exe "Sprache=de-DE"


    Start executing the command line: tsenv.exe "Sprache=de-DE"

    !--------------------------------------------------------------------------------------------!
    Expand a string: WinPEandFullOS
    Executing command line: tsenv.exe "Sprache=de-DE"
    Finished with error code 0
    Process completed with exit code 0
    !--------------------------------------------------------------------------------------------!
    Successfully complete the action (Sprache) with the exit win32 code 0

    ...

    Mittwoch, 6. Oktober 2010 09:22
  • Hallo Wolfgang

    Hast du es zum laufen gebracht?

     

    Ich stehe auch am Berg. In der XML wird die Variable nicht ersetzt

    Andreas

    Donnerstag, 25. November 2010 14:15
  • Hallo zusammen,

     

    mitlerweile habe ich meine SCCM Infrastruktur neu aufgebaut und alles Funktioniert Prima. 

    Und das ganze nur weil ich das darunterligende Betriebssysten von 2003 x64 auf 2008 R2 aktualiesien wolte und ich mich für eine Neu installation entschieden hatte,  gab es beim Restor der Datrenbank Probleme und ich muste von Null anfangen.

    Die Datenkank konte ich mitlerweile mittels SQL Reparatur Funktionen wieder in einer VM in einem SCCM zum leben erwecken. Bei der Reparatur wurden aber einige Einträge entfernt, so das ich sie nur noch als Anschaungsobjekt verwenden kann.

     

    Gruß

     

    Wolfgang  


    Donnerstag, 19. Mai 2011 11:05