Welche Interop-Signatur würden Sie für die folgende COM-Methode verwenden? Ich interessiere mich vor allem für die letzten beiden Parameter und die Frage, ob ich versuchen soll, die MarshalAs
mit einer SizeParamIndex
oder nicht.
HRESULT GetOutputSetting(
DWORD dwOutputNum,
LPCWSTR pszName,
WMT_ATTR_DATATYPE* pType,
BYTE* pValue,
WORD* pcbLength
);
In der Dokumentation heißt es:
pWert [out] Zeiger auf einen Byte-Puffer, der den Wert enthält. Übergeben Sie NULL um die Länge des Puffers abzufragen erforderlich.
pcbLength [in, out] Bei der Eingabe Zeiger auf eine Variable, die die Länge von pValue enthält. Bei der Ausgabe wird die Variable c in pValue verwendet.