Hallo und
für WINAPI Funktionen und Strukturen am besten immer direkt in der MSDN suchen:
WM_COPYDATA message verlinkt auf
COPYDATASTRUCT structure sowie
Using Data Copy
cbData gibt also die Größe der Daten an (d.h. die Länge des Strings) und
lpData einen Zeiger auf den Anfang der Daten (d.h. den String selbst).
Da dies jedoch eine unmanaged (d.h. native) Funktion ist, mußt du von C# aus per
P/Invoke arbeiten.
Die Seite
pinvoke.net stellt hierfür eine guten Anlaufstelle dar. Unter
COPYDATASTRUCT (Structures) findest du ein generelles Beispiel (in C#) dafür.
Die wichtigste Klasse für P/Invoke stellt
Marshal dar.
Ich denke, du mußt dich erst darin einarbeiten. Such einfach mal nach "P/Invoke String"...