Ho bisogno di accedere a un server COM di terze parti con seguente definizione di interfaccia (IDL):Python win32 com: come gestire il parametro 'out'?
interface IDisplay : IDispatch
{
HRESULT getFramebuffer (
[in] ULONG aScreenId,
[out] IFramebuffer * * aFramebuffer,
[out] LONG * aXOrigin,
[out] LONG * aYOrigin);
};
Come si può vedere, si restituisce 3 valori tramite [out] modificatori parametri. Come gestirlo tramite python win32 COM api? Per esempio, io creo un oggetto e ottenere IDisplay da esso:
object = win32com.client.Dispatch("VirtualBox.VirtualBox")
display = object.display
come chiamare display.getFrameBuffer() in modo che funzionerà? Ho provato diversi modi, ma è sempre 'tipo mancata corrispondenza' sul secondo argomento ([out] per IFrameBuffer)
Ho provato, genera "numero di parametri non valido". Non sono sicuro di come utilizzare MakePy se il server COM è di terze parti. È installato sul sistema come un server COM binario e registra. È possibile cambiare la sua API? – grigoryvp