Problem mit Variablen

Post Reply
Scheitp
Posts: 27
Joined: 28. Oct 2011, 12:04
Contact:

Problem mit Variablen

Post by Scheitp » 28. Oct 2011, 13:55

Hallo,

derzeit bin ich dabei ein Paket zu erstellen, wo es nötig ist eine Variable (Zaehler) in eine andere Variable (MyVar1) zu implementieren.

Die Variable Zaehler wird bei jedem Durchlauf einen hochgesetzt und dann soll durch die Variable ein RegWert ermittelt werden.

Mit der Variable (MyVar1) soll dann der RegWert "Standard Modem" ermittelt werden.
Leider funktioniert es in meinem Script nicht. Er löst die Variable MyVar1 nicht auf.

Script:
[Set:Product]
For Zaehler,0,10,,"SET:Abfrage"

[SET:Abfrage]
Sleep 500
set MyVar1=%HKLM,"SYSTEM\ControlSet001\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\000%Zaehler%","FriendlyName"%
ReplaceEnv MyVar1
If %MyVar1% == "Standard Modem" Then "Reg:Product"

Hat da jemand eine Idee?

Vielen Dank.

Gruß
Philipp

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

Re: Problem mit Variablen

Post by Hendrik_Ambrosius » 28. Oct 2011, 18:51

Versuchen Sie noch mal einen Satz mehr % um den Ausdruck herum.
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.

Scheitp
Posts: 27
Joined: 28. Oct 2011, 12:04
Contact:

Re: Problem mit Variablen

Post by Scheitp » 31. Oct 2011, 07:57

set MyVar1=%%HKLM,"SYSTEM\ControlSet001\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\000%Zaehler%","FriendlyName"%%

So läuft es leider auch nicht...
Gibt es noch andere Ideen? ;)

LightTempler
Posts: 409
Joined: 23. Aug 2010, 13:47
Contact:

Re: Problem mit Variablen

Post by LightTempler » 31. Oct 2011, 11:09

set MyVar1=%HKLM,"SYSTEM\ControlSet001\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\000%Zaehler%","FriendlyName"%

* Ist es wirklich ControlSet1 ?
CurrentControlSet ist wesentlich wahrscheinlicher/häufiger/sinnvoller bei solchen Abfragen.



Den entstehenden String ausgeben lassen:

*Gibts zB ein führendes Leerzeichen vor der Zahl? Das ist oft ein Platzhalter für ein Minusvorzeichen bei Zahlen, die in Strings überführt werden.

* Den entstehenden String Ebene für Ebene extakt in Regedit auf dem Zielrechner verfolgen. Vllt. wurde zB eine Ebene übersehen.

Scheitp
Posts: 27
Joined: 28. Oct 2011, 12:04
Contact:

Re: Problem mit Variablen

Post by Scheitp » 31. Oct 2011, 11:41

Vielen Dank für die Antworten....

Habe es gelöst. Der String war falsch... Wieso auch immer?
{4D36E968-E325-11CE-BFC1-08002BE10318} Dort musste statt "4D36E968" muss "4D36E96D".

War mein Fehler.

So läuft es jetzt:

For Zaehler,0,10,,"SET:Abfrage"

[SET:Abfrage]
Sleep 500
set MyVar1=%%HKLM,"SYSTEM\ControlSet001\Control\Class\{4D36E96D-E325-11CE-BFC1-08002BE10318}\000%Zaehler%","FriendlyName"%%
ReplaceEnv MyVar1
If %MyVar1% == "Standard Modem" Then "Reg:Product"


Trotzdem Vielen Dank für die Bemühungen...

Gruß
Philipp

LightTempler
Posts: 409
Joined: 23. Aug 2010, 13:47
Contact:

Re: Problem mit Variablen

Post by LightTempler » 31. Oct 2011, 12:54

Ich würde trotzdem nochmal klären, ob ControlSet1 richtig ist. CurrentControlSet muss nicht immer darauf verweisen ...

Holzhacker
Posts: 9
Joined: 22. Apr 2020, 15:54
Contact:

Re: Problem mit Variablen

Post by Holzhacker » 23. Apr 2020, 14:54

Hallo zusammen,

ich würde gerne dieses Thema nochmal aufleben lassen, da ich hier komplett auf dem Schlauch stehe:
Ich möchte, eigentlich ganz simpel eine Variable mit einem Wert aus der Registry füllen um darauf zu prüfen:

Code: Select all

[Set:Check311]
SET DCU_Version=%%HKLM,"SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings","ProductVersion"%%
ReplaceEnv DCU_Version
If %DCU_Version%  == "3.1.1" Then "AppExistMsg" EndIf

[Product]
#Set:Check311,MACHINE DONTDELETE
Der Key existiert und hat den Wert "3.1.1". Beim Debuggen sehe ich aber, dass DCU_VERSION nicht befüllt wird.

Hab ich was übersehen?

Post Reply

Return to “Paketierung”

Who is online

Users browsing this forum: No registered users and 1 guest