1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Forum
  3. AutoIt 3
  4. Skripte

HexToDouble

  • Sprenger120
  • 30. Juni 2011 um 20:33
  • Sprenger120
    Electronic Swingin' Gentleman
    Reaktionen
    3
    Beiträge
    2.114
    • 30. Juni 2011 um 20:33
    • #1

    Hi,
    da ich heute eine Funktion gebraucht habe um einen Hex Wert in einen Double umzuwandeln, hab ich mir gedacht dass das irgentwer eventuell auch gebrauchen könnte.
    viel Spaß damit :)

    Funktion
    [autoit]

    Func HexToDouble($xHex)
    ;by Sprenger120
    ;converts a hex value into a double
    Local $tHexStruct, $tDoubleStruct, $pHexStruct, $dReturn
    $tHexStruct = DllStructCreate("int64;")
    DllStructSetData($tHexStruct, 1, $xHex)
    $pHexStruct = DllStructGetPtr($tHexStruct)
    $tDoubleStruct = DllStructCreate("double;", $pHexStruct)
    $dReturn = DllStructGetData($tDoubleStruct, 1)
    $tHexStruct = 0
    $tDoubleStruct = 0
    Return $dReturn
    EndFunc ;==>HexToDouble

    [/autoit]

    Noch ein Beispiel:

    [autoit]

    ConsoleWrite(HexToDouble("0x40544DAE14900000") & @CRLF)

    [/autoit]

    PS: Für Floats kann man

    [autoit]

    _WinAPI_IntToFloat

    [/autoit]

    benutzen

    Dateien

    HexToDouble.au3 518 Byte – 431 Downloads

    MfG Sprenger120
    Meine Werke – Quickdraw Tutorial

    Einmal editiert, zuletzt von Sprenger120 (30. Juni 2011 um 20:38)

  • Blume
    Reaktionen
    7
    Beiträge
    690
    • 30. Juni 2011 um 20:43
    • #2

    Nice Funktion Sprenger :thumbup:
    Dann können wir ja mit unserem "Projekt" voll durchstarten :D

    Edit: Ok, stillschweigen :rofl:

    mfg, Blume
    Mein PC | Schon etwas länger her :)

    [Blockierte Grafik: http://www.speedtest.net/result/4338313973.png]

  • Sprenger120
    Electronic Swingin' Gentleman
    Reaktionen
    3
    Beiträge
    2.114
    • 30. Juni 2011 um 20:44
    • #3
    Zitat

    Dann können wir ja mit unserem "Projekt" voll durchstarten :D


    PSSST! Es darf nichts nach außen dringen :D

    MfG Sprenger120
    Meine Werke – Quickdraw Tutorial

  • progandy
    Gast
    • 30. Juni 2011 um 21:04
    • #4

    Falls du mal einen Binärwert als direkten Dump einer Double-Variablen hast, dann kannst du int64 einfach mit byte[8] tauschen und bekommst die richtigen Ergebnisse ;)

  • Sprenger120
    Electronic Swingin' Gentleman
    Reaktionen
    3
    Beiträge
    2.114
    • 30. Juni 2011 um 21:27
    • #5
    Zitat

    dann kannst du int64 einfach mit byte[8] tauschen und bekommst die richtigen Ergebnisse ;)


    Na das hört sich doch nach little Endian an. Wenn ich den finde der das erfunden hat :thumbdown:

    MfG Sprenger120
    Meine Werke – Quickdraw Tutorial

  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™