Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
[erledigt] Wie übersetze ich das Feld "char szAccess[2]" aus einer C++ lib in C#?
Yeats
myCSharp.de - Member



Dabei seit:
Beiträge: 97
Herkunft: Österreich

Themenstarter:

[erledigt] Wie übersetze ich das Feld "char szAccess[2]" aus einer C++ lib in C#?

beantworten | zitieren | melden

Hallo,

Bin dabei einen Wrapper für eine C++ dll zu schreiben. In dieser dll gibt es diese Typ
typedef struct tagXCSymbolDesc
{
	LPSTR pszName;
	LPSTR pszType;
	WORD  uRefId;
	ULONG ulOffset;
	ULONG ulSize;
	char  szAccess[2];
}XCSymbolDesc;

Meine Frage hierzu wie übersetze ich nun am besten das Feld char szAccess[2] nach C#?

Mfg
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Yeats am .
private Nachricht | Beiträge des Benutzers
lechiffre
myCSharp.de - Member



Dabei seit:
Beiträge: 94
Herkunft: Hannover

beantworten | zitieren | melden

char[] array = new char[2];
private Nachricht | Beiträge des Benutzers
Spook
myCSharp.de - Member



Dabei seit:
Beiträge: 241
Herkunft: Esslingen a.N.

beantworten | zitieren | melden

Hallo,

du könntest es als byte[] definieren und mit mit dem MarshalAs Attribut in Kombination mit UnmanagedType.ByValArray und SizeConst=2 versehen.

Grüße
spooky

PS: char aus C++ ist in .NET byte.
private Nachricht | Beiträge des Benutzers
weismat
myCSharp.de - Member



Dabei seit:
Beiträge: 872
Herkunft: Frankfurt am Main

beantworten | zitieren | melden

Wenn Du bereit bist unsafe zu nehmen, dann würde ich

 public fixed char szAccess[2];
nehmen.
Wenn Du auf unsafe verzichten möchtest, dann würde ich


[MarshalAs(UnmanagedType.ByValArray, SizeConst = 2)]
public byte szAccess[2]; 
benutzen.
private Nachricht | Beiträge des Benutzers