Erstellen von IStream-Objekt in C#
Ich Schreibe ein Projekt und arbeiten mit einem anderen party-DLL.
Funktion aus dem DLL will ein IStream-Objekt zu speichern, aber ich kann nicht verstehen, wie ein IStream-Objekt.
Kann mir jemand helfen mit meinem problem?
- IStream-Schnittstelle besuchen Sie folgenden link bitte. msdn.microsoft.com/en-us/library/...
- System.- Laufzeit.InteropServices.ComTypes.IStream ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du nicht erstellen IStream-Objekt, da es offensichtlich eine Schnittstelle. Sie sollten eher diese Schnittstelle implementieren und übergeben Ihr Objekt. Oder verwenden Sie einfach ein Objekt, das bereits implementiert, wenn ein solcher Gegenstand vorhanden ist.
Bereits gegebene Antwort für eine ähnliche Frage gibt ein schönes Beispiel für die Verwendung von IStream-Schnittstelle in C#.
Hat eine wrapper-Klasse für COM-interop IStream gibt es bereits?
Korrektur:
Dies jedoch funktioniert nur, wenn Sie müssen, verwenden Sie bereits eine bestehende IStream innerhalb Ihrer app, nicht wenn Sie Sie brauchen, zu erstellen, und übergeben Sie ein IStream anderswo. Für diese Aufgabe sehen Referenzmodell, wie das geht:
http://msdn.microsoft.com/en-us/library/windows/desktop/aa380034(v=vs. 85).aspx
Und hier ist ein Beispiel von Microsoft (für XmlLite, nicht sicher, ob es für Sie arbeitet)
http://msdn.microsoft.com/en-us/library/windows/desktop/ms752876(v=vs. 85).aspx
Oder vielleicht in diesem Beispiel, bereits gepostet von Marcus:
http://hl7connect.blogspot.sk/2010/04/c-implementation-of-istream.html
Dieser Letzte link zeigt wie mit jedem Stream zu implementieren, die die IStream-Schnittstelle.
Hier ist eine verwaltete Implementierung von Microsoft nun, dass .Net ist mehr open source:
https://referencesource.microsoft.com/#PresentationFramework/src/Framework/MS/Internal/IO/Packaging/managedIStream.cs
IStream ich davon ausgehen, ist eine Schnittstelle. Sie können nicht erstellen Sie eine Instanz von einem interface direkt, sondern erstellen Sie eine Instanz eines Objekts, die diese Schnittstelle implementiert (oder erstellen Sie Ihre eigenen Objekte, die IStream).
Implementieren Sie Ihre eigenen stream-Klasse und erbt die IStream-Schnittstelle. IStream ist nur ein stream und kann ziemlich viel, was Sie sich entscheiden, es ist, solange es ein stream ist (z.B. FileStream etc.)
Verwandte: link