AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Probleme mit WriteBinaryData

Ein Thema von merlin2004 · begonnen am 10. Sep 2006 · letzter Beitrag vom 11. Sep 2006
Antwort Antwort
merlin2004

Registriert seit: 10. Sep 2006
5 Beiträge
 
#1

Probleme mit WriteBinaryData

  Alt 10. Sep 2006, 23:25
Ich hab hier einen REG_BINARY Wert der etwas seltsam aufgebaut ist:

02 00 4C 6F 6B 61 6C 65 73 20 4E 65 74 7A 77 65 72 6B 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 B2 A8 C0 00 FF FF FF

Einzelne Werte:
3-18 = String "Lokales Netzwerk"
19-34 = Platzhalter
37-40 = IP Adresse (0 178 168 192)
41-44 = Subnetmaske (0 255 255 255)

Den kompletten String habe ich bereits zerlegt in 3 Werte: Bezeichnung, IP Adresse, Subnetmaske.
Seltsamerweise ist die IP Adresse und die Subnetmaske gedreht eingetragen. Die Bezeichnung aber nicht.
Die Werte von IP Adresse und Subnetmaske, sowie der Bezeichnung sollen geändert und mit WriteBinaryData zurückgeschrieben werden.
Ausgelesen und zerlegt habe ich das Ganze wie gesagt schon. Aber ich hänge beim zurückschreiben.

Ich habe Ein Stringrid mit den geänderten Werten und will diese nun zurückschreiben - hab aber keinen Plan wie ich da ran gehen muss.

Kann mir jemand unter die Arme greifen?

Danke
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Probleme mit WriteBinaryData

  Alt 11. Sep 2006, 00:09
Die Werte stehen gedreht weil sie als Integer/Cardinal geschrieben werden und auch gedreht im speicher stehen. Wo liegt das Problem beim zurück schreiben? Eigentlich funktioniert es genau umgekehrt zum lesen. Wie liest du das ganze bisher?
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
merlin2004

Registriert seit: 10. Sep 2006
5 Beiträge
 
#3

Re: Probleme mit WriteBinaryData

  Alt 11. Sep 2006, 12:37
Zitat von SirThornberry:
Die Werte stehen gedreht weil sie als Integer/Cardinal geschrieben werden und auch gedreht im speicher stehen. Wo liegt das Problem beim zurück schreiben? Eigentlich funktioniert es genau umgekehrt zum lesen. Wie liest du das ganze bisher?
Das ist genau das Problem... ich hab keinen Plan...
Ich denke ich muss ein byte array (buffer für writebinarydata) definieren aber wie bekomme ich die Daten dort vernünftig rein? Ich hab einen String (Bezeichnung) und dann noch 2 TStringDynArrays (IP Adresse und SubNetmaske). Ich setz die arrays mit einer explode function entsprechend zusammen, da ich ja die Punkte zwischen den einzelnen Octets wegbekommen muss. Aber ich hänge gerade echt am Zusammenbauen des buffers für writebinarydata

Gruß
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz