Benutzer mit den meisten Antworten
Zeiger auf eine ref struct?

Frage
-
Wie kann ich einen Zeiger auf eine verwaltete Struktur erzeugen, um dann beginnend von Struktur-Adresse 0 byteweise die Strukturdaten auslesen zu können? Ist es überhaupt möglich, eine solche Struktur byteweise auszulesen, auch wenn die Member der Struktur kein Byteformat, sondern verschiedene Formate (wie UInt32, Int16,Char,..) haben?
Meine Struktur sieht beispielsweise so aus:
private: ref struct StrData { System::UInt16 data_a; System::UInt16 data_b; System::Byte data_c; System::Byte data_d; System::Int32 data_e; System::Int32 data_f; static array<UCHAR> ^data_g = gcnew array<UCHAR>(12); static array<ULONG> ^data_h = gcnew array<ULONG>(12); } strtest;
Wie kann ich diese Struktur byteweise durch Adressverweise umspeichern?
Hintergrund ist der, dass ich alle "Rohdaten" einer Struktur umspeichern möchte in ein Byte-Array, um diese byteweise über eine Schnittstelle versenden zu können.
Antworten
-
Bau einfach eine struct auf ohne .NET Komponenten und Typen... genau das ist doch der Vorteil in C++/CLI...
Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de- Als Antwort markiert Seppel der Programmierer Montag, 20. Dezember 2010 06:39
Alle Antworten
-
Bau einfach eine struct auf ohne .NET Komponenten und Typen... genau das ist doch der Vorteil in C++/CLI...
Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de- Als Antwort markiert Seppel der Programmierer Montag, 20. Dezember 2010 06:39
-
Ok, hab nun wirklich eine normale unmanaged struct genommen. Das Projekt compilierte damit zwar ohne Fehler, aber der Debugger zeigte falsche Werte für die unmanaged Variablen an. Damit der Debugger richtig funktioniert und keine Grütze anzeigt, muss man in den Projekteinstellungen die CLR-Unterstützung von "/clr:pure" auf "/clr" umstellen!
- Als Antwort markiert Seppel der Programmierer Dienstag, 14. Dezember 2010 06:58
- Tag als Antwort aufgehoben Seppel der Programmierer Freitag, 17. Dezember 2010 11:56