DllImport com parâmetro char*
25/10/2007
0
Bom, minha situação é a seguinte, estou importando de uma dll feita em c++ um método que tem um parâmetro char* (Array de bytes).
Mas a única maneira que consegui interpretar isso no C# foi:
Ou seja, estou enviando um StringBuilder como parâmetro... Mas qual é o problema?
Então, quando vou pegar um byte[] para convertê-lo para StringBuilder, são criados chars do tipo ´\0´, assim o StringBuilder ignora tudo que vem depois desses caracteres, tornando o parâmetro enviado inválido...
Alguém tem uma sugestão para o problema?
Mas a única maneira que consegui interpretar isso no C# foi:
[DllImport("CleanCiph.dll")] public static extern IntPtr MD5String(StringBuilder data);
Ou seja, estou enviando um StringBuilder como parâmetro... Mas qual é o problema?
Então, quando vou pegar um byte[] para convertê-lo para StringBuilder, são criados chars do tipo ´\0´, assim o StringBuilder ignora tudo que vem depois desses caracteres, tornando o parâmetro enviado inválido...
Alguém tem uma sugestão para o problema?
Rokam
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)