Marshaling stringa da C a C#

mercoledì 18 luglio 2007 - 13.58

elyarwen Profilo | Newbie

Ciao a tutti!
Programmo in C# e sto usando delle classi wrapper che ha scritto un mio collega per darmi la possibiltà di utilizzare da C# alcune classi scritte in C.
Purtroppo non riesco a utilizzare un metodo di queste classi: questo metodo dovrebbe restituirmi una stringa e invece mi restituisce un insieme di caratteri incomprensibili tipo: У÷? ¤÷?ƒÄ?‹øë?
Ho guardato un pò il codice delle classi wrapper e ho visto che il mio collega ha utilizzato il marshaling per la gestione della stringa in questione.
Lui l'ha utilizzato in questo modo
[MarshalAs(UnmanagedType.LPStr)]string szName.
Io ho provato a cambiare il tipo utilizzando LPWStr al posto di LPStr ma ho ottenuto solo una serie di "quadretti".
Non so che altro fare perchè non ho mai usato il marshaling e non so nemmeno se il problema sia quello, purtroppo non ho trovato il modo di farmi restituire la stringa sottoforma di byte anche perchè non ho il codice delle classi C di partenza quindi devo trovare un modo per leggere questa stringa. Qualcuno sa dirmi come posso fare?
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5