Condividi tramite


[in, string] e [out, string] Prototype

Il prototipo di funzione seguente usa due parametri: un parametro [in, stringa] e un parametro [out, stringa] .

void Analyze(
    [in, string]                       *pszInput,
    [out, string, size_is(STRSIZE)]    *pszOutput);

Il primo parametro è [solo in] . Questa stringa di input viene trasmessa solo dal client al server. Il server lo usa come base per un'ulteriore elaborazione. La stringa non viene modificata e non è richiesta di nuovo dal client, pertanto non deve essere restituita al client.

Il secondo parametro, che rappresenta la risposta del medico, è [ soloout]. Questa stringa di risposta viene trasmessa solo dal server al client. Le dimensioni di allocazione vengono fornite in modo che gli stub del server possano allocare memoria. Poiché pszOutput è un puntatore [ref] , il client deve disporre di memoria sufficiente allocata per la stringa prima della chiamata. La stringa di risposta viene scritta in questa area di memoria quando viene restituita la procedura remota.