ich Ihre Hilfe mit dem folgenden Szenario müssen:Wie kann ich Memory Daten auf nicht verwalteten C++ DLL übergeben mit P/Invoke
ich einige Daten aus Hardware in einen Memorystream (C#) lese und ich brauche diese Daten zu übergeben im Speicher zu einer DLL in nicht verwaltetem C++ implementiert (mit Zeiger ??). Die Daten lesen (in Stream) ist sehr groß (Megabyte). Ich verstehe, dass ich P/Invoke diese DLL kann, aber was ich nicht sicher bin, ist, wie man den Zeiger/den Bezug der Stromdaten zur C++ API gibt?
Ich muss zugeben, ich bin verwirrt, da ich C# neu bin - muss ich unsichere/behoben verwenden, da Daten groß sind oder diese irrelevant sind, da MemoryStream-Objekt von GC verwaltet wird? Ein Beispielcode/eine detaillierte Beschreibung wäre sehr hilfreich. Dank
Signatur von nicht verwalteten API:
BOOL doSomething (void * rawData, int dataLength)
Welchen Datentyp benötigt die C++ - DLL? – scottm
Es erfordert rohe Daten - Byte/void *. Ich kann die DLL API wie erforderlich ändern. –