76109
Goto Top

Habe ein Problem mit Hex-Werten in einem Sql-String für eine WMI-Abfrage

Hallo!

Ich möchte im Where-Teil eine Konstante Seriennummer übergeben z.B. "Where SerialNumber=Zahl"

Das Problem dabei ist, dass Zahlen Longtypisch bei gesetztem Bit-31 (>7FFFFFFF) als negative Zahl interpretiert werden z.B Hex '&HB001D964' als '-1342056092' anstatt '2952911204', was zu einem Abfrage-Fehler führt.

Momentan behelfe ich mir damit:
dSerialNumber = CDbl("&H1" & Hex(constSerialNumber)) - CDbl("&H100000000") '1B001D964h - 100000000h
was mir auch das gewünschte Ergebnis von '2952911204' liefert

Es muss doch aber auch eine Möglichkeit geben einen Hexwert direkt im Sql-String zu definieren?

Versuche mit '&H' oder '0xB00...' funktionieren jedenfals nicht und Google hat mich bisher auch nicht weiter gebrachtface-sad

Geht das überhaupt?


Gruß Dieter

Content-Key: 187560

Url: https://administrator.de/contentid/187560

Printed on: April 19, 2024 at 09:04 o'clock

Member: Guenni
Guenni Jul 05, 2012 at 18:56:35 (UTC)
Goto Top
Hi Didi,

Siehe => http://dev.mysql.com/doc/refman/5.1/de/hexadecimal-values.html

select cast(x'B001D964' as unsigned);  

. . . ergibt 2952911204.

Gruß
Günni
Mitglied: 76109
76109 Jul 05, 2012, updated at Jul 06, 2012 at 05:16:26 (UTC)
Goto Top
Hallo Günni!

Vielen Dank für den Tip und den dazugehörigen Linkface-wink

Leider funktioniert das mit dem Sql-String für die WMI-Abfrage nicht. Habe schon alle möglichen Variationen versucht und es will einfach nicht gehen. Habe jetzt auch keine Lust mehr, mich weiter damit zu beschäftigen und lass es mal so, wie es ist.


Gruß Dieter

PS. SQL für WMI nennt sich WQL