LPCWSTR* Marshallen

02/07/2008 - 09:01 von Juri | Report spam
Hallo,

ich müsste eine unmanaged Dll aufrufen, die einen LPCTWSTR* erwartet. (Also
Pointer auf nen Pointer).

Wie kann ich diesen in C# deklarieren?
LPCTWSTR wàre ja einfach - StringBuilder. Aber wie ist das mit LPCTWTSTR* ?

Vielen Dank schon mal für die Antworten :)
 

Lesen sie die antworten

#1 Frank Dzaebel
02/07/2008 - 10:35 | Warnen spam
Hallo Juri,

ich müsste eine unmanaged Dll aufrufen, die einen LPCTWSTR* erwartet. (Also
Pointer auf nen Pointer).
Wie kann ich diesen in C# deklarieren?
LPCTWSTR wàre ja einfach - StringBuilder. Aber wie ist das mit LPCTWTSTR* ?



Das LPCTWSTR gibt es gar nicht, Du meinst etwas anderes.

Windows .NET
==LPCSTR String
LPCTSTR String
LPCWSTR String
LPSTR String oder StringBuilder*
LPTSTR String oder StringBuilder
LPWSTR String oder StringBuilder

[Using P/Invoke to Call Unmanaged APIs from your Managed Classes]
http://msdn.microsoft.com/en-us/lib...19104.aspx

[Common Data Types]
http://msdn.microsoft.com/en-us/lib...05945.aspx

[pinvoke.net: the interop wiki!]
http://pinvoke.net/

Beispiel für StringBuilder:

const int CSIDL_PROGRAMS = 2; // \Windows\Start Menu\Programs
StringBuilder path = new StringBuilder(260);
SHGetSpecialFolderPath(IntPtr.Zero, path, CSIDL_PROGRAMS, false);
// path.ToString() should now hold the path

[pinvoke.net: SHGetSpecialFolderPath (shell32)]
http://pinvoke.net/default.aspx/she...rPath.html


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen