IVsTextLines.CopyLineText(Int32, Int32, Int32, Int32, IntPtr, Int32) Methode

Definition

Setzt den angegebenen Textbereich in einen vom Aufrufer zugewiesenen Puffer (ein Array) ein

public:
 int CopyLineText(int iStartLine, int iStartIndex, int iEndLine, int iEndIndex, IntPtr pszBuf, [Runtime::InteropServices::Out] int % pcchBuf);
public int CopyLineText (int iStartLine, int iStartIndex, int iEndLine, int iEndIndex, IntPtr pszBuf, out int pcchBuf);
abstract member CopyLineText : int * int * int * int * nativeint * int -> int
Public Function CopyLineText (iStartLine As Integer, iStartIndex As Integer, iEndLine As Integer, iEndIndex As Integer, pszBuf As IntPtr, ByRef pcchBuf As Integer) As Integer

Parameter

iStartLine
Int32

[in] Anfangsreihe.

iStartIndex
Int32

[in] Startzeichenindex innerhalb der Zeile. Muss kleiner oder gleich der Länge der Zeile sein.

iEndLine
Int32

[in] Endzeile.

iEndIndex
Int32

[in] Endzeichenindex innerhalb der Zeile. Muss kleiner oder gleich der Länge der Zeile sein.

pszBuf
IntPtr

[in] Zeiger auf einen vom Aufrufer reservierten Puffer.

pcchBuf
Int32

[in, out] Zeiger auf eine Anzahl von Unicode-Zeichen - nicht Bytes.

Gibt zurück

Int32

Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Bei einem Fehler wird ein Fehlercode zurückgegeben.

Hinweise

COM-Signatur

Aus textmgr. idl:

HRESULT IVsTextLines::CopyLineText(  
   [in] long iStartLine,  
   [in] CharIndex iStartIndex,  
   [in] long iEndLine,  
   [in] CharIndex iEndIndex,  
   [in] LPWSTR pszBuf,  
   [in, out] long *pcchBuf  
);  

Um die Größe des Arrays zu ermitteln, das für einen bestimmten Textabschnitt erforderlich ist, müssen Sie aufrufen IVsTextLines.CopyLineText und die Anfangs-und Endpositionen im Puffer und null für den- pszBuf Parameter übergeben. Diese Methode gibt dann die Größe des Arrays im- pcchBuf Parameter zurück.

Diese Methode kopiert bis zu pcchBuf Zeichen in den Puffer, den Sie zuordnen. Wenn der Puffer nicht groß genug ist, um diese Zeichen aufzunehmen, gibt die Methode zurück BUFFER_E_DEST_TOO_SMALL und legt den pcchBuf Parameter auf die erforderliche Größe fest.

Hinweis

Die CopyLineText Methode wird nicht null an die Ausgabe Zeichenfolge angefügt.

IVsTextLines.CopyLineText wird als Optimierung für Methoden verwendet, die erfordern, dass der Puffer den Speicher für Sie zuweist, z GetLineText . b.. Im Fall dieser Methode ordnet der Text Puffer einen BSTR zu, der einen relativ erheblichen Leistungs Aufwand hat, wenn die Methode wiederholt aufgerufen wird. Für IVsTextLines.CopyLineText können Sie jedoch wiederholt den Puffer kopieren, den Sie zuordnen, wenn Sie diese Methode wiederholt aufzurufen.

Gilt für